当前位置: 首页>>代码示例>>Java>>正文


Java ContentProviderOperation类代码示例

本文整理汇总了Java中android.content.ContentProviderOperation的典型用法代码示例。如果您正苦于以下问题:Java ContentProviderOperation类的具体用法?Java ContentProviderOperation怎么用?Java ContentProviderOperation使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


ContentProviderOperation类属于android.content包,在下文中一共展示了ContentProviderOperation类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: buildSpeaker

import android.content.ContentProviderOperation; //导入依赖的package包/类
private void buildSpeaker(boolean isInsert, Speaker speaker,
                          ArrayList<ContentProviderOperation> list) {
    Uri allSpeakersUri = ScheduleContractHelper.setUriAsCalledFromSyncAdapter(
            ScheduleContract.Speakers.CONTENT_URI);
    Uri thisSpeakerUri = ScheduleContractHelper.setUriAsCalledFromSyncAdapter(
            ScheduleContract.Speakers.buildSpeakerUri(speaker.id));

    ContentProviderOperation.Builder builder;
    if (isInsert) {
        builder = ContentProviderOperation.newInsert(allSpeakersUri);
    } else {
        builder = ContentProviderOperation.newUpdate(thisSpeakerUri);
    }

    list.add(builder.withValue(ScheduleContract.SyncColumns.UPDATED, System.currentTimeMillis())
            .withValue(ScheduleContract.Speakers.SPEAKER_ID, speaker.id)
            .withValue(ScheduleContract.Speakers.SPEAKER_NAME, speaker.name)
            .withValue(ScheduleContract.Speakers.SPEAKER_ABSTRACT, speaker.bio)
            .withValue(ScheduleContract.Speakers.SPEAKER_COMPANY, speaker.company)
            .withValue(ScheduleContract.Speakers.SPEAKER_IMAGE_URL, speaker.thumbnailUrl)
            .withValue(ScheduleContract.Speakers.SPEAKER_PLUSONE_URL, speaker.plusoneUrl)
            .withValue(ScheduleContract.Speakers.SPEAKER_TWITTER_URL, speaker.twitterUrl)
            .withValue(ScheduleContract.Speakers.SPEAKER_IMPORT_HASHCODE,
                    speaker.getImportHashcode())
            .build());
}
 
开发者ID:dreaminglion,项目名称:iosched-reader,代码行数:27,代码来源:SpeakersHandler.java

示例2: testAssertOperationBuilder

import android.content.ContentProviderOperation; //导入依赖的package包/类
@Test
public void testAssertOperationBuilder() throws Exception
{
    ContentProviderOperation.Builder dummyResultBuilder = dummy(ContentProviderOperation.Builder.class);
    SoftRowReference<Object> dummyOriginalReference = dummy(SoftRowReference.class);
    RowReference<Object> mockResolvedReference = failingMock(RowReference.class);
    RowSnapshot<Object> mockSnapshot = failingMock(RowSnapshot.class);
    TransactionContext mockTransactionContext = failingMock(TransactionContext.class);
    doReturn(dummyOriginalReference).when(mockSnapshot).reference();
    doReturn(mockResolvedReference).when(mockTransactionContext).resolved(dummyOriginalReference);

    doReturn(dummyResultBuilder).when(mockResolvedReference).assertOperationBuilder(mockTransactionContext);

    assertThat(new RowSnapshotReference<>(mockSnapshot).assertOperationBuilder(mockTransactionContext), sameInstance(dummyResultBuilder));

}
 
开发者ID:dmfs,项目名称:ContentPal,代码行数:17,代码来源:RowSnapshotReferenceTest.java

示例3: setPhoto

import android.content.ContentProviderOperation; //导入依赖的package包/类
public void setPhoto(byte[] photo) {
	if (photo != null) {
		if (isAndroidContact()) {
			if (androidRawId != null) {
				changesToCommit.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
					.withValue(ContactsContract.Data.RAW_CONTACT_ID, androidRawId)
					.withValue(ContactsContract.Data.MIMETYPE, CommonDataKinds.Photo.CONTENT_ITEM_TYPE)
					.withValue(CommonDataKinds.Photo.PHOTO, photo)
					.withValue(ContactsContract.Data.IS_PRIMARY, 1)
					.withValue(ContactsContract.Data.IS_SUPER_PRIMARY, 1)
					.build());
			} else {
				changesToCommit.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
			        .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
					.withValue(ContactsContract.Data.MIMETYPE, CommonDataKinds.Photo.CONTENT_ITEM_TYPE)
					.withValue(CommonDataKinds.Photo.PHOTO, photo)
					.build());
			}
		}
	}
}
 
开发者ID:treasure-lau,项目名称:Linphone4Android,代码行数:22,代码来源:LinphoneContact.java

示例4: testContentOperationBuilder_ctor_table_data

import android.content.ContentProviderOperation; //导入依赖的package包/类
@Test
public void testContentOperationBuilder_ctor_table_data()
{
    Table<Object> mockTable = failingMock(Table.class);
    Operation<Object> mockAssertOperation = failingMock(Operation.class);

    doReturn(mockAssertOperation).when(mockTable).assertOperation(same(EmptyUriParams.INSTANCE), predicateWithSelection("1"));

    doReturn(ContentProviderOperation.newAssertQuery(Uri.EMPTY)).when(mockAssertOperation).contentOperationBuilder(any(TransactionContext.class));

    assertThat(new BulkAssert<>(mockTable, new CharSequenceRowData<>("key", "value")),
            builds(
                    assertOperation(),
                    withoutExpectedCount(),
                    withYieldNotAllowed(),
                    withValuesOnly(
                            containing("key", "value"))));
}
 
开发者ID:dmfs,项目名称:ContentPal,代码行数:19,代码来源:BulkAssertTest.java

示例5: testContentOperationBuilder_ctor_table

import android.content.ContentProviderOperation; //导入依赖的package包/类
@Test
public void testContentOperationBuilder_ctor_table()
{
    Table<Object> mockTable = failingMock(Table.class);
    Operation<Object> mockAssertOperation = failingMock(Operation.class);

    doReturn(mockAssertOperation).when(mockTable).assertOperation(same(EmptyUriParams.INSTANCE), predicateWithSelection("1"));

    doReturn(ContentProviderOperation.newAssertQuery(Uri.EMPTY)).when(mockAssertOperation).contentOperationBuilder(any(TransactionContext.class));

    assertThat(new BulkAssert<>(mockTable),
            builds(
                    assertOperation(),
                    withoutExpectedCount(),
                    withYieldNotAllowed(),
                    withoutValues()));
}
 
开发者ID:dmfs,项目名称:ContentPal,代码行数:18,代码来源:BulkAssertTest.java

示例6: outputBlock

import android.content.ContentProviderOperation; //导入依赖的package包/类
private static void outputBlock(Block block, ArrayList<ContentProviderOperation> list) {
    Uri uri = ScheduleContractHelper.setUriAsCalledFromSyncAdapter(
            ScheduleContract.Blocks.CONTENT_URI);
    ContentProviderOperation.Builder builder = ContentProviderOperation.newInsert(uri);
    String title = block.title != null ? block.title : "";
    String meta = block.subtitle != null ? block.subtitle : "";

    String type = block.type;
    if ( ! ScheduleContract.Blocks.isValidBlockType(type)) {
        LOGW(TAG, "block from "+block.start+" to "+block.end+" has unrecognized type ("
                +type+"). Using "+ ScheduleContract.Blocks.BLOCK_TYPE_BREAK +" instead.");
        type = ScheduleContract.Blocks.BLOCK_TYPE_BREAK;
    }

    long startTimeL = ParserUtils.parseTime(block.start);
    long endTimeL = ParserUtils.parseTime(block.end);
    final String blockId = ScheduleContract.Blocks.generateBlockId(startTimeL, endTimeL);
    builder.withValue(ScheduleContract.Blocks.BLOCK_ID, blockId);
    builder.withValue(ScheduleContract.Blocks.BLOCK_TITLE, title);
    builder.withValue(ScheduleContract.Blocks.BLOCK_START, startTimeL);
    builder.withValue(ScheduleContract.Blocks.BLOCK_END, endTimeL);
    builder.withValue(ScheduleContract.Blocks.BLOCK_TYPE, type);
    builder.withValue(ScheduleContract.Blocks.BLOCK_SUBTITLE, meta);
    list.add(builder.build());
}
 
开发者ID:dreaminglion,项目名称:iosched-reader,代码行数:26,代码来源:BlocksHandler.java

示例7: insertAndCheck

import android.content.ContentProviderOperation; //导入依赖的package包/类
@Override
public long insertAndCheck(SQLiteDatabase db, ContentValues values) {
    if (mExistingItems.size() >= mRequiredSize) {
        // No need to add more items.
        return 0;
    }
    Intent intent;
    try {
        intent = Intent.parseUri(values.getAsString(Favorites.INTENT), 0);
    } catch (URISyntaxException e) {
        return 0;
    }
    String pkg = getPackage(intent);
    if (pkg == null || mExisitingApps.contains(pkg)) {
        // The item does not target an app or is already in hotseat.
        return 0;
    }
    mExisitingApps.add(pkg);

    // find next vacant spot.
    long screen = 0;
    while (mExistingItems.get(screen) != null) {
        screen++;
    }
    mExistingItems.put(screen, intent);
    values.put(Favorites.SCREEN, screen);
    mOutOps.add(ContentProviderOperation.newInsert(Favorites.CONTENT_URI).withValues(values).build());
    return 0;
}
 
开发者ID:enricocid,项目名称:LaunchEnr,代码行数:30,代码来源:ImportDataTask.java

示例8: applyBatch

import android.content.ContentProviderOperation; //导入依赖的package包/类
/**
 * Apply the given set of {@link ContentProviderOperation}, executing inside
 * a {@link SQLiteDatabase} transaction. All changes will be rolled back if
 * any single one fails.
 */
public ContentProviderResult[] applyBatch(ArrayList<ContentProviderOperation> operations)
        throws OperationApplicationException {
    final SQLiteDatabase db = mOpenHelper.getWritableDatabase();
    db.beginTransaction();
    try {
        final int numOperations = operations.size();
        final ContentProviderResult[] results = new ContentProviderResult[numOperations];
        for (int i = 0; i < numOperations; i++) {
            results[i] = operations.get(i).apply(this, results, i);
        }
        db.setTransactionSuccessful();
        return results;
    } finally {
        db.endTransaction();
    }
}
 
开发者ID:rashikaranpuria,项目名称:xyz-reader-2,代码行数:22,代码来源:ItemsProvider.java

示例9: flushApksToDbInBatch

import android.content.ContentProviderOperation; //导入依赖的package包/类
private void flushApksToDbInBatch(Map<String, Long> appIds) throws RepoUpdater.UpdateException {
    List<Apk> apksToSaveList = new ArrayList<>();
    for (Map.Entry<String, List<Apk>> entries : apksToSave.entrySet()) {
        for (Apk apk : entries.getValue()) {
            apk.appId = appIds.get(apk.packageName);
        }
        apksToSaveList.addAll(entries.getValue());
    }

    calcApkCompatibilityFlags(apksToSaveList);

    ArrayList<ContentProviderOperation> apkOperations = insertApks(apksToSaveList);

    try {
        context.getContentResolver().applyBatch(TempApkProvider.getAuthority(), apkOperations);
    } catch (RemoteException | OperationApplicationException e) {
        throw new RepoUpdater.UpdateException(repo, "An internal error occurred while updating the database", e);
    }
}
 
开发者ID:uhuru-mobile,项目名称:mobile-store,代码行数:20,代码来源:RepoPersister.java

示例10: testContentOperationBuilder

import android.content.ContentProviderOperation; //导入依赖的package包/类
@Test
public void testContentOperationBuilder() throws Exception
{
    RowSnapshot<Object> mockRowSnapshot = failingMock(RowSnapshot.class);
    SoftRowReference<Object> rowReference = failingMock(SoftRowReference.class);
    doReturn(rowReference).when(mockRowSnapshot).reference();
    doReturn(ContentProviderOperation.newDelete(Uri.EMPTY)).when(rowReference).deleteOperationBuilder(any(TransactionContext.class));

    assertThat(
            new Delete<>(mockRowSnapshot),
            builds(
                    deleteOperation(),
                    withYieldNotAllowed(),
                    withoutExpectedCount(),
                    withoutValues()));
}
 
开发者ID:dmfs,项目名称:ContentPal,代码行数:17,代码来源:DeleteTest.java

示例11: applyBatch

import android.content.ContentProviderOperation; //导入依赖的package包/类
@Override
public ContentProviderResult[] applyBatch(ArrayList<ContentProviderOperation> operations)
        throws OperationApplicationException {
    if (DBG) Log.d(TAG, "applyBatch");
    ContentProviderResult[] result = null;
    SQLiteDatabase db = mDbHolder.get();
    db.beginTransaction();
    try {
         result = super.applyBatch(operations);
         db.setTransactionSuccessful();
    } finally {
        db.endTransaction();
    }
    if (result != null) {
        mCr.notifyChange(MusicStore.ALL_CONTENT_URI, null);
    }
    return result;
}
 
开发者ID:archos-sa,项目名称:aos-MediaLib,代码行数:19,代码来源:MusicProvider.java

示例12: insertDialogs

import android.content.ContentProviderOperation; //导入依赖的package包/类
@Override
public Completable insertDialogs(int accountId, List<DialogEntity> dbos, boolean clearBefore) {
    return Completable.create(emitter -> {
        final long start = System.currentTimeMillis();
        final Uri uri = MessengerContentProvider.getDialogsContentUriFor(accountId);
        final ArrayList<ContentProviderOperation> operations = new ArrayList<>();

        if(clearBefore){
            operations.add(ContentProviderOperation.newDelete(uri).build());
        }

        for(DialogEntity dbo : dbos){
            ContentValues cv = createCv(dbo);
            operations.add(ContentProviderOperation.newInsert(uri).withValues(cv).build());

            MessagesStore.appendDboOperation(accountId, dbo.getMessage(), operations, null, null);
        }

        getContentResolver().applyBatch(MessengerContentProvider.AUTHORITY, operations);
        emitter.onComplete();

        Exestime.log("DialogsStore.insertDialogs", start, "count: " + dbos.size() + ", clearBefore: " + clearBefore);
    });
}
 
开发者ID:PhoenixDevTeam,项目名称:Phoenix-for-VK,代码行数:25,代码来源:DialogsStore.java

示例13: testContentOperationBuilderWithData

import android.content.ContentProviderOperation; //导入依赖的package包/类
@Test
public void testContentOperationBuilderWithData() throws Exception
{
    RowSnapshot<Object> mockRowSnapshot = failingMock(RowSnapshot.class);
    SoftRowReference<Object> mockRowReference = failingMock(SoftRowReference.class);

    doReturn(mockRowReference).when(mockRowSnapshot).reference();
    doReturn(ContentProviderOperation.newUpdate(Uri.EMPTY)).when(mockRowReference).putOperationBuilder(any(TransactionContext.class));

    assertThat(new Put<>(mockRowSnapshot, new CharSequenceRowData<>("x", "y")),
            builds(
                    updateOperation(),
                    withYieldNotAllowed(),
                    withoutExpectedCount(),
                    withValuesOnly(
                            containing("x", "y"))));
}
 
开发者ID:dmfs,项目名称:ContentPal,代码行数:18,代码来源:PutTest.java

示例14: storeCountries

import android.content.ContentProviderOperation; //导入依赖的package包/类
@Override
public Completable storeCountries(int accountId, List<CountryEntity> dbos) {
    return Completable.create(emitter -> {
        Uri uri = MessengerContentProvider.getCountriesContentUriFor(accountId);

        ArrayList<ContentProviderOperation> operations = new ArrayList<>(dbos.size() + 1);
        operations.add(ContentProviderOperation.newUpdate(uri).build());

        for (CountryEntity dbo : dbos) {
            ContentValues cv = new ContentValues();
            cv.put(CountriesColumns._ID, dbo.getId());
            cv.put(CountriesColumns.NAME, dbo.getTitle());

            operations.add(ContentProviderOperation.newInsert(uri)
                    .withValues(cv)
                    .build());
        }

        getContentResolver().applyBatch(MessengerContentProvider.AUTHORITY, operations);
        emitter.onComplete();
    });
}
 
开发者ID:PhoenixDevTeam,项目名称:Phoenix-for-VK,代码行数:23,代码来源:DatabaseStore.java

示例15: contentOperationBuilder

import android.content.ContentProviderOperation; //导入依赖的package包/类
@NonNull
@Override
public ContentProviderOperation.Builder contentOperationBuilder(@NonNull TransactionContext transactionContext) throws UnsupportedOperationException
{
    // updating Aggregation exceptions works a bit strange. Instead of selecting a specific entry, we have to refer to them in the values.
    return mRawContact2.builderWithReferenceData(
            transactionContext,
            mRawContact1.builderWithReferenceData(
                    transactionContext,
                    AggregationExceptions.INSTANCE.updateOperation(
                            EmptyUriParams.INSTANCE,
                            new AnyOf()
                    ).contentOperationBuilder(transactionContext),
                    ContactsContract.AggregationExceptions.RAW_CONTACT_ID1), ContactsContract.AggregationExceptions.RAW_CONTACT_ID2);

}
 
开发者ID:dmfs,项目名称:ContentPal,代码行数:17,代码来源:AggregationException.java


注:本文中的android.content.ContentProviderOperation类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。