All Downloads are FREE. Search and download functionalities are using the official Maven repository.

ityplatform.openicf.framework.connector-framework-protobuf.1.7.0.source-code.RPCMessages.proto Maven / Gradle / Ivy

The newest version!
syntax = "proto3";

option csharp_namespace = "Org.ForgeRock.OpenICF.Common.ProtoBuf";
package org.forgerock.openicf.common.protobuf;

import "OperationMessages.proto";

//Handshake Message
message HandshakeMessage {
    enum ServerType {
		UNKNOWN = 0;
        JAVA = 1;
        DOTNET = 2;
    }
    string sessionId = 1;
    ServerType serverType = 2;
    bytes publicKey = 3;
}

message ExceptionMessage {
    message InnerCause {
        string exceptionClass = 1;
        string message = 2;
        InnerCause cause = 3;
    }
    string exceptionClass = 1;
    string message = 2;
    InnerCause innerCause = 3;
    string stackTrace = 4;
}

message CancelOpRequest {

}

message ControlRequest {
    enum InfoLevel {
        CONNECTOR_INFO = 0;
        CONTEXT_INFO = 1;
        REQUESTS = 2;
    }
    repeated InfoLevel infoLevel = 1;
    repeated int64 localRequestId = 2;
    repeated int64 remoteRequestId = 3;
}

message ControlResponse {
    message StringMapFieldEntry {
        //option map_entry = true;
        string key = 1;
        string value = 2;
    }
    repeated StringMapFieldEntry contextInfoMap = 1;
    bytes connectorInfos = 2;
    repeated int64 requestIds = 3;
}

//Maximum 125 byte
message PingMessage {
    
}

message RPCRequest {
    //oneof request {
    HandshakeMessage handshakeMessage = 1;
    ControlRequest controlRequest = 2;
    OperationRequest operationRequest = 3;
    CancelOpRequest cancelOpRequest = 4;
    //}
}

message RPCResponse {
    //oneof response {
    HandshakeMessage handshakeMessage = 1;
    ControlResponse controlResponse = 2;
    OperationResponse operationResponse = 3;
    ExceptionMessage error = 4;
    //}
}

message RemoteMessage {
    int64 messageId = 1;
    //oneof message {
    RPCRequest request = 2;
    RPCResponse response = 3;
    //}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy