@Override public int hashCode() { return InMemUtils.hashCursor(getCursor()); }
private static String aOrderedListToString(AOrderedList ol) throws AlgebricksException { StringBuilder delimitedList = new StringBuilder(); IACursor cursor = ol.getCursor(); if (cursor.next()) { IAObject next = cursor.get(); delimitedList.append(aObjToString(next)); } while (cursor.next()) { IAObject next = cursor.get(); delimitedList.append(","); delimitedList.append(aObjToString(next)); } return delimitedList.toString(); } }
.getValueByPos(MetadataRecordTypes.FUNCTION_ARECORD_FUNCTION_PARAM_LIST_FIELD_INDEX)).getCursor(); List<String> params = new ArrayList<>(); while (cursor.next()) { .getValueByPos(MetadataRecordTypes.FUNCTION_ARECORD_FUNCTION_DEPENDENCIES_FIELD_INDEX)).getCursor(); List<List<List<String>>> dependencies = new ArrayList<>(); AOrderedList dependencyList; dependencies.add(new ArrayList<>()); dependencyList = (AOrderedList) dependenciesCursor.get(); IACursor qualifiedDependencyCursor = dependencyList.getCursor(); int j = 0; while (qualifiedDependencyCursor.next()) { qualifiedList = (AOrderedList) qualifiedDependencyCursor.get(); IACursor qualifiedNameCursor = qualifiedList.getCursor(); dependencies.get(i).add(new ArrayList<>()); while (qualifiedNameCursor.next()) {
.getStringValue()); IACursor fieldNameCursor = ((AOrderedList) rec.getValueByPos(MetadataRecordTypes.INDEX_ARECORD_SEARCHKEY_FIELD_INDEX)).getCursor(); List<List<String>> searchKey = new ArrayList<>(); AOrderedList fieldNameList; while (fieldNameCursor.next()) { fieldNameList = (AOrderedList) fieldNameCursor.get(); IACursor nestedFieldNameCursor = (fieldNameList.getCursor()); List<String> nestedFieldName = new ArrayList<>(); while (nestedFieldNameCursor.next()) { IACursor fieldTypeCursor = new ACollectionCursor(); if (indexKeyTypeFieldPos > 0) { fieldTypeCursor = ((AOrderedList) rec.getValueByPos(indexKeyTypeFieldPos)).getCursor(); int keyFieldSourceIndicatorIndex = rec.getType().getFieldIndex(INDEX_SEARCHKEY_SOURCE_INDICATOR_FIELD_NAME); if (keyFieldSourceIndicatorIndex >= 0) { IACursor cursor = ((AOrderedList) rec.getValueByPos(keyFieldSourceIndicatorIndex)).getCursor(); while (cursor.next()) { keyFieldSourceIndicator.add((int) ((AInt8) cursor.get()).getByteValue());
IACursor cursor = ((AOrderedList) datasetRecord .getValueByPos(MetadataRecordTypes.DATASET_ARECORD_COMPACTION_POLICY_PROPERTIES_FIELD_INDEX)) .getCursor(); Map<String, String> compactionPolicyProperties = new LinkedHashMap<>(); String key; cursor = ((AOrderedList) datasetDetailsRecord .getValueByPos(MetadataRecordTypes.INTERNAL_DETAILS_ARECORD_PARTITIONKEY_FIELD_INDEX)) .getCursor(); List<List<String>> partitioningKey = new ArrayList<>(); List<IAType> partitioningKeyType = new ArrayList<>(); while (cursor.next()) { fieldNameList = (AOrderedList) cursor.get(); IACursor nestedFieldNameCursor = (fieldNameList.getCursor()); List<String> nestedFieldName = new ArrayList<>(); while (nestedFieldNameCursor.next()) { if (filterFieldPos >= 0) { filterField = new ArrayList<>(); cursor = ((AOrderedList) datasetDetailsRecord.getValueByPos(filterFieldPos)).getCursor(); while (cursor.next()) { filterField.add(((AString) cursor.get()).getStringValue()); if (keyFieldSourceIndicatorIndex >= 0) { cursor = ((AOrderedList) datasetDetailsRecord.getValueByPos(keyFieldSourceIndicatorIndex)) .getCursor(); while (cursor.next()) { keyFieldSourceIndicator.add((int) ((AInt8) cursor.get()).getByteValue());
public static void checkFTSearchConstantExpression(ILogicalExpression constExpression) throws AlgebricksException { IAObject objectFromExpr = ConstantExpressionUtil.getConstantIaObject(constExpression, null); String arg2Value; IACursor oListCursor; switch (objectFromExpr.getType().getTypeTag()) { case STRING: arg2Value = ConstantExpressionUtil.getStringConstant(objectFromExpr); checkAndGenerateFTSearchExceptionForStringPhrase(arg2Value); break; case ARRAY: oListCursor = ConstantExpressionUtil.getOrderedListConstant(objectFromExpr).getCursor(); checkEachElementInFTSearchListPredicate(oListCursor); break; case MULTISET: oListCursor = ConstantExpressionUtil.getUnorderedListConstant(objectFromExpr).getCursor(); checkEachElementInFTSearchListPredicate(oListCursor); break; default: throw new CompilationException(ErrorCode.COMPILATION_TYPE_UNSUPPORTED, constExpression.getSourceLocation(), BuiltinFunctions.FULLTEXT_CONTAINS.getName(), objectFromExpr.getType().getTypeTag()); } }
.getValueByPos(MetadataRecordTypes.RECORDTYPE_ARECORD_FIELDS_FIELD_INDEX)).size(); IACursor cursor = ((AOrderedList) recordType .getValueByPos(MetadataRecordTypes.RECORDTYPE_ARECORD_FIELDS_FIELD_INDEX)).getCursor(); String[] fieldNames = new String[numberOfFields]; IAType[] fieldTypes = new IAType[numberOfFields];