Interface ClusterAdminService

  • All Superinterfaces:
    RpcService
    All Known Implementing Classes:
    ClusterAdminRpcService

    public interface ClusterAdminService
    extends RpcService
    Interface for implementing the following YANG RPCs defined in module cluster-admin
     rpc add-shard-replica {
       input input {
         uses datastore-shard-id;
       }
     }
     rpc remove-shard-replica {
       input input {
         uses datastore-shard-id;
         leaf member-name {
           type string;
         }
       }
     }
     rpc make-leader-local {
       input input {
         uses datastore-shard-id;
       }
     }
     rpc add-prefix-shard-replica {
       input input {
         leaf shard-prefix {
           type instance-identifier;
         }
         leaf data-store-type {
           type data-store-type;
         }
       }
     }
     rpc remove-prefix-shard-replica {
       input input {
         leaf shard-prefix {
           type instance-identifier;
         }
         leaf member-name {
           type string;
         }
         leaf data-store-type {
           type data-store-type;
         }
       }
     }
     rpc add-replicas-for-all-shards {
       output output {
         uses shard-result-output;
       }
     }
     rpc remove-all-shard-replicas {
       input input {
         leaf member-name {
           type string;
         }
       }
       output output {
         uses shard-result-output;
       }
     }
     rpc change-member-voting-states-for-shard {
       input input {
         uses datastore-shard-id;
         uses member-voting-states-input;
       }
     }
     rpc change-member-voting-states-for-all-shards {
       input input {
         uses member-voting-states-input;
       }
       output output {
         uses shard-result-output;
       }
     }
     rpc flip-member-voting-states-for-all-shards {
       output output {
         uses shard-result-output;
       }
     }
     rpc backup-datastore {
       input input {
         leaf file-path {
           type string;
         }
       }
     }
     rpc get-shard-role {
       input input {
         uses datastore-shard-id;
       }
       output output {
         leaf role {
           type string;
         }
       }
     }
     rpc locate-shard {
       input input {
         uses datastore-shard-id;
       }
       output output {
         choice member-node {
           case local {
             leaf local {
               type empty;
             }
           }
           case leader-actor-ref {
             leaf leader-actor-ref {
               type string;
             }
           }
         }
       }
     }
     rpc get-prefix-shard-role {
       input input {
         leaf shard-prefix {
           type instance-identifier;
         }
         leaf data-store-type {
           type data-store-type;
         }
       }
       output output {
         leaf role {
           type string;
         }
       }
     }
     rpc get-known-clients-for-all-shards {
       output output {
         uses shard-result-output {
           augment shard-result {
             list known-clients {
               when "../succeeded = true";
               uses cds:client-identifier;
               key "member type";
             }
           }
         }
       }
     }