Extend Camino edge endpoint protocol
This commit is contained in:
@@ -188,6 +188,7 @@ message CaminoEdge {
|
||||
string edge_type_id = 2;
|
||||
string from_object_id = 3;
|
||||
string to_object_id = 4;
|
||||
// Legacy canonical source-side projection fields. Prefer endpoint fields.
|
||||
string source_field = 5;
|
||||
string cardinality = 6;
|
||||
string inverse = 7;
|
||||
@@ -195,6 +196,10 @@ message CaminoEdge {
|
||||
optional int32 ordinal = 9;
|
||||
string created_at = 10;
|
||||
string updated_at = 11;
|
||||
string from_projection = 12;
|
||||
string to_projection = 13;
|
||||
string from_cardinality = 14;
|
||||
string to_cardinality = 15;
|
||||
}
|
||||
|
||||
message CaminoOp {
|
||||
|
||||
@@ -54,9 +54,24 @@ message ConstructorOptions {
|
||||
|
||||
message EdgeOptions {
|
||||
SymbolRef id = 1;
|
||||
// Shorthand for other_endpoint.class.
|
||||
SymbolRef target = 2;
|
||||
// Shorthand for this_endpoint.cardinality.
|
||||
Cardinality cardinality = 3;
|
||||
// Shorthand for other_endpoint.projection.
|
||||
string inverse = 4;
|
||||
EdgeEndpointOptions this_endpoint = 5;
|
||||
EdgeEndpointOptions other_endpoint = 6;
|
||||
repeated SymbolRef tag = 7;
|
||||
repeated SymbolRef implements = 8;
|
||||
}
|
||||
|
||||
message EdgeEndpointOptions {
|
||||
SymbolRef class = 1;
|
||||
SymbolRef interface = 2;
|
||||
string projection = 3;
|
||||
Cardinality cardinality = 4;
|
||||
bool indexed = 5;
|
||||
}
|
||||
|
||||
message MethodOptions {
|
||||
|
||||
@@ -25,6 +25,7 @@ enum Cardinality {
|
||||
MANY = 3;
|
||||
MANY_UNIQUE = 4;
|
||||
MANY_ORDERED = 5;
|
||||
MANY_UNIQUE_ORDERED = 6;
|
||||
}
|
||||
|
||||
enum DocRefStrength {
|
||||
@@ -147,12 +148,26 @@ message FieldOps {
|
||||
|
||||
message EdgeSchema {
|
||||
SymbolRef id = 1;
|
||||
// Legacy/source-side projection fields. Prefer from_endpoint/to_endpoint.
|
||||
string source_field = 2;
|
||||
SymbolRef from_class = 3;
|
||||
SymbolRef to_class = 4;
|
||||
Cardinality cardinality = 5;
|
||||
string inverse = 6;
|
||||
repeated FieldSchema fields = 7;
|
||||
EdgeEndpointSchema from_endpoint = 8;
|
||||
EdgeEndpointSchema to_endpoint = 9;
|
||||
SymbolRef declaring_class = 10;
|
||||
repeated SymbolRef tags = 11;
|
||||
repeated SymbolRef implements = 12;
|
||||
}
|
||||
|
||||
message EdgeEndpointSchema {
|
||||
SymbolRef class = 1;
|
||||
SymbolRef interface = 2;
|
||||
string projection = 3;
|
||||
Cardinality cardinality = 4;
|
||||
bool indexed = 5;
|
||||
}
|
||||
|
||||
message MethodSchema {
|
||||
|
||||
Reference in New Issue
Block a user