當前位置: 首頁>>代碼示例>>Java>>正文


Java RealmQuery.lessThan方法代碼示例

本文整理匯總了Java中io.realm.RealmQuery.lessThan方法的典型用法代碼示例。如果您正苦於以下問題:Java RealmQuery.lessThan方法的具體用法?Java RealmQuery.lessThan怎麽用?Java RealmQuery.lessThan使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在io.realm.RealmQuery的用法示例。


在下文中一共展示了RealmQuery.lessThan方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: transform

import io.realm.RealmQuery; //導入方法依賴的package包/類
@Override
public <T extends RealmModel> RealmQuery<T> transform(RealmQuery<T> realmQuery, Condition condition) {
    // Checks.
    if (!condition.isValid()) throw new IllegalArgumentException("Condition isn't valid.");
    if (condition.getType() != Condition.Type.NORMAL)
        throw new IllegalArgumentException("Condition type is not NORMAL.");

    // Get data from Conditions.
    String field = condition.getField();
    FieldType fieldType = condition.getFieldType();
    Object[] args = condition.getArgs();

    // Use different methods based on field type.
    if (FieldType.DATE == fieldType) return realmQuery.lessThan(field, (Date) args[0]);
    else if (FieldType.DOUBLE == fieldType) return realmQuery.lessThan(field, (Double) args[0]);
    else if (FieldType.FLOAT == fieldType) return realmQuery.lessThan(field, (Float) args[0]);
    else if (FieldType.INTEGER == fieldType) return realmQuery.lessThan(field, (Integer) args[0]);
    else if (FieldType.LONG == fieldType) return realmQuery.lessThan(field, (Long) args[0]);
    else
        throw new IllegalArgumentException(String.format("Illegal argument type \"%s\".", fieldType.getTypeName()));
}
 
開發者ID:bkromhout,項目名稱:Ruqus,代碼行數:22,代碼來源:LessThan.java

示例2: getMessages

import io.realm.RealmQuery; //導入方法依賴的package包/類
void getMessages(@NonNull final Conversation conversation,
                        final int limit,
                        @Nullable final Date before,
                        @Nullable final String order,
                        @Nullable final GetCallback<List<Message>> callback) {
    RealmStore.QueryBuilder<MessageCacheObject> queryBuilder = new RealmStore.QueryBuilder<MessageCacheObject>() {
        @Override
        public RealmQuery<MessageCacheObject> buildQueryFrom(RealmQuery<MessageCacheObject> baseQuery) {
            RealmQuery<MessageCacheObject> query = baseQuery
                    .equalTo(KEY_CONVERSATION_ID, conversation.getId())
                    .equalTo(KEY_DELETED, false)
                    .beginGroup()
                        .beginGroup()
                            .equalTo(KEY_ALREADY_SYNC_TO_SERVER, true)
                            .equalTo(KEY_FAIL, false)
                        .endGroup()
                        .or()
                        .isNull(KEY_SEND_DATE)
                    .endGroup();

            if (before != null) {
                query.lessThan(KEY_CREATION_DATE, before);
            }

            return query;
        }
    };

    String resolvedOrder = order;
    if (resolvedOrder != null && resolvedOrder.equalsIgnoreCase("edited_at")) {
        resolvedOrder = KEY_EDITION_DATE;
    } else {
        resolvedOrder = KEY_CREATION_DATE;
    }

    if (callback != null) {
        this.store.getMessages(queryBuilder, limit, resolvedOrder, new RealmStore.ResultCallback<Message[]>() {
            @Override
            public void onResultGet(Message[] messages) {
                callback.onSuccess(Arrays.asList(messages));
            }
        });
    }
}
 
開發者ID:SkygearIO,項目名稱:chat-SDK-Android,代碼行數:45,代碼來源:CacheController.java


注:本文中的io.realm.RealmQuery.lessThan方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。