private static Object parametersToObject(Procedure<?> proc) { try { ProcedureProtos.Procedure protoProc = ProcedureUtil.convertToProtoProcedure(proc); List<Object> parameters = protoProc.getStateMessageList().stream() .map((any) -> { try { return ProtobufMessageConverter.toJavaObject(any); } catch (InvalidProtocolBufferException e) { return e.toString(); } }).collect(Collectors.toList()); return parameters; } catch (IOException e) { return e.toString(); } }
private List<ProcedureProtos.Procedure> toProtos(TestProcedure... procs) { return Arrays.stream(procs).map(p -> { try { return ProcedureUtil.convertToProtoProcedure(p); } catch (IOException e) { throw new UncheckedIOException(e); } }).collect(Collectors.toList()); }
public static void writeEntry(ByteSlot slot, ProcedureWALEntry.Type type, Procedure<?> proc, Procedure<?>[] subprocs) throws IOException { final ProcedureWALEntry.Builder builder = ProcedureWALEntry.newBuilder(); builder.setType(type); builder.addProcedure(ProcedureUtil.convertToProtoProcedure(proc)); if (subprocs != null) { for (int i = 0; i < subprocs.length; ++i) { builder.addProcedure(ProcedureUtil.convertToProtoProcedure(subprocs[i])); } } builder.build().writeDelimitedTo(slot); }
@Override public GetProceduresResponse getProcedures( RpcController rpcController, GetProceduresRequest request) throws ServiceException { try { final GetProceduresResponse.Builder response = GetProceduresResponse.newBuilder(); for (Procedure<?> p: master.getProcedures()) { response.addProcedure(ProcedureUtil.convertToProtoProcedure(p)); } return response.build(); } catch (IOException e) { throw new ServiceException(e); } }
@Test public void testConvert() throws Exception { // check Procedure to protobuf conversion final TestProcedure proc1 = new TestProcedure(10, 1, new byte[] { 65 }); final ProcedureProtos.Procedure proto1 = ProcedureUtil.convertToProtoProcedure(proc1); final TestProcedure proc2 = (TestProcedure)ProcedureUtil.convertToProcedure(proto1); final ProcedureProtos.Procedure proto2 = ProcedureUtil.convertToProtoProcedure(proc2); assertEquals(false, proto2.hasResult()); assertEquals("Procedure protobuf does not match", proto1, proto2); }
public static void writeDelete(ByteSlot slot, Procedure<?> proc, long[] subprocs) throws IOException { final ProcedureWALEntry.Builder builder = ProcedureWALEntry.newBuilder(); builder.setType(ProcedureWALEntry.Type.PROCEDURE_WAL_DELETE); builder.setProcId(proc.getProcId()); if (subprocs != null) { builder.addProcedure(ProcedureUtil.convertToProtoProcedure(proc)); for (int i = 0; i < subprocs.length; ++i) { builder.addChildId(subprocs[i]); } } builder.build().writeDelimitedTo(slot); } }
public static LockServiceProtos.LockedResource convertToProtoLockedResource( LockedResource lockedResource) throws IOException { LockServiceProtos.LockedResource.Builder builder = LockServiceProtos.LockedResource.newBuilder(); builder .setResourceType(convertToProtoResourceType(lockedResource.getResourceType())) .setResourceName(lockedResource.getResourceName()) .setLockType(convertToProtoLockType(lockedResource.getLockType())); Procedure<?> exclusiveLockOwnerProcedure = lockedResource.getExclusiveLockOwnerProcedure(); if (exclusiveLockOwnerProcedure != null) { ProcedureProtos.Procedure exclusiveLockOwnerProcedureProto = convertToProtoProcedure(exclusiveLockOwnerProcedure); builder.setExclusiveLockOwnerProcedure(exclusiveLockOwnerProcedureProto); } builder.setSharedLockCount(lockedResource.getSharedLockCount()); for (Procedure<?> waitingProcedure : lockedResource.getWaitingProcedures()) { ProcedureProtos.Procedure waitingProcedureProto = convertToProtoProcedure(waitingProcedure); builder.addWaitingProcedures(waitingProcedureProto); } return builder.build(); }
private List<ProcedureProtos.Procedure> toProtos(TestProcedure... procs) { return Arrays.stream(procs).map(p -> { try { return ProcedureUtil.convertToProtoProcedure(p); } catch (IOException e) { throw new UncheckedIOException(e); } }).collect(Collectors.toList()); }
public static void writeEntry(ByteSlot slot, ProcedureWALEntry.Type type, Procedure proc, Procedure[] subprocs) throws IOException { final ProcedureWALEntry.Builder builder = ProcedureWALEntry.newBuilder(); builder.setType(type); builder.addProcedure(ProcedureUtil.convertToProtoProcedure(proc)); if (subprocs != null) { for (int i = 0; i < subprocs.length; ++i) { builder.addProcedure(ProcedureUtil.convertToProtoProcedure(subprocs[i])); } } builder.build().writeDelimitedTo(slot); }
public static void writeEntry(ByteSlot slot, ProcedureWALEntry.Type type, Procedure<?> proc, Procedure<?>[] subprocs) throws IOException { final ProcedureWALEntry.Builder builder = ProcedureWALEntry.newBuilder(); builder.setType(type); builder.addProcedure(ProcedureUtil.convertToProtoProcedure(proc)); if (subprocs != null) { for (int i = 0; i < subprocs.length; ++i) { builder.addProcedure(ProcedureUtil.convertToProtoProcedure(subprocs[i])); } } builder.build().writeDelimitedTo(slot); }
@Test public void testConvert() throws Exception { // check Procedure to protobuf conversion final TestProcedure proc1 = new TestProcedure(10, 1, new byte[] { 65 }); final ProcedureProtos.Procedure proto1 = ProcedureUtil.convertToProtoProcedure(proc1); final TestProcedure proc2 = (TestProcedure)ProcedureUtil.convertToProcedure(proto1); final ProcedureProtos.Procedure proto2 = ProcedureUtil.convertToProtoProcedure(proc2); assertEquals(false, proto2.hasResult()); assertEquals("Procedure protobuf does not match", proto1, proto2); }
@Test public void testConvert() throws Exception { // check Procedure to protobuf conversion final TestProcedure proc1 = new TestProcedure(10, 1, new byte[] { 65 }); final ProcedureProtos.Procedure proto1 = ProcedureUtil.convertToProtoProcedure(proc1); final TestProcedure proc2 = (TestProcedure)ProcedureUtil.convertToProcedure(proto1); final ProcedureProtos.Procedure proto2 = ProcedureUtil.convertToProtoProcedure(proc2); assertEquals(false, proto2.hasResult()); assertEquals("Procedure protobuf does not match", proto1, proto2); }
public static void writeDelete(ByteSlot slot, Procedure<?> proc, long[] subprocs) throws IOException { final ProcedureWALEntry.Builder builder = ProcedureWALEntry.newBuilder(); builder.setType(ProcedureWALEntry.Type.PROCEDURE_WAL_DELETE); builder.setProcId(proc.getProcId()); if (subprocs != null) { builder.addProcedure(ProcedureUtil.convertToProtoProcedure(proc)); for (int i = 0; i < subprocs.length; ++i) { builder.addChildId(subprocs[i]); } } builder.build().writeDelimitedTo(slot); } }
public static void writeDelete(ByteSlot slot, Procedure proc, long[] subprocs) throws IOException { final ProcedureWALEntry.Builder builder = ProcedureWALEntry.newBuilder(); builder.setType(ProcedureWALEntry.Type.PROCEDURE_WAL_DELETE); builder.setProcId(proc.getProcId()); if (subprocs != null) { builder.addProcedure(ProcedureUtil.convertToProtoProcedure(proc)); for (int i = 0; i < subprocs.length; ++i) { builder.addChildId(subprocs[i]); } } builder.build().writeDelimitedTo(slot); } }
public static LockServiceProtos.LockedResource convertToProtoLockedResource( LockedResource lockedResource) throws IOException { LockServiceProtos.LockedResource.Builder builder = LockServiceProtos.LockedResource.newBuilder(); builder .setResourceType(convertToProtoResourceType(lockedResource.getResourceType())) .setResourceName(lockedResource.getResourceName()) .setLockType(convertToProtoLockType(lockedResource.getLockType())); Procedure<?> exclusiveLockOwnerProcedure = lockedResource.getExclusiveLockOwnerProcedure(); if (exclusiveLockOwnerProcedure != null) { ProcedureProtos.Procedure exclusiveLockOwnerProcedureProto = convertToProtoProcedure(exclusiveLockOwnerProcedure); builder.setExclusiveLockOwnerProcedure(exclusiveLockOwnerProcedureProto); } builder.setSharedLockCount(lockedResource.getSharedLockCount()); for (Procedure<?> waitingProcedure : lockedResource.getWaitingProcedures()) { ProcedureProtos.Procedure waitingProcedureProto = convertToProtoProcedure(waitingProcedure); builder.addWaitingProcedures(waitingProcedureProto); } return builder.build(); }
public static LockServiceProtos.LockedResource convertToProtoLockedResource( LockedResource lockedResource) throws IOException { LockServiceProtos.LockedResource.Builder builder = LockServiceProtos.LockedResource.newBuilder(); builder .setResourceType(convertToProtoResourceType(lockedResource.getResourceType())) .setResourceName(lockedResource.getResourceName()) .setLockType(convertToProtoLockType(lockedResource.getLockType())); Procedure<?> exclusiveLockOwnerProcedure = lockedResource.getExclusiveLockOwnerProcedure(); if (exclusiveLockOwnerProcedure != null) { ProcedureProtos.Procedure exclusiveLockOwnerProcedureProto = convertToProtoProcedure(exclusiveLockOwnerProcedure); builder.setExclusiveLockOwnerProcedure(exclusiveLockOwnerProcedureProto); } builder.setSharedLockCount(lockedResource.getSharedLockCount()); for (Procedure<?> waitingProcedure : lockedResource.getWaitingProcedures()) { ProcedureProtos.Procedure waitingProcedureProto = convertToProtoProcedure(waitingProcedure); builder.addWaitingProcedures(waitingProcedureProto); } return builder.build(); } }