nserver-connector-java.4.5.4.source-code.common.proto Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of axonserver-connector-java Show documentation
Show all versions of axonserver-connector-java Show documentation
Connector module providing infrastructure components that connect to AxonServer.
syntax = "proto3";
package io.axoniq.axonserver.grpc;
import "google/protobuf/any.proto";
option java_multiple_files = true;
/* Describes a serialized object */
message SerializedObject {
/* The type identifier of the serialized object. */
string type = 1;
/* The revision of the serialized form of the given type. */
string revision = 2;
/* The actual data representing the object in serialized form. */
bytes data = 3;
}
/* The value of a MetaData entry. */
message MetaDataValue {
/* The data of the MetaData entry, depending on the type of data it contains. */
oneof data {
/* The text value of the Meta Data entry. */
string text_value = 1;
/* The numeric value of the Meta Data entry. */
sint64 number_value = 2;
/* The boolean value of the Meta Data entry. */
bool boolean_value = 3;
/* The floating point value of the Meta Data entry. */
double double_value = 4;
/* The binary value of the Meta Data entry. */
SerializedObject bytes_value = 5;
}
}
/* An instruction for routing components when routing or processing a message. */
message ProcessingInstruction {
/* The type of processing message. */
ProcessingKey key = 1;
/* The value associated with the processing key. */
MetaDataValue value = 2;
}
/* An enumeration of possible keys for processing instructions. */
enum ProcessingKey {
/* key indicating that the attached value should be used for consistent routing. */
ROUTING_KEY = 0;
/* key indicating that the attached value indicates relative priority of this message. */
PRIORITY = 1;
/* key indicating that the accompanied message has a finite validity. The attached value contains the number of milliseconds. */
TIMEOUT = 2;
/* key indicating that the requester expects at most the given number of results from this message. Use -1 for unlimited. */
NR_OF_RESULTS = 3;
// do not reuse reserved number to ensure forward and backward compatibility
reserved 4, 5, 6;
}
/* Message containing details of an error */
message ErrorMessage {
/* A human readable message explaining the error */
string message = 1;
/* A description of the location (client component, server) where the error occurred */
string location = 2;
/* A collection of messages providing more details about root causes of the error */
repeated string details = 3;
/* An Error Code identifying the type of error */
string error_code = 4;
}
/* Message used for Flow Control instruction, providing the counterpart with additional permits for sending messages */
message FlowControl {
reserved 1;
/* The ClientID of the component providing additional permits */
string client_id = 2;
/* The number of permits to provide */
int64 permits = 3;
}
/* Message describing instruction acknowledgement */
message InstructionAck {
/* The identifier of the instruction */
string instruction_id = 1;
/* Indicator whether the instruction was acknowledged successfully */
bool success = 2;
/* Set if instruction acknowledgement failed. */
ErrorMessage error = 3;
}
/* Message describing the result of the execution of an instruction*/
message InstructionResult {
/* The identifier of the instruction */
string instruction_id = 1;
/* Indicator whether the instruction was processed successfully */
bool success = 2;
/* Cause of instruction handling failure. */
ErrorMessage error = 3;
}
/* Defines status values for a scheduled task */
enum TaskStatus {
// Task is scheduled for execution
SCHEDULED = 0;
// Task execution completed successfully
COMPLETED = 1;
// Task execution failed with non transient exception
FAILED = 2;
// Task execution is in progress
RUNNING = 3;
// Task execution is in progress
CANCELLED = 4;
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy