public StorageBasic.StorageLocator toStorageLocator(Dtable dtable) { synchronized (storageBuilderLock) { storageLocatorBuilder.clear(); String namespace = dtable.getNamespace(); if (StringUtils.isNotBlank(namespace)) { storageLocatorBuilder.setNamespace(namespace); } String name = dtable.getTableName(); if (StringUtils.isNotBlank(name)) { storageLocatorBuilder.setName(name); } String type = dtable.getTableType(); if (StringUtils.isNotBlank(type)) { storageLocatorBuilder.setType(StorageBasic.StorageType.valueOf(type)); } return storageLocatorBuilder.build(); } }
private R buildUnaryDispatchRequest(R request, Fragment fragment) { if (!(request instanceof Processor.UnaryProcess)) { throw new IllegalArgumentException("request type error: " + request.getClass().getCanonicalName()); } R result = null; Processor.UnaryProcess typedRequest = (Processor.UnaryProcess) request; storageLocatorBuilder.clear() .mergeFrom(typedRequest.getOperand()) .setFragment(fragment.getFragmentOrder()); unaryProcessBuilder.clear(); unaryProcessBuilder.mergeFrom(typedRequest) .setOperand(storageLocatorBuilder.build()); result = (R) unaryProcessBuilder.build(); return result; }
private R buildBinaryDispatchRequest(R request, Fragment fragment) { if (!(request instanceof Processor.BinaryProcess)) { throw new IllegalArgumentException("request type error: " + request.getClass().getCanonicalName()); } R result = null; Processor.BinaryProcess typedRequest = (Processor.BinaryProcess) request; storageLocatorBuilder.clear() .mergeFrom(typedRequest.getLeft()) .setFragment(fragment.getFragmentOrder()); StorageBasic.StorageLocator left = storageLocatorBuilder.build(); storageLocatorBuilder.clear() .mergeFrom(typedRequest.getRight()) .setFragment(fragment.getFragmentOrder()); StorageBasic.StorageLocator right = storageLocatorBuilder.build(); binaryProcessBuilder.clear() .mergeFrom(typedRequest) .setLeft(left) .setRight(right); result = (R) binaryProcessBuilder.build(); return result; }