private String getStringValue(V value) { if (value == null) { return null; } else if (value instanceof BString) { return "\"" + value.stringValue() + "\""; } else { return value.stringValue(); } }
@Override public String stringValue() { return value.stringValue(); }
@Override public String toString() { StringBuilder payload = new StringBuilder("Message : "); if (bMessage != null) { payload.append("{ ").append(bMessage.stringValue()).append(" }"); } else { payload.append("null"); } return payload.toString(); }
@SuppressWarnings("unchecked") @Override public BigDecimal toObject(BPacket packet, BValueDeserializer bValueDeserializer) { String payload = packet.getValue().stringValue(); return new BigDecimal(payload); } }
@Override public BigInteger toObject(BPacket packet, BValueDeserializer bValueDeserializer) { String payload = packet.getValue().stringValue(); return new BigInteger(payload, 10); } }
/** * Default serialize implementation for {@link BValue}. * * @param outputStream Represent the output stream that the data will be written to. */ public default void serialize(OutputStream outputStream) { try { outputStream.write(this.stringValue().getBytes(Charset.defaultCharset())); } catch (IOException e) { throw new BallerinaException("error occurred while serializing data", e); } } }
private static Integer obtainIntegerValue(BValue value) { if (value != null) { String strValue = value.stringValue(); if (!strValue.isEmpty()) { try { return Integer.parseInt(strValue); } catch (NumberFormatException e) { throw new BallerinaException("invalid value for integer: " + strValue); } } } return null; }
public static Map<String, String> toStringMap(BMap map) { Map<String, String> returnMap = new HashMap<>(); if (map != null) { for (Object aKey : map.keys()) { returnMap.put(aKey.toString(), map.get(aKey).stringValue()); } } return returnMap; }
@Override public BXMLQName toObject(BPacket packet, BValueDeserializer bValueDeserializer) { String uri = packet.getValue().stringValue(); String local = packet.get(LOCAL).stringValue(); String prefix = packet.get(PREFIX).stringValue(); return new BXMLQName(local, uri, prefix); } }
@SuppressWarnings("unchecked") private Object createEnumInstance(BMap jsonNode) { String enumName = jsonNode.get(VALUE_TAG).stringValue(); int separatorPos = enumName.lastIndexOf(ENUM_SEPERATOR); String type = enumName.substring(0, separatorPos); String enumConst = enumName.substring(separatorPos + 1); Class enumClass = instanceProvider.findInstanceProvider(type).getTypeClass(); return Enum.valueOf(enumClass, enumConst); }
private static TransactionLocalContext createAndNotifyGlobalTx(Strand ctx, String transactionBlockId) { BValue[] txResult = TransactionUtils.notifyTransactionBegin(ctx, null, null, transactionBlockId, TransactionConstants.DEFAULT_COORDINATION_TYPE); BMap<String, BValue> txDataStruct = (BMap<String, BValue>) txResult[0]; String globalTransactionId = txDataStruct.get(TransactionConstants.TRANSACTION_ID).stringValue(); String url = txDataStruct.get(TransactionConstants.REGISTER_AT_URL).stringValue(); String protocol = txDataStruct.get(TransactionConstants.CORDINATION_TYPE).stringValue(); return TransactionLocalContext.create(globalTransactionId, url, protocol); }
@Override @SuppressWarnings("unchecked") public SerializedKey toObject(BPacket packet, BValueDeserializer bValueDeserializer) { String s = packet.getValue().stringValue(); return new SerializedKey(s); } }
@Override public String get() { // We should invoke the lambda only once, thus caching return value if (msg == null) { BValue arg = ctx.getRefArgument(0); // If it is a lambda; invoke it to get the log message arg = (arg instanceof BFunctionPointer) ? invokeFunction((BFunctionPointer) arg)[0] : arg; msg = arg.stringValue(); } return msg; } };
@Override public BXMLItem toObject(BPacket packet, BValueDeserializer bValueDeserializer) { String s = packet.getValue().stringValue(); return (BXMLItem) XMLUtils.parse(s); } }
private static byte[] getByteArray(BValue value) { byte[] val = null; if (value instanceof BValueArray) { val = ((BValueArray) value).getBytes(); } else if (value instanceof BString) { val = getBytesFromBase64String(value.stringValue()); } return val; }
static Map<String, String> toStringMap(BMap map) { Map<String, String> returnMap = new HashMap<>(); Set bIterator = map.keySet(); for (Object aKey : bIterator) { if (map.get(aKey) instanceof BStringArray) { returnMap.put(aKey.toString(), (((BStringArray) map.get(aKey)).get(0))); } else { returnMap.put(aKey.toString(), map.get(aKey).stringValue()); } } return returnMap; }
private String resolveTargetTypeName(Class<?> targetType, BMap<String, BValue> jBMap) { if (jBMap.hasKey(TYPE_TAG)) { BValue jType = jBMap.get(TYPE_TAG); return jType.stringValue(); } else if (targetType != null) { return ObjectHelper.getTrimmedClassName(targetType); } throw new IllegalStateException("Target type should either come from jBMap or via targetType param"); }
private static void setPropertiesToTransportMessage(HttpCarbonMessage outboundResponseMsg, BMap<String, BValue> struct) { if (isResponseStruct(struct)) { long statusCode = ((BInteger) struct.get(RESPONSE_STATUS_CODE_FIELD)).intValue(); if (statusCode != 0) { outboundResponseMsg.setProperty(HttpConstants.HTTP_STATUS_CODE, getIntValue(statusCode)); } BValue respPhrase = struct.get(RESPONSE_REASON_PHRASE_FIELD); if (respPhrase != null && !respPhrase.stringValue().isEmpty()) { outboundResponseMsg.setProperty(HttpConstants.HTTP_REASON_PHRASE, respPhrase.stringValue()); } } }
@SuppressWarnings("unchecked") @Override public BObjectType toObject(BPacket packet, BValueDeserializer bValueDeserializer) { String typeName = packet.get(TYPE_NAME).stringValue(); String pkgPath = packet.get(PACKAGE_PATH).stringValue(); int flags = (int) ((BInteger) packet.get(FLAGS)).intValue(); ObjectTypeInfo objectTypeInfo = new ObjectTypeInfo(); BObjectType bObjectType = new BObjectType(objectTypeInfo, typeName, pkgPath, flags); objectTypeInfo.setType(bObjectType); return bObjectType; } }
@Override public void execute(Context context) { BMap<String, BValue> bStruct = (BMap<String, BValue>) context.getRefArgument(0); Counter counter = Counter.builder(bStruct.get(ObserveNativeImplConstants.NAME_FIELD).stringValue()) .description(bStruct.get(ObserveNativeImplConstants.DESCRIPTION_FIELD).stringValue()) .tags(Utils.toStringMap((BMap) bStruct.get(ObserveNativeImplConstants.TAGS_FIELD))) .build(); bStruct.addNativeData(ObserveNativeImplConstants.METRIC_NATIVE_INSTANCE_KEY, counter); } }