syntax = "proto3";

option go_package = "github.com/opencord/voltha-protos/v5/go/voltha";
option java_package = "org.opencord.voltha";
option java_outer_classname = "VolthaAdapter";

package voltha;


import "voltha_protos/meta.proto";
import "google/protobuf/any.proto";

message AdapterConfig {

    // Custom (vendor-specific) configuration attributes
    google.protobuf.Any additional_config = 64;

}

// Adapter (software plugin)
message Adapter {

    // the adapter ID has to be unique,
    // it will be generated as Type + CurrentReplica
    string id = 1 [(access) = READ_ONLY];
    string vendor = 2 [(access) = READ_ONLY];
    string version = 3 [(access) = READ_ONLY];

    // Adapter configuration
    AdapterConfig config = 16;

    // Custom descriptors and custom configuration
    google.protobuf.Any additional_description = 64 [(access) = READ_ONLY];

    repeated string logical_device_ids = 4;  // Logical devices "owned"

    // timestamp when the adapter last sent a message to the core
    int64 last_communication = 5;

    int32 currentReplica = 6;
    int32 totalReplicas = 7;
    string endpoint = 8;
    // all replicas of the same adapter will have the same type
    // it is used to associate a device to an adapter
    string type = 9;

}

message Adapters {
    repeated Adapter items = 1;
}
