switch (arrayEncoding) { case ARRAY: BsonType valueType = keyvalueforStruct.getValue().asArray().get(0).getBsonType(); List<BsonValue> arrValues = keyvalueforStruct.getValue().asArray().getValues(); ArrayList<Object> list = new ArrayList<>(); final Struct arrayStruct = new Struct(arraySchema); for (int i = 0; i < array.size(); i++) { convertedArray.put(arrayElementStructName(i), array.get(i));
switch (arrayEncoding) { case ARRAY: BsonType valueType = keyValuesforSchema.getValue().asArray().get(0).getBsonType(); for (BsonValue element: keyValuesforSchema.getValue().asArray()) { if (element.getBsonType() != valueType) { final Map<String, BsonValue> convertedArray = new HashMap<>(); for (int i = 0; i < array.size(); i++) { convertedArray.put(arrayElementStructName(i), array.get(i));
id = id.asArray().get(0);
public RemoteInsertManyResult decode( final BsonReader reader, final DecoderContext decoderContext ) { final BsonDocument document = (new BsonDocumentCodec()).decode(reader, decoderContext); keyPresent(Fields.INSERTED_IDS_FIELD, document); final BsonArray arr = document.getArray(Fields.INSERTED_IDS_FIELD); final Map<Long, BsonValue> insertedIds = new HashMap<>(); for (int i = 0; i < arr.size(); i++) { insertedIds.put((long) i, arr.get(i)); } return new RemoteInsertManyResult(insertedIds); }
private BsonValue findOrCreateJsonArray(BsonValue currentVal, String objKey, Integer aryIdx) { if (objKey != null) { BsonDocument jsonObj = currentVal.asDocument(); if (jsonObj.get(objKey) == null) { BsonValue ary = new BsonArray(); jsonObj.put(objKey, ary); return ary; } return jsonObj.get(objKey); } else { // aryIdx != null BsonArray jsonAry = currentVal.asArray(); if (jsonAry.size() <= aryIdx || jsonAry.get(aryIdx).equals(BsonNull.VALUE)) { BsonValue ary = new BsonArray(); assureJsonArraySize(jsonAry, aryIdx); jsonAry.set(aryIdx, ary); return ary; } return jsonAry.get(aryIdx); } }
private BsonValue findOrCreateJsonObject(BsonValue currentVal, String objKey, Integer aryIdx) { if (objKey != null) { BsonDocument jsonObj = currentVal.asDocument(); if (jsonObj.get(objKey) == null) { BsonValue obj = new BsonDocument(); jsonObj.put(objKey, obj); return obj; } return jsonObj.get(objKey); } else { // aryIdx != null BsonArray jsonAry = currentVal.asArray(); if (jsonAry.size() <= aryIdx || jsonAry.get(aryIdx).equals(BsonNull.VALUE)) { BsonValue obj = new BsonDocument(); assureJsonArraySize(jsonAry, aryIdx); jsonAry.set(aryIdx, obj); return obj; } return jsonAry.get(aryIdx); } }
for (int index = 0; index < json.asArray().size(); index++) { nested = _getPropsFromPath( json.asArray().get(index), subpath(pathTokens), totalTokensLength);
private void transformWrite( BsonValue contentToTransform, final BsonDocument responseContent) { if (contentToTransform.isDocument()) { if (contentToTransform.asDocument().containsKey("_embedded") && contentToTransform.asDocument().get("_embedded") .isDocument() && contentToTransform.asDocument().get("_embedded") .asDocument().containsKey("rh:result") && contentToTransform.asDocument().get("_embedded") .asDocument().get("rh:result").isArray()) { BsonArray bulkResp = contentToTransform.asDocument() .get("_embedded").asDocument().get("rh:result") .asArray(); if (bulkResp.size() > 0) { BsonValue el = bulkResp.get(0); if (el.isDocument()) { BsonDocument doc = el.asDocument(); doc .keySet() .stream() .forEach(key -> responseContent .append(key, doc.get(key))); } } } } }
BsonValue el = bulkResp.get(0);