syntax = "proto3";

package humand.bamboo.v1;

option java_multiple_files = true;
option java_package = "co.humand.bamboo.v1";

service DuplicationService {
    rpc startDuplication (StartDuplicationRequest) returns (StartDuplicationResponse);
}

message StartDuplicationRequest {
    string duplication_id = 1;
    int64 source_instance_id = 2;
    int64 target_instance_id = 3;
    map<string, AttributeMappings> mappings = 4;
}

message StartDuplicationResponse {
    DuplicationStatus status = 1;
}

message AttributeMappings {
    map<string, string> values = 1;
    optional string defaultMapping = 2;
}

enum DuplicationStatus {
    IN_PROGRESS = 0;
    DONE = 1;
    FAILED = 2;
}

