diff options
Diffstat (limited to 'Software/Android_Studio')
20 files changed, 2394 insertions, 109 deletions
diff --git a/Software/Android_Studio/Tango.DAL/src/main/java/com/twine/tango/dal/DateConverter.java b/Software/Android_Studio/Tango.DAL/src/main/java/com/twine/tango/dal/DateConverter.java index 165d0f161..548b1dd09 100644 --- a/Software/Android_Studio/Tango.DAL/src/main/java/com/twine/tango/dal/DateConverter.java +++ b/Software/Android_Studio/Tango.DAL/src/main/java/com/twine/tango/dal/DateConverter.java @@ -21,14 +21,14 @@ public class DateConverter extends TypeConverter<String,DateTime> @Override public String getDBValue(DateTime model) { - DateTimeFormatter dtfOut = DateTimeFormat.forPattern("yyyy-MM-dd hh:mm:ss"); + DateTimeFormatter dtfOut = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss.SSS"); return dtfOut.print(model); } @Override public DateTime getModelValue(String data) { - DateTimeFormatter dtf = DateTimeFormat.forPattern("yyyy-MM-dd hh:mm:ss"); + DateTimeFormatter dtf = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss.SSS"); DateTime jodatime = dtf.parseDateTime(data); return jodatime; } diff --git a/Software/Android_Studio/Tango.DAL/src/main/java/com/twine/tango/dal/TangoDB.java b/Software/Android_Studio/Tango.DAL/src/main/java/com/twine/tango/dal/TangoDB.java index 367cbc088..53bb6a8e2 100644 --- a/Software/Android_Studio/Tango.DAL/src/main/java/com/twine/tango/dal/TangoDB.java +++ b/Software/Android_Studio/Tango.DAL/src/main/java/com/twine/tango/dal/TangoDB.java @@ -37,7 +37,7 @@ public class TangoDB { database_name = "Tango.db"; database_path = ContextHelper.getApplicationContext().getDatabasePath(database_name).getPath(); - database_backup_path = Environment.getExternalStorageDirectory() + "/BACKUP/" + "backup.db"; + database_backup_path = ContextHelper.getApplicationContext().getDatabasePath("backup").getPath(); try { diff --git a/Software/Android_Studio/Tango.DAL/src/main/res/raw/tangodb b/Software/Android_Studio/Tango.DAL/src/main/res/raw/tangodb Binary files differindex 0419b065c..f7af9b52f 100644 --- a/Software/Android_Studio/Tango.DAL/src/main/res/raw/tangodb +++ b/Software/Android_Studio/Tango.DAL/src/main/res/raw/tangodb diff --git a/Software/Android_Studio/Tango.Integration/src/main/java/com/twine/tango/integration/providers/MachineIdentityProvider.java b/Software/Android_Studio/Tango.Integration/src/main/java/com/twine/tango/integration/providers/MachineIdentityProvider.java index b4f2d3c4d..c72b9cea4 100644 --- a/Software/Android_Studio/Tango.Integration/src/main/java/com/twine/tango/integration/providers/MachineIdentityProvider.java +++ b/Software/Android_Studio/Tango.Integration/src/main/java/com/twine/tango/integration/providers/MachineIdentityProvider.java @@ -1,4 +1,8 @@ package com.twine.tango.integration.providers; +import com.twine.tango.dal.dao.TangoDAO; +import com.twine.tango.dal.entities.Machine; + +import static br.com.zbra.androidlinq.Linq.stream; /** @@ -6,10 +10,10 @@ package com.twine.tango.integration.providers; */ public class MachineIdentityProvider implements IMachineIdentityProvider { - @Override public String getSerialNumber() { - return "1234"; + Machine machine = stream(TangoDAO.getAllMachines()).firstOrNull(); + return machine != null ? machine.getSerialNumber() : "0000"; } } diff --git a/Software/Android_Studio/Tango.Integration/src/main/java/com/twine/tango/integration/services/ExternalBridgeService.java b/Software/Android_Studio/Tango.Integration/src/main/java/com/twine/tango/integration/services/ExternalBridgeService.java index 709d5a271..24ae72eba 100644 --- a/Software/Android_Studio/Tango.Integration/src/main/java/com/twine/tango/integration/services/ExternalBridgeService.java +++ b/Software/Android_Studio/Tango.Integration/src/main/java/com/twine/tango/integration/services/ExternalBridgeService.java @@ -22,6 +22,7 @@ import com.twine.tango.pmr.integration.ExternalBridgeUdpDiscoveryPacketOuterClas import com.twine.tango.pmr.integration.ExternalClientLoginRequestOuterClass.ExternalClientLoginRequest; import com.twine.tango.pmr.integration.ExternalClientLoginResponseOuterClass.ExternalClientLoginResponse; import com.twine.tango.transport.ITransportAdapter; +import com.twine.tango.transport.ResponseErrorException; import com.twine.tango.transport.adapters.TcpTransportAdapter; import com.twine.tango.transport.transporters.ProtoTransporter; @@ -198,7 +199,7 @@ public class ExternalBridgeService extends ProtoTransporter implements IExternal if (container.getType() == MessageType.ExternalClientLoginRequest) { ExternalClientLoginRequest request = MessageFactory.parseMessageFromContainer(container); - if (request.getKey().equals("1234")) + if (request.getPassword().equals("Aa123456")) //TODO: Compare with global machine settings password... { getAdapters().get(0).setAuthenticated(true); sendResponse(MessageFactory.createTangoMessage( @@ -235,21 +236,23 @@ public class ExternalBridgeService extends ProtoTransporter implements IExternal //Route to machine... if (container.getContinuous()) { + //noinspection unchecked machineOperator.sendContinuousRequest(MessageFactory.createTangoMessage(container, message)).subscribe((response) -> { sendResponse((TangoMessage<? extends GeneratedMessageV3>) response); }, (ex) -> { - + sendResponse((TangoMessage<? extends GeneratedMessageV3>) ((ResponseErrorException)ex).getResponse()); }); } else { + //noinspection unchecked machineOperator.sendRequest(MessageFactory.createTangoMessage(container, message)).subscribe((response) -> { sendResponse((TangoMessage<? extends GeneratedMessageV3>) response); }, (ex) -> { - + sendResponse((TangoMessage<? extends GeneratedMessageV3>) ((ResponseErrorException)ex).getResponse()); }); } } diff --git a/Software/Android_Studio/Tango.Integration/src/main/java/com/twine/tango/integration/services/SynchronizationService.java b/Software/Android_Studio/Tango.Integration/src/main/java/com/twine/tango/integration/services/SynchronizationService.java index 0f3d98982..53b4c8194 100644 --- a/Software/Android_Studio/Tango.Integration/src/main/java/com/twine/tango/integration/services/SynchronizationService.java +++ b/Software/Android_Studio/Tango.Integration/src/main/java/com/twine/tango/integration/services/SynchronizationService.java @@ -1,5 +1,7 @@ package com.twine.tango.integration.services; +import android.os.AsyncTask; + import com.elvishew.xlog.XLog; import com.google.protobuf.ByteString; import com.snatik.storage.Storage; @@ -10,12 +12,18 @@ import com.twine.tango.integration.services.IExternalBridgeService.MessageReceiv import com.twine.tango.pmr.MessageFactory; import com.twine.tango.pmr.TangoMessage; import com.twine.tango.pmr.common.MessageTypeOuterClass.MessageType; +import com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest; +import com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse; +import com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest; +import com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse; import com.twine.tango.pmr.stubs.CalculateRequestOuterClass.CalculateRequest; import com.twine.tango.pmr.stubs.CalculateResponseOuterClass.CalculateResponse; import com.twine.tango.pmr.synchronization.SynchronizeDBRequestOuterClass.SynchronizeDBRequest; import com.twine.tango.web.WebApiFactory; import com.twine.tango.web.ISynchronizationAPI; +import java.io.IOException; + import javax.inject.Inject; import io.reactivex.Completable; @@ -39,14 +47,96 @@ public class SynchronizationService implements ISynchronizationService { this.machineIdentityProvider = machineIdentityProvider; this.bridgeService = bridgeService; - //this.bridgeService.registerMessageHandler(this::handleCalculateRequest, MessageType.CalculateRequest); + this.bridgeService.registerMessageHandler(this::handleDirectSynchronizationRequest, MessageType.DirectSynchronizationRequest); + this.bridgeService.<OverrideDataBaseRequest>registerMessageHandler(this::handleOverrideDataBaseRequest, MessageType.OverrideDataBaseRequest); + } - private void handleCalculateRequest(Object o, MessageReceivedArgs<CalculateRequest> e) + private void handleOverrideDataBaseRequest(Object o, MessageReceivedArgs<OverrideDataBaseRequest> request) { - CalculateResponse response = CalculateResponse.newBuilder().setSum(e.getMessage().getA() + e.getMessage().getB()).build(); - TangoMessage<CalculateResponse> tangoMessage = MessageFactory.createTangoMessage(CalculateResponse.class, response, e.getContainer().getToken()); - bridgeService.sendResponse(tangoMessage); + AsyncTask.execute(() -> + { + try + { + //Backup DataBase. + TangoDB.backup(); + + //Replace Database. + TangoDB.replace(request.getMessage().getRemoteDB().toByteArray()); + + //Create response. + OverrideDataBaseResponse response = OverrideDataBaseResponse.newBuilder() + .setSuccessful(true) + .build(); + + TangoMessage<OverrideDataBaseResponse> message = MessageFactory.createTangoMessage( + OverrideDataBaseResponse.class, + response); + + bridgeService.sendResponse(message, request.getContainer().getToken()).subscribe(() -> + { + + },(ex) -> + { + XLog.e(ex); + }); + + } catch (Exception e) + { + XLog.e(e); + //Create response. + OverrideDataBaseResponse response = OverrideDataBaseResponse.newBuilder() + .setSuccessful(false) + .build(); + + TangoMessage<OverrideDataBaseResponse> message = MessageFactory.createTangoMessage( + OverrideDataBaseResponse.class, + response); + + bridgeService.sendResponse(message, request.getContainer().getToken()).subscribe(() -> + { + + },(ex) -> + { + XLog.e(ex); + }); + } + }); + } + + private void handleDirectSynchronizationRequest(Object o, MessageReceivedArgs<DirectSynchronizationRequest> request) + { + AsyncTask.execute(() -> + { + try + { + Storage storage = new Storage(ContextHelper.getApplicationContext()); + + //Read current DB file bytes. + byte[] data = storage.readFile(TangoDB.getDataBasePath()); + + //Create synchronization response. + DirectSynchronizationResponse response = DirectSynchronizationResponse.newBuilder() + .setLocalDB(ByteString.copyFrom(data)) + .build(); + + TangoMessage<DirectSynchronizationResponse> message = MessageFactory.createTangoMessage( + DirectSynchronizationResponse.class, + response); + + bridgeService.sendResponse(message, request.getContainer().getToken()).subscribe(() -> + { + + },(ex) -> + { + XLog.e(ex); + }); + + } catch (Exception e) + { + XLog.e(e); + } + }); } @Override diff --git a/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/common/MessageTypeOuterClass.java b/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/common/MessageTypeOuterClass.java index 27d581c93..c6aaf8d17 100644 --- a/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/common/MessageTypeOuterClass.java +++ b/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/common/MessageTypeOuterClass.java @@ -163,6 +163,22 @@ public final class MessageTypeOuterClass { * <code>ExternalClientLoginResponse = 35;</code> */ ExternalClientLoginResponse(35), + /** + * <code>DirectSynchronizationRequest = 36;</code> + */ + DirectSynchronizationRequest(36), + /** + * <code>DirectSynchronizationResponse = 37;</code> + */ + DirectSynchronizationResponse(37), + /** + * <code>OverrideDataBaseRequest = 38;</code> + */ + OverrideDataBaseRequest(38), + /** + * <code>OverrideDataBaseResponse = 39;</code> + */ + OverrideDataBaseResponse(39), UNRECOGNIZED(-1), ; @@ -310,6 +326,22 @@ public final class MessageTypeOuterClass { * <code>ExternalClientLoginResponse = 35;</code> */ public static final int ExternalClientLoginResponse_VALUE = 35; + /** + * <code>DirectSynchronizationRequest = 36;</code> + */ + public static final int DirectSynchronizationRequest_VALUE = 36; + /** + * <code>DirectSynchronizationResponse = 37;</code> + */ + public static final int DirectSynchronizationResponse_VALUE = 37; + /** + * <code>OverrideDataBaseRequest = 38;</code> + */ + public static final int OverrideDataBaseRequest_VALUE = 38; + /** + * <code>OverrideDataBaseResponse = 39;</code> + */ + public static final int OverrideDataBaseResponse_VALUE = 39; public final int getNumber() { @@ -366,6 +398,10 @@ public final class MessageTypeOuterClass { case 33: return ExternalBridgeUdpDiscoveryPacket; case 34: return ExternalClientLoginRequest; case 35: return ExternalClientLoginResponse; + case 36: return DirectSynchronizationRequest; + case 37: return DirectSynchronizationResponse; + case 38: return OverrideDataBaseRequest; + case 39: return OverrideDataBaseResponse; default: return null; } } @@ -427,7 +463,7 @@ public final class MessageTypeOuterClass { descriptor; static { java.lang.String[] descriptorData = { - "\n\021MessageType.proto\022\020Tango.PMR.Common*\326\007" + + "\n\021MessageType.proto\022\020Tango.PMR.Common*\326\010" + "\n\013MessageType\022\007\n\003RGB\020\000\022\007\n\003Job\020\001\022\013\n\007Segme" + "nt\020\002\022\024\n\020CalculateRequest\020\003\022\025\n\021CalculateR" + "esponse\020\004\022\023\n\017ProgressRequest\020\005\022\024\n\020Progre" + @@ -452,8 +488,11 @@ public final class MessageTypeOuterClass { "ubValveRequest\020\037\022\025\n\021StubValveResponse\020 \022" + "$\n ExternalBridgeUdpDiscoveryPacket\020!\022\036\n" + "\032ExternalClientLoginRequest\020\"\022\037\n\033Externa" + - "lClientLoginResponse\020#B\034\n\032com.twine.tang" + - "o.pmr.commonb\006proto3" + "lClientLoginResponse\020#\022 \n\034DirectSynchron" + + "izationRequest\020$\022!\n\035DirectSynchronizatio" + + "nResponse\020%\022\033\n\027OverrideDataBaseRequest\020&" + + "\022\034\n\030OverrideDataBaseResponse\020\'B\034\n\032com.tw" + + "ine.tango.pmr.commonb\006proto3" }; com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { diff --git a/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/DirectSynchronizationRequestOuterClass.java b/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/DirectSynchronizationRequestOuterClass.java new file mode 100644 index 000000000..b2d324b39 --- /dev/null +++ b/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/DirectSynchronizationRequestOuterClass.java @@ -0,0 +1,441 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: DirectSynchronizationRequest.proto + +package com.twine.tango.pmr.integration; + +public final class DirectSynchronizationRequestOuterClass { + private DirectSynchronizationRequestOuterClass() {} + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistryLite registry) { + } + + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions( + (com.google.protobuf.ExtensionRegistryLite) registry); + } + public interface DirectSynchronizationRequestOrBuilder extends + // @@protoc_insertion_point(interface_extends:Tango.PMR.Integration.DirectSynchronizationRequest) + com.google.protobuf.MessageOrBuilder { + } + /** + * Protobuf type {@code Tango.PMR.Integration.DirectSynchronizationRequest} + */ + public static final class DirectSynchronizationRequest extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:Tango.PMR.Integration.DirectSynchronizationRequest) + DirectSynchronizationRequestOrBuilder { + private static final long serialVersionUID = 0L; + // Use DirectSynchronizationRequest.newBuilder() to construct. + private DirectSynchronizationRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private DirectSynchronizationRequest() { + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private DirectSynchronizationRequest( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownFieldProto3( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.internal_static_Tango_PMR_Integration_DirectSynchronizationRequest_descriptor; + } + + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.internal_static_Tango_PMR_Integration_DirectSynchronizationRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest.class, com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest.Builder.class); + } + + private byte memoizedIsInitialized = -1; + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + unknownFields.writeTo(output); + } + + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest)) { + return super.equals(obj); + } + com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest other = (com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest) obj; + + boolean result = true; + result = result && unknownFields.equals(other.unknownFields); + return result; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code Tango.PMR.Integration.DirectSynchronizationRequest} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:Tango.PMR.Integration.DirectSynchronizationRequest) + com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.internal_static_Tango_PMR_Integration_DirectSynchronizationRequest_descriptor; + } + + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.internal_static_Tango_PMR_Integration_DirectSynchronizationRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest.class, com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest.Builder.class); + } + + // Construct using com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + public Builder clear() { + super.clear(); + return this; + } + + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.internal_static_Tango_PMR_Integration_DirectSynchronizationRequest_descriptor; + } + + public com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest getDefaultInstanceForType() { + return com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest.getDefaultInstance(); + } + + public com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest build() { + com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + public com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest buildPartial() { + com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest result = new com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest(this); + onBuilt(); + return result; + } + + public Builder clone() { + return (Builder) super.clone(); + } + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return (Builder) super.setField(field, value); + } + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return (Builder) super.clearField(field); + } + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return (Builder) super.clearOneof(oneof); + } + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return (Builder) super.setRepeatedField(field, index, value); + } + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return (Builder) super.addRepeatedField(field, value); + } + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest) { + return mergeFrom((com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest other) { + if (other == com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest.getDefaultInstance()) return this; + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + public final boolean isInitialized() { + return true; + } + + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFieldsProto3(unknownFields); + } + + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:Tango.PMR.Integration.DirectSynchronizationRequest) + } + + // @@protoc_insertion_point(class_scope:Tango.PMR.Integration.DirectSynchronizationRequest) + private static final com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest(); + } + + public static com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<DirectSynchronizationRequest> + PARSER = new com.google.protobuf.AbstractParser<DirectSynchronizationRequest>() { + public DirectSynchronizationRequest parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new DirectSynchronizationRequest(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<DirectSynchronizationRequest> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<DirectSynchronizationRequest> getParserForType() { + return PARSER; + } + + public com.twine.tango.pmr.integration.DirectSynchronizationRequestOuterClass.DirectSynchronizationRequest getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_Tango_PMR_Integration_DirectSynchronizationRequest_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_Tango_PMR_Integration_DirectSynchronizationRequest_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor + getDescriptor() { + return descriptor; + } + private static com.google.protobuf.Descriptors.FileDescriptor + descriptor; + static { + java.lang.String[] descriptorData = { + "\n\"DirectSynchronizationRequest.proto\022\025Ta" + + "ngo.PMR.Integration\"\036\n\034DirectSynchroniza" + + "tionRequestB!\n\037com.twine.tango.pmr.integ" + + "rationb\006proto3" + }; + com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = + new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { + public com.google.protobuf.ExtensionRegistry assignDescriptors( + com.google.protobuf.Descriptors.FileDescriptor root) { + descriptor = root; + return null; + } + }; + com.google.protobuf.Descriptors.FileDescriptor + .internalBuildGeneratedFileFrom(descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + }, assigner); + internal_static_Tango_PMR_Integration_DirectSynchronizationRequest_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_Tango_PMR_Integration_DirectSynchronizationRequest_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_Tango_PMR_Integration_DirectSynchronizationRequest_descriptor, + new java.lang.String[] { }); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/DirectSynchronizationResponseOuterClass.java b/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/DirectSynchronizationResponseOuterClass.java new file mode 100644 index 000000000..e1187ec4b --- /dev/null +++ b/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/DirectSynchronizationResponseOuterClass.java @@ -0,0 +1,508 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: DirectSynchronizationResponse.proto + +package com.twine.tango.pmr.integration; + +public final class DirectSynchronizationResponseOuterClass { + private DirectSynchronizationResponseOuterClass() {} + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistryLite registry) { + } + + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions( + (com.google.protobuf.ExtensionRegistryLite) registry); + } + public interface DirectSynchronizationResponseOrBuilder extends + // @@protoc_insertion_point(interface_extends:Tango.PMR.Integration.DirectSynchronizationResponse) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>bytes LocalDB = 1;</code> + */ + com.google.protobuf.ByteString getLocalDB(); + } + /** + * Protobuf type {@code Tango.PMR.Integration.DirectSynchronizationResponse} + */ + public static final class DirectSynchronizationResponse extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:Tango.PMR.Integration.DirectSynchronizationResponse) + DirectSynchronizationResponseOrBuilder { + private static final long serialVersionUID = 0L; + // Use DirectSynchronizationResponse.newBuilder() to construct. + private DirectSynchronizationResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private DirectSynchronizationResponse() { + localDB_ = com.google.protobuf.ByteString.EMPTY; + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private DirectSynchronizationResponse( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownFieldProto3( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + case 10: { + + localDB_ = input.readBytes(); + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.internal_static_Tango_PMR_Integration_DirectSynchronizationResponse_descriptor; + } + + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.internal_static_Tango_PMR_Integration_DirectSynchronizationResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse.class, com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse.Builder.class); + } + + public static final int LOCALDB_FIELD_NUMBER = 1; + private com.google.protobuf.ByteString localDB_; + /** + * <code>bytes LocalDB = 1;</code> + */ + public com.google.protobuf.ByteString getLocalDB() { + return localDB_; + } + + private byte memoizedIsInitialized = -1; + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!localDB_.isEmpty()) { + output.writeBytes(1, localDB_); + } + unknownFields.writeTo(output); + } + + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!localDB_.isEmpty()) { + size += com.google.protobuf.CodedOutputStream + .computeBytesSize(1, localDB_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse)) { + return super.equals(obj); + } + com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse other = (com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse) obj; + + boolean result = true; + result = result && getLocalDB() + .equals(other.getLocalDB()); + result = result && unknownFields.equals(other.unknownFields); + return result; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + LOCALDB_FIELD_NUMBER; + hash = (53 * hash) + getLocalDB().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code Tango.PMR.Integration.DirectSynchronizationResponse} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:Tango.PMR.Integration.DirectSynchronizationResponse) + com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponseOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.internal_static_Tango_PMR_Integration_DirectSynchronizationResponse_descriptor; + } + + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.internal_static_Tango_PMR_Integration_DirectSynchronizationResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse.class, com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse.Builder.class); + } + + // Construct using com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + public Builder clear() { + super.clear(); + localDB_ = com.google.protobuf.ByteString.EMPTY; + + return this; + } + + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.internal_static_Tango_PMR_Integration_DirectSynchronizationResponse_descriptor; + } + + public com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse getDefaultInstanceForType() { + return com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse.getDefaultInstance(); + } + + public com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse build() { + com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + public com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse buildPartial() { + com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse result = new com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse(this); + result.localDB_ = localDB_; + onBuilt(); + return result; + } + + public Builder clone() { + return (Builder) super.clone(); + } + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return (Builder) super.setField(field, value); + } + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return (Builder) super.clearField(field); + } + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return (Builder) super.clearOneof(oneof); + } + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return (Builder) super.setRepeatedField(field, index, value); + } + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return (Builder) super.addRepeatedField(field, value); + } + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse) { + return mergeFrom((com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse other) { + if (other == com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse.getDefaultInstance()) return this; + if (other.getLocalDB() != com.google.protobuf.ByteString.EMPTY) { + setLocalDB(other.getLocalDB()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + public final boolean isInitialized() { + return true; + } + + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private com.google.protobuf.ByteString localDB_ = com.google.protobuf.ByteString.EMPTY; + /** + * <code>bytes LocalDB = 1;</code> + */ + public com.google.protobuf.ByteString getLocalDB() { + return localDB_; + } + /** + * <code>bytes LocalDB = 1;</code> + */ + public Builder setLocalDB(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + + localDB_ = value; + onChanged(); + return this; + } + /** + * <code>bytes LocalDB = 1;</code> + */ + public Builder clearLocalDB() { + + localDB_ = getDefaultInstance().getLocalDB(); + onChanged(); + return this; + } + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFieldsProto3(unknownFields); + } + + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:Tango.PMR.Integration.DirectSynchronizationResponse) + } + + // @@protoc_insertion_point(class_scope:Tango.PMR.Integration.DirectSynchronizationResponse) + private static final com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse(); + } + + public static com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<DirectSynchronizationResponse> + PARSER = new com.google.protobuf.AbstractParser<DirectSynchronizationResponse>() { + public DirectSynchronizationResponse parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new DirectSynchronizationResponse(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<DirectSynchronizationResponse> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<DirectSynchronizationResponse> getParserForType() { + return PARSER; + } + + public com.twine.tango.pmr.integration.DirectSynchronizationResponseOuterClass.DirectSynchronizationResponse getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_Tango_PMR_Integration_DirectSynchronizationResponse_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_Tango_PMR_Integration_DirectSynchronizationResponse_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor + getDescriptor() { + return descriptor; + } + private static com.google.protobuf.Descriptors.FileDescriptor + descriptor; + static { + java.lang.String[] descriptorData = { + "\n#DirectSynchronizationResponse.proto\022\025T" + + "ango.PMR.Integration\"0\n\035DirectSynchroniz" + + "ationResponse\022\017\n\007LocalDB\030\001 \001(\014B!\n\037com.tw" + + "ine.tango.pmr.integrationb\006proto3" + }; + com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = + new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { + public com.google.protobuf.ExtensionRegistry assignDescriptors( + com.google.protobuf.Descriptors.FileDescriptor root) { + descriptor = root; + return null; + } + }; + com.google.protobuf.Descriptors.FileDescriptor + .internalBuildGeneratedFileFrom(descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + }, assigner); + internal_static_Tango_PMR_Integration_DirectSynchronizationResponse_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_Tango_PMR_Integration_DirectSynchronizationResponse_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_Tango_PMR_Integration_DirectSynchronizationResponse_descriptor, + new java.lang.String[] { "LocalDB", }); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/ExternalClientLoginRequestOuterClass.java b/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/ExternalClientLoginRequestOuterClass.java index 9717c3d11..4709d4992 100644 --- a/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/ExternalClientLoginRequestOuterClass.java +++ b/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/ExternalClientLoginRequestOuterClass.java @@ -19,14 +19,14 @@ public final class ExternalClientLoginRequestOuterClass { com.google.protobuf.MessageOrBuilder { /** - * <code>string key = 1;</code> + * <code>string Password = 1;</code> */ - java.lang.String getKey(); + java.lang.String getPassword(); /** - * <code>string key = 1;</code> + * <code>string Password = 1;</code> */ com.google.protobuf.ByteString - getKeyBytes(); + getPasswordBytes(); } /** * Protobuf type {@code Tango.PMR.Integration.ExternalClientLoginRequest} @@ -41,7 +41,7 @@ public final class ExternalClientLoginRequestOuterClass { super(builder); } private ExternalClientLoginRequest() { - key_ = ""; + password_ = ""; } @java.lang.Override @@ -75,7 +75,7 @@ public final class ExternalClientLoginRequestOuterClass { case 10: { java.lang.String s = input.readStringRequireUtf8(); - key_ = s; + password_ = s; break; } } @@ -102,34 +102,34 @@ public final class ExternalClientLoginRequestOuterClass { com.twine.tango.pmr.integration.ExternalClientLoginRequestOuterClass.ExternalClientLoginRequest.class, com.twine.tango.pmr.integration.ExternalClientLoginRequestOuterClass.ExternalClientLoginRequest.Builder.class); } - public static final int KEY_FIELD_NUMBER = 1; - private volatile java.lang.Object key_; + public static final int PASSWORD_FIELD_NUMBER = 1; + private volatile java.lang.Object password_; /** - * <code>string key = 1;</code> + * <code>string Password = 1;</code> */ - public java.lang.String getKey() { - java.lang.Object ref = key_; + public java.lang.String getPassword() { + java.lang.Object ref = password_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); - key_ = s; + password_ = s; return s; } } /** - * <code>string key = 1;</code> + * <code>string Password = 1;</code> */ public com.google.protobuf.ByteString - getKeyBytes() { - java.lang.Object ref = key_; + getPasswordBytes() { + java.lang.Object ref = password_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); - key_ = b; + password_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; @@ -148,8 +148,8 @@ public final class ExternalClientLoginRequestOuterClass { public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { - if (!getKeyBytes().isEmpty()) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 1, key_); + if (!getPasswordBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, password_); } unknownFields.writeTo(output); } @@ -159,8 +159,8 @@ public final class ExternalClientLoginRequestOuterClass { if (size != -1) return size; size = 0; - if (!getKeyBytes().isEmpty()) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, key_); + if (!getPasswordBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, password_); } size += unknownFields.getSerializedSize(); memoizedSize = size; @@ -178,8 +178,8 @@ public final class ExternalClientLoginRequestOuterClass { com.twine.tango.pmr.integration.ExternalClientLoginRequestOuterClass.ExternalClientLoginRequest other = (com.twine.tango.pmr.integration.ExternalClientLoginRequestOuterClass.ExternalClientLoginRequest) obj; boolean result = true; - result = result && getKey() - .equals(other.getKey()); + result = result && getPassword() + .equals(other.getPassword()); result = result && unknownFields.equals(other.unknownFields); return result; } @@ -191,8 +191,8 @@ public final class ExternalClientLoginRequestOuterClass { } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); - hash = (37 * hash) + KEY_FIELD_NUMBER; - hash = (53 * hash) + getKey().hashCode(); + hash = (37 * hash) + PASSWORD_FIELD_NUMBER; + hash = (53 * hash) + getPassword().hashCode(); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; @@ -322,7 +322,7 @@ public final class ExternalClientLoginRequestOuterClass { } public Builder clear() { super.clear(); - key_ = ""; + password_ = ""; return this; } @@ -346,7 +346,7 @@ public final class ExternalClientLoginRequestOuterClass { public com.twine.tango.pmr.integration.ExternalClientLoginRequestOuterClass.ExternalClientLoginRequest buildPartial() { com.twine.tango.pmr.integration.ExternalClientLoginRequestOuterClass.ExternalClientLoginRequest result = new com.twine.tango.pmr.integration.ExternalClientLoginRequestOuterClass.ExternalClientLoginRequest(this); - result.key_ = key_; + result.password_ = password_; onBuilt(); return result; } @@ -388,8 +388,8 @@ public final class ExternalClientLoginRequestOuterClass { public Builder mergeFrom(com.twine.tango.pmr.integration.ExternalClientLoginRequestOuterClass.ExternalClientLoginRequest other) { if (other == com.twine.tango.pmr.integration.ExternalClientLoginRequestOuterClass.ExternalClientLoginRequest.getDefaultInstance()) return this; - if (!other.getKey().isEmpty()) { - key_ = other.key_; + if (!other.getPassword().isEmpty()) { + password_ = other.password_; onChanged(); } this.mergeUnknownFields(other.unknownFields); @@ -419,71 +419,71 @@ public final class ExternalClientLoginRequestOuterClass { return this; } - private java.lang.Object key_ = ""; + private java.lang.Object password_ = ""; /** - * <code>string key = 1;</code> + * <code>string Password = 1;</code> */ - public java.lang.String getKey() { - java.lang.Object ref = key_; + public java.lang.String getPassword() { + java.lang.Object ref = password_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); - key_ = s; + password_ = s; return s; } else { return (java.lang.String) ref; } } /** - * <code>string key = 1;</code> + * <code>string Password = 1;</code> */ public com.google.protobuf.ByteString - getKeyBytes() { - java.lang.Object ref = key_; + getPasswordBytes() { + java.lang.Object ref = password_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); - key_ = b; + password_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** - * <code>string key = 1;</code> + * <code>string Password = 1;</code> */ - public Builder setKey( + public Builder setPassword( java.lang.String value) { if (value == null) { throw new NullPointerException(); } - key_ = value; + password_ = value; onChanged(); return this; } /** - * <code>string key = 1;</code> + * <code>string Password = 1;</code> */ - public Builder clearKey() { + public Builder clearPassword() { - key_ = getDefaultInstance().getKey(); + password_ = getDefaultInstance().getPassword(); onChanged(); return this; } /** - * <code>string key = 1;</code> + * <code>string Password = 1;</code> */ - public Builder setKeyBytes( + public Builder setPasswordBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); - key_ = value; + password_ = value; onChanged(); return this; } @@ -551,9 +551,9 @@ public final class ExternalClientLoginRequestOuterClass { static { java.lang.String[] descriptorData = { "\n ExternalClientLoginRequest.proto\022\025Tang" + - "o.PMR.Integration\")\n\032ExternalClientLogin" + - "Request\022\013\n\003key\030\001 \001(\tB!\n\037com.twine.tango." + - "pmr.integrationb\006proto3" + "o.PMR.Integration\".\n\032ExternalClientLogin" + + "Request\022\020\n\010Password\030\001 \001(\tB!\n\037com.twine.t" + + "ango.pmr.integrationb\006proto3" }; com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { @@ -572,7 +572,7 @@ public final class ExternalClientLoginRequestOuterClass { internal_static_Tango_PMR_Integration_ExternalClientLoginRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_Tango_PMR_Integration_ExternalClientLoginRequest_descriptor, - new java.lang.String[] { "Key", }); + new java.lang.String[] { "Password", }); } // @@protoc_insertion_point(outer_class_scope) diff --git a/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/OverrideDataBaseRequestOuterClass.java b/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/OverrideDataBaseRequestOuterClass.java new file mode 100644 index 000000000..b02fae384 --- /dev/null +++ b/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/OverrideDataBaseRequestOuterClass.java @@ -0,0 +1,508 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: OverrideDataBaseRequest.proto + +package com.twine.tango.pmr.integration; + +public final class OverrideDataBaseRequestOuterClass { + private OverrideDataBaseRequestOuterClass() {} + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistryLite registry) { + } + + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions( + (com.google.protobuf.ExtensionRegistryLite) registry); + } + public interface OverrideDataBaseRequestOrBuilder extends + // @@protoc_insertion_point(interface_extends:Tango.PMR.Integration.OverrideDataBaseRequest) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>bytes RemoteDB = 1;</code> + */ + com.google.protobuf.ByteString getRemoteDB(); + } + /** + * Protobuf type {@code Tango.PMR.Integration.OverrideDataBaseRequest} + */ + public static final class OverrideDataBaseRequest extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:Tango.PMR.Integration.OverrideDataBaseRequest) + OverrideDataBaseRequestOrBuilder { + private static final long serialVersionUID = 0L; + // Use OverrideDataBaseRequest.newBuilder() to construct. + private OverrideDataBaseRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private OverrideDataBaseRequest() { + remoteDB_ = com.google.protobuf.ByteString.EMPTY; + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private OverrideDataBaseRequest( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownFieldProto3( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + case 10: { + + remoteDB_ = input.readBytes(); + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.internal_static_Tango_PMR_Integration_OverrideDataBaseRequest_descriptor; + } + + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.internal_static_Tango_PMR_Integration_OverrideDataBaseRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest.class, com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest.Builder.class); + } + + public static final int REMOTEDB_FIELD_NUMBER = 1; + private com.google.protobuf.ByteString remoteDB_; + /** + * <code>bytes RemoteDB = 1;</code> + */ + public com.google.protobuf.ByteString getRemoteDB() { + return remoteDB_; + } + + private byte memoizedIsInitialized = -1; + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!remoteDB_.isEmpty()) { + output.writeBytes(1, remoteDB_); + } + unknownFields.writeTo(output); + } + + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!remoteDB_.isEmpty()) { + size += com.google.protobuf.CodedOutputStream + .computeBytesSize(1, remoteDB_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest)) { + return super.equals(obj); + } + com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest other = (com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest) obj; + + boolean result = true; + result = result && getRemoteDB() + .equals(other.getRemoteDB()); + result = result && unknownFields.equals(other.unknownFields); + return result; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + REMOTEDB_FIELD_NUMBER; + hash = (53 * hash) + getRemoteDB().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code Tango.PMR.Integration.OverrideDataBaseRequest} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:Tango.PMR.Integration.OverrideDataBaseRequest) + com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.internal_static_Tango_PMR_Integration_OverrideDataBaseRequest_descriptor; + } + + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.internal_static_Tango_PMR_Integration_OverrideDataBaseRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest.class, com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest.Builder.class); + } + + // Construct using com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + public Builder clear() { + super.clear(); + remoteDB_ = com.google.protobuf.ByteString.EMPTY; + + return this; + } + + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.internal_static_Tango_PMR_Integration_OverrideDataBaseRequest_descriptor; + } + + public com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest getDefaultInstanceForType() { + return com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest.getDefaultInstance(); + } + + public com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest build() { + com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + public com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest buildPartial() { + com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest result = new com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest(this); + result.remoteDB_ = remoteDB_; + onBuilt(); + return result; + } + + public Builder clone() { + return (Builder) super.clone(); + } + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return (Builder) super.setField(field, value); + } + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return (Builder) super.clearField(field); + } + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return (Builder) super.clearOneof(oneof); + } + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return (Builder) super.setRepeatedField(field, index, value); + } + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return (Builder) super.addRepeatedField(field, value); + } + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest) { + return mergeFrom((com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest other) { + if (other == com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest.getDefaultInstance()) return this; + if (other.getRemoteDB() != com.google.protobuf.ByteString.EMPTY) { + setRemoteDB(other.getRemoteDB()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + public final boolean isInitialized() { + return true; + } + + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private com.google.protobuf.ByteString remoteDB_ = com.google.protobuf.ByteString.EMPTY; + /** + * <code>bytes RemoteDB = 1;</code> + */ + public com.google.protobuf.ByteString getRemoteDB() { + return remoteDB_; + } + /** + * <code>bytes RemoteDB = 1;</code> + */ + public Builder setRemoteDB(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + + remoteDB_ = value; + onChanged(); + return this; + } + /** + * <code>bytes RemoteDB = 1;</code> + */ + public Builder clearRemoteDB() { + + remoteDB_ = getDefaultInstance().getRemoteDB(); + onChanged(); + return this; + } + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFieldsProto3(unknownFields); + } + + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:Tango.PMR.Integration.OverrideDataBaseRequest) + } + + // @@protoc_insertion_point(class_scope:Tango.PMR.Integration.OverrideDataBaseRequest) + private static final com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest(); + } + + public static com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<OverrideDataBaseRequest> + PARSER = new com.google.protobuf.AbstractParser<OverrideDataBaseRequest>() { + public OverrideDataBaseRequest parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new OverrideDataBaseRequest(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<OverrideDataBaseRequest> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<OverrideDataBaseRequest> getParserForType() { + return PARSER; + } + + public com.twine.tango.pmr.integration.OverrideDataBaseRequestOuterClass.OverrideDataBaseRequest getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_Tango_PMR_Integration_OverrideDataBaseRequest_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_Tango_PMR_Integration_OverrideDataBaseRequest_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor + getDescriptor() { + return descriptor; + } + private static com.google.protobuf.Descriptors.FileDescriptor + descriptor; + static { + java.lang.String[] descriptorData = { + "\n\035OverrideDataBaseRequest.proto\022\025Tango.P" + + "MR.Integration\"+\n\027OverrideDataBaseReques" + + "t\022\020\n\010RemoteDB\030\001 \001(\014B!\n\037com.twine.tango.p" + + "mr.integrationb\006proto3" + }; + com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = + new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { + public com.google.protobuf.ExtensionRegistry assignDescriptors( + com.google.protobuf.Descriptors.FileDescriptor root) { + descriptor = root; + return null; + } + }; + com.google.protobuf.Descriptors.FileDescriptor + .internalBuildGeneratedFileFrom(descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + }, assigner); + internal_static_Tango_PMR_Integration_OverrideDataBaseRequest_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_Tango_PMR_Integration_OverrideDataBaseRequest_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_Tango_PMR_Integration_OverrideDataBaseRequest_descriptor, + new java.lang.String[] { "RemoteDB", }); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/OverrideDataBaseResponseOuterClass.java b/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/OverrideDataBaseResponseOuterClass.java new file mode 100644 index 000000000..562f4259c --- /dev/null +++ b/Software/Android_Studio/Tango.PMR/src/main/java/com/twine/tango/pmr/integration/OverrideDataBaseResponseOuterClass.java @@ -0,0 +1,506 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: OverrideDataBaseResponse.proto + +package com.twine.tango.pmr.integration; + +public final class OverrideDataBaseResponseOuterClass { + private OverrideDataBaseResponseOuterClass() {} + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistryLite registry) { + } + + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions( + (com.google.protobuf.ExtensionRegistryLite) registry); + } + public interface OverrideDataBaseResponseOrBuilder extends + // @@protoc_insertion_point(interface_extends:Tango.PMR.Integration.OverrideDataBaseResponse) + com.google.protobuf.MessageOrBuilder { + + /** + * <code>bool Successful = 1;</code> + */ + boolean getSuccessful(); + } + /** + * Protobuf type {@code Tango.PMR.Integration.OverrideDataBaseResponse} + */ + public static final class OverrideDataBaseResponse extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:Tango.PMR.Integration.OverrideDataBaseResponse) + OverrideDataBaseResponseOrBuilder { + private static final long serialVersionUID = 0L; + // Use OverrideDataBaseResponse.newBuilder() to construct. + private OverrideDataBaseResponse(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { + super(builder); + } + private OverrideDataBaseResponse() { + successful_ = false; + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private OverrideDataBaseResponse( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownFieldProto3( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + case 8: { + + successful_ = input.readBool(); + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.internal_static_Tango_PMR_Integration_OverrideDataBaseResponse_descriptor; + } + + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.internal_static_Tango_PMR_Integration_OverrideDataBaseResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse.class, com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse.Builder.class); + } + + public static final int SUCCESSFUL_FIELD_NUMBER = 1; + private boolean successful_; + /** + * <code>bool Successful = 1;</code> + */ + public boolean getSuccessful() { + return successful_; + } + + private byte memoizedIsInitialized = -1; + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (successful_ != false) { + output.writeBool(1, successful_); + } + unknownFields.writeTo(output); + } + + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (successful_ != false) { + size += com.google.protobuf.CodedOutputStream + .computeBoolSize(1, successful_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse)) { + return super.equals(obj); + } + com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse other = (com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse) obj; + + boolean result = true; + result = result && (getSuccessful() + == other.getSuccessful()); + result = result && unknownFields.equals(other.unknownFields); + return result; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + SUCCESSFUL_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( + getSuccessful()); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * Protobuf type {@code Tango.PMR.Integration.OverrideDataBaseResponse} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements + // @@protoc_insertion_point(builder_implements:Tango.PMR.Integration.OverrideDataBaseResponse) + com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponseOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.internal_static_Tango_PMR_Integration_OverrideDataBaseResponse_descriptor; + } + + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.internal_static_Tango_PMR_Integration_OverrideDataBaseResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse.class, com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse.Builder.class); + } + + // Construct using com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + public Builder clear() { + super.clear(); + successful_ = false; + + return this; + } + + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.internal_static_Tango_PMR_Integration_OverrideDataBaseResponse_descriptor; + } + + public com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse getDefaultInstanceForType() { + return com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse.getDefaultInstance(); + } + + public com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse build() { + com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + public com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse buildPartial() { + com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse result = new com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse(this); + result.successful_ = successful_; + onBuilt(); + return result; + } + + public Builder clone() { + return (Builder) super.clone(); + } + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return (Builder) super.setField(field, value); + } + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return (Builder) super.clearField(field); + } + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return (Builder) super.clearOneof(oneof); + } + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return (Builder) super.setRepeatedField(field, index, value); + } + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return (Builder) super.addRepeatedField(field, value); + } + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse) { + return mergeFrom((com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse other) { + if (other == com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse.getDefaultInstance()) return this; + if (other.getSuccessful() != false) { + setSuccessful(other.getSuccessful()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + public final boolean isInitialized() { + return true; + } + + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private boolean successful_ ; + /** + * <code>bool Successful = 1;</code> + */ + public boolean getSuccessful() { + return successful_; + } + /** + * <code>bool Successful = 1;</code> + */ + public Builder setSuccessful(boolean value) { + + successful_ = value; + onChanged(); + return this; + } + /** + * <code>bool Successful = 1;</code> + */ + public Builder clearSuccessful() { + + successful_ = false; + onChanged(); + return this; + } + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFieldsProto3(unknownFields); + } + + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:Tango.PMR.Integration.OverrideDataBaseResponse) + } + + // @@protoc_insertion_point(class_scope:Tango.PMR.Integration.OverrideDataBaseResponse) + private static final com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse(); + } + + public static com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser<OverrideDataBaseResponse> + PARSER = new com.google.protobuf.AbstractParser<OverrideDataBaseResponse>() { + public OverrideDataBaseResponse parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new OverrideDataBaseResponse(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser<OverrideDataBaseResponse> parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser<OverrideDataBaseResponse> getParserForType() { + return PARSER; + } + + public com.twine.tango.pmr.integration.OverrideDataBaseResponseOuterClass.OverrideDataBaseResponse getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_Tango_PMR_Integration_OverrideDataBaseResponse_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_Tango_PMR_Integration_OverrideDataBaseResponse_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor + getDescriptor() { + return descriptor; + } + private static com.google.protobuf.Descriptors.FileDescriptor + descriptor; + static { + java.lang.String[] descriptorData = { + "\n\036OverrideDataBaseResponse.proto\022\025Tango." + + "PMR.Integration\".\n\030OverrideDataBaseRespo" + + "nse\022\022\n\nSuccessful\030\001 \001(\010B!\n\037com.twine.tan" + + "go.pmr.integrationb\006proto3" + }; + com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = + new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { + public com.google.protobuf.ExtensionRegistry assignDescriptors( + com.google.protobuf.Descriptors.FileDescriptor root) { + descriptor = root; + return null; + } + }; + com.google.protobuf.Descriptors.FileDescriptor + .internalBuildGeneratedFileFrom(descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + }, assigner); + internal_static_Tango_PMR_Integration_OverrideDataBaseResponse_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_Tango_PMR_Integration_OverrideDataBaseResponse_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_Tango_PMR_Integration_OverrideDataBaseResponse_descriptor, + new java.lang.String[] { "Successful", }); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/ITransportAdapter.java b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/ITransportAdapter.java index abd12e0f0..2e076b1c8 100644 --- a/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/ITransportAdapter.java +++ b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/ITransportAdapter.java @@ -40,6 +40,20 @@ public interface ITransportAdapter extends ITransportComponent { */ void setAddress(String address); + /** + * Sets the adapter mode. + * + * @param mode the mode + */ + void setAdapterMode(TransportAdapterMode mode); + + /** + * Gets the adapter mode. + * + * @return the adapter mode + */ + TransportAdapterMode getAdapterMode(); + /** * Gets whether this adapter is authenticated. diff --git a/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/ITransporter.java b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/ITransporter.java index 9d2bce329..1ad704829 100644 --- a/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/ITransporter.java +++ b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/ITransporter.java @@ -8,6 +8,7 @@ import com.twine.tango.pmr.common.MessageContainerOuterClass.MessageContainer; import org.joda.time.Period; +import io.reactivex.Completable; import io.reactivex.Observable; import io.reactivex.Single; @@ -73,7 +74,7 @@ public interface ITransporter extends ITransportComponent { * @param response the response * @return the single */ - <Response extends GeneratedMessageV3> Single<Response> sendResponse(TangoMessage<Response> response); + <Response extends GeneratedMessageV3> Completable sendResponse(TangoMessage<Response> response); /** * Sends a response with the specified request token. @@ -83,7 +84,7 @@ public interface ITransporter extends ITransportComponent { * @param token the token * @return the single */ - <Response extends GeneratedMessageV3> Single<Response> sendResponse(TangoMessage<Response> response,String token); + <Response extends GeneratedMessageV3> Completable sendResponse(TangoMessage<Response> response,String token); /** * Sets request received listener. diff --git a/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/transporters/ResponseErrorException.java b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/ResponseErrorException.java index 465412f68..896e92b38 100644 --- a/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/transporters/ResponseErrorException.java +++ b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/ResponseErrorException.java @@ -1,5 +1,6 @@ -package com.twine.tango.transport.transporters; +package com.twine.tango.transport; +import com.twine.tango.pmr.TangoMessage; import com.twine.tango.pmr.common.ErrorCodeOuterClass.ErrorCode; @@ -10,6 +11,18 @@ public class ResponseErrorException extends Exception { private ErrorCode error; + private TangoMessage response; + + public TangoMessage getResponse() + { + return response; + } + + public void setResponse(TangoMessage response) + { + this.response = response; + } + /** * Gets the error. * @@ -35,9 +48,10 @@ public class ResponseErrorException extends Exception * * @param error the error */ - public ResponseErrorException(ErrorCode error) + public ResponseErrorException(ErrorCode error,TangoMessage response) { super("Response received with error " + error.toString()); setError(error); + setResponse(response); } } diff --git a/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/TransportAdapterBase.java b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/TransportAdapterBase.java index b9221ea27..6d5667ada 100644 --- a/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/TransportAdapterBase.java +++ b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/TransportAdapterBase.java @@ -6,6 +6,9 @@ import com.twine.tango.core.IEventHandler; import com.twine.tango.core.ObjectDisposedException; import java.io.IOException; +import java.nio.ByteBuffer; +import java.nio.ByteOrder; +import java.util.Arrays; import io.reactivex.Completable; @@ -15,18 +18,20 @@ import io.reactivex.Completable; */ public abstract class TransportAdapterBase implements ITransportAdapter { - + protected static final int MAX_BUFFER_SIZE = 1024 * 1024 * 10; //10 MB. private boolean isAuthenticated; private String address; private Event<TransportComponentState> stateChangedEvent; private IEventHandler<byte[]> dataAvailableListener; private TransportComponentState state; + private TransportAdapterMode adapterMode; /** * Instantiates a new Transport adapter base. */ public TransportAdapterBase() { + setAdapterMode(TransportAdapterMode.NO_HEADER); stateChangedEvent = new Event<>(); setAuthenticated(true); } @@ -56,6 +61,18 @@ public abstract class TransportAdapterBase implements ITransportAdapter } @Override + public void setAdapterMode(TransportAdapterMode mode) + { + adapterMode = mode; + } + + @Override + public TransportAdapterMode getAdapterMode() + { + return adapterMode; + } + + @Override public boolean isAuthenticated() { return isAuthenticated; @@ -155,4 +172,36 @@ public abstract class TransportAdapterBase implements ITransportAdapter setState(TransportComponentState.Failed); XLog.e(ex); } + + /** + * Applies any additional headers if required. + * + * @param data the data + * @return the byte [ ] + */ + protected byte[] postProcessBuffer(byte[] data) + { + if (adapterMode == TransportAdapterMode.NO_HEADER) + { + return data; + } else + { + byte[] size = ByteBuffer.allocate(4).order(ByteOrder.LITTLE_ENDIAN).putInt(data.length).array(); + return concatByteArrays(size, data); + } + } + + /** + * Concat byte arrays byte [ ]. + * + * @param first the first + * @param second the second + * @return the byte [ ] + */ + protected byte[] concatByteArrays(byte[] first, byte[] second) + { + byte[] result = Arrays.copyOf(first, first.length + second.length); + System.arraycopy(second, 0, result, first.length, second.length); + return result; + } } diff --git a/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/TransportAdapterMode.java b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/TransportAdapterMode.java new file mode 100644 index 000000000..699be758d --- /dev/null +++ b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/TransportAdapterMode.java @@ -0,0 +1,17 @@ +package com.twine.tango.transport; + + +/** + * Represents an {@link com.twine.tango.transport.ITransportAdapter} read/write mode. + */ +public enum TransportAdapterMode +{ + /** + * Pure protobuf message with no message size. + */ + NO_HEADER, + /** + * Prepends and truncates the message size before writing and reading. + */ + PREPEND_HEADER +} diff --git a/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/TransporterBase.java b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/TransporterBase.java index 3c09d547f..ff192bc3b 100644 --- a/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/TransporterBase.java +++ b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/TransporterBase.java @@ -16,7 +16,6 @@ import com.twine.tango.pmr.MessageFactory; import com.twine.tango.pmr.TangoMessage; import com.twine.tango.pmr.common.ErrorCodeOuterClass.ErrorCode; import com.twine.tango.pmr.common.MessageContainerOuterClass.MessageContainer; -import com.twine.tango.transport.transporters.ResponseErrorException; import org.joda.time.Period; @@ -414,13 +413,13 @@ public abstract class TransporterBase implements ITransporter } @Override - public <Response extends GeneratedMessageV3> Single<Response> sendResponse(TangoMessage<Response> response) + public <Response extends GeneratedMessageV3> Completable sendResponse(TangoMessage<Response> response) { return sendResponse(response, response.getContainer().getToken()); } @Override - public <Response extends GeneratedMessageV3> Single<Response> sendResponse(TangoMessage<Response> response, String token) + public <Response extends GeneratedMessageV3> Completable sendResponse(TangoMessage<Response> response, String token) { response.getContainer().setToken(token); @@ -459,7 +458,7 @@ public abstract class TransporterBase implements ITransporter TransportMessage<Response> message = new TransportMessage<>(adapter, token, response, TransportMessageDirection.Response, onSerializingMessage(response), subject); sendingQueue.add(message); - return subject.singleOrError(); + return subject.singleOrError().toCompletable(); } //endregion @@ -537,7 +536,7 @@ public abstract class TransporterBase implements ITransporter pendingRequests.add(message); } else { - message.setResult(true, true); + message.setResult(new Object(), true); } } catch (Exception ex) { @@ -613,8 +612,7 @@ public abstract class TransporterBase implements ITransporter } else { XLog.i("Parsing inner response message and setting pending request task result..."); - request.setException(new ResponseErrorException(container.getError())); - + request.setException(new ResponseErrorException(container.getError(), onParseTangoMessage(data.second))); } } catch (Exception ex) { @@ -638,7 +636,7 @@ public abstract class TransporterBase implements ITransporter } else { XLog.i("Response has returned with error: " + container.getError().toString()); - request.setException(new ResponseErrorException(container.getError())); + request.setException(new ResponseErrorException(container.getError(), onParseTangoMessage(data.second))); } } catch (Exception ex) { diff --git a/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/adapters/TcpTransportAdapter.java b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/adapters/TcpTransportAdapter.java index b72d1669b..f2e7a83a8 100644 --- a/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/adapters/TcpTransportAdapter.java +++ b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/adapters/TcpTransportAdapter.java @@ -5,6 +5,7 @@ import android.os.SystemClock; import com.elvishew.xlog.XLog; import com.twine.tango.core.ObjectDisposedException; import com.twine.tango.transport.TransportAdapterBase; +import com.twine.tango.transport.TransportAdapterMode; import com.twine.tango.transport.TransportComponentState; import java.io.IOException; @@ -12,6 +13,8 @@ import java.io.InputStream; import java.net.InetSocketAddress; import java.net.Socket; import java.net.SocketException; +import java.nio.ByteBuffer; +import java.nio.ByteOrder; import java.nio.channels.Selector; import io.reactivex.Completable; @@ -36,6 +39,7 @@ public class TcpTransportAdapter extends TransportAdapterBase super(); setAddress("127.0.0.1"); setPort(9999); + setAdapterMode(TransportAdapterMode.PREPEND_HEADER); } public TcpTransportAdapter(String address, int port) @@ -144,7 +148,7 @@ public class TcpTransportAdapter extends TransportAdapterBase try { - socket.getOutputStream().write(data); + socket.getOutputStream().write(postProcessBuffer(data)); } catch (IOException e) { onFailed(e); @@ -167,39 +171,59 @@ public class TcpTransportAdapter extends TransportAdapterBase { InputStream stream = socket.getInputStream(); - if (stream.available() > 0) + if (getAdapterMode() == TransportAdapterMode.NO_HEADER) { - byte[] data = new byte[stream.available()]; - int read = stream.read(data); - - if (read == -1) + if (stream.available() > 0) { - throw new SocketException("Error reading from TCP adapter."); + byte[] data = new byte[stream.available()]; + int read = stream.read(data); + + if (read == -1) + { + throw new SocketException("Error reading from TCP adapter."); + } + + onDataAvailable(data); + } + } + else + { + if (stream.available() > 4) + { + byte[] size = new byte[4]; + + int read = stream.read(size, 0, size.length); + + if (read == -1) + { + throw new SocketException("Error reading from TCP adapter."); + } + + int expectedSize = ByteBuffer.wrap(size).order(ByteOrder.LITTLE_ENDIAN).getInt(); + + while (stream.available() < expectedSize) + { + SystemClock.sleep(10); + + if (getState() != TransportComponentState.Connected) + { + break; + } + } + + byte[] data = new byte[expectedSize]; + read = stream.read(data); + + if (read == -1) + { + throw new SocketException("Error reading from TCP adapter."); + } + + onDataAvailable(data); } - - onDataAvailable(data); } SystemClock.sleep(10); -// counter++; - -// if (counter > 200) -// { -// try -// { -// if (socket.getChannel().keyFor(selector).isWritable() && socket.getChannel().keyFor(selector).isReadable()) -// { -// onFailed(new SocketTimeoutException("Client disconnected.")); -// return; -// } -// } catch (Exception e) -// { -// onFailed(e); -// return; -// } -// -// counter = 0; -// } } } catch (Exception e) @@ -210,4 +234,20 @@ public class TcpTransportAdapter extends TransportAdapterBase } //endregion + + //region Private Methods + + private void setSocketProperties() + { + try + { + socket.setReceiveBufferSize(MAX_BUFFER_SIZE); + socket.setSendBufferSize(MAX_BUFFER_SIZE); + } catch (SocketException e) + { + e.printStackTrace(); + } + } + + //endregion } diff --git a/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/adapters/UsbTransportAdapter.java b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/adapters/UsbTransportAdapter.java index 8ad55708c..60efe976a 100644 --- a/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/adapters/UsbTransportAdapter.java +++ b/Software/Android_Studio/Tango.Transport/src/main/java/com/twine/tango/transport/adapters/UsbTransportAdapter.java @@ -15,9 +15,13 @@ import com.felhr.usbserial.UsbSerialInterface; import com.twine.tango.core.ContextHelper; import com.twine.tango.core.ObjectDisposedException; import com.twine.tango.transport.TransportAdapterBase; +import com.twine.tango.transport.TransportAdapterMode; import com.twine.tango.transport.TransportComponentState; import java.io.IOException; +import java.nio.ByteBuffer; +import java.nio.ByteOrder; +import java.util.Arrays; import java.util.Map; import io.reactivex.Completable; @@ -37,6 +41,8 @@ public class UsbTransportAdapter extends TransportAdapterBase private UsbManager usbManager; private boolean hasPermission; private PublishSubject connectionSubject; + private byte[] current_buffer; + private int current_buffer_bar; public UsbTransportAdapter() { @@ -51,7 +57,7 @@ public class UsbTransportAdapter extends TransportAdapterBase @Override public void write(byte[] data) throws ObjectDisposedException, IOException { - serial.write(data); + serial.write(postProcessBuffer(data)); } @Override @@ -126,7 +132,54 @@ public class UsbTransportAdapter extends TransportAdapterBase private void onUsbReceiveData(byte[] data) { - onDataAvailable(data); + if (getAdapterMode() == TransportAdapterMode.NO_HEADER) + { + onDataAvailable(data); + } else + { + if (current_buffer == null) + { + byte[] size = Arrays.copyOfRange(data, 0, 4); + int expectedSize = ByteBuffer.wrap(size).order(ByteOrder.LITTLE_ENDIAN).getInt(); + current_buffer = new byte[expectedSize]; + byte[] rest = Arrays.copyOfRange(data, 4, data.length); + if (rest.length == expectedSize) + { + current_buffer = null; + onDataAvailable(rest); + } else + { + current_buffer_bar = rest.length; + ByteBuffer.wrap(current_buffer).put(rest); + } + } else + { + int remaining = current_buffer.length - current_buffer_bar; + + if (data.length < remaining) + { + current_buffer_bar += data.length; + ByteBuffer.wrap(current_buffer).put(data); + } else if (data.length > remaining) + { + byte[] end = Arrays.copyOfRange(data, 0, remaining); + ByteBuffer.wrap(current_buffer).put(end); + onDataAvailable(current_buffer); + current_buffer = null; + current_buffer_bar = 0; + byte[] rest = Arrays.copyOfRange(data, remaining, data.length); + onUsbReceiveData(rest); + } + else //Equals + { + byte[] end = Arrays.copyOfRange(data, 0, remaining); + ByteBuffer.wrap(current_buffer).put(end); + onDataAvailable(current_buffer); + current_buffer = null; + current_buffer_bar = 0; + } + } + } } @Override |
