本文整理匯總了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()));
}
示例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));
}
});
}
}