syntax = "proto3"; import "google/protobuf/struct.proto"; import "BlueprintCommon.proto"; option java_multiple_files = true; package org.onap.ccsdk.cds.controllerblueprints.management.api; message BlueprintUploadInput { org.onap.ccsdk.cds.controllerblueprints.common.api.CommonHeader commonHeader = 1; FileChunk fileChunk = 2; org.onap.ccsdk.cds.controllerblueprints.common.api.ActionIdentifiers actionIdentifiers = 3; // Extra optional dynamic properties used during upload. google.protobuf.Struct properties = 4; } message BlueprintDownloadInput { org.onap.ccsdk.cds.controllerblueprints.common.api.CommonHeader commonHeader = 1; org.onap.ccsdk.cds.controllerblueprints.common.api.ActionIdentifiers actionIdentifiers = 2; // Extra optional dynamic properties used to download. google.protobuf.Struct properties = 3; } message BlueprintRemoveInput { org.onap.ccsdk.cds.controllerblueprints.common.api.CommonHeader commonHeader = 1; org.onap.ccsdk.cds.controllerblueprints.common.api.ActionIdentifiers actionIdentifiers = 2; // Extra optional dynamic properties used to remove. google.protobuf.Struct properties = 3; } message BlueprintBootstrapInput { org.onap.ccsdk.cds.controllerblueprints.common.api.CommonHeader commonHeader = 1; bool loadCBA = 2; bool loadModelType = 3; bool loadResourceDictionary = 4; } message BlueprintManagementOutput { org.onap.ccsdk.cds.controllerblueprints.common.api.CommonHeader commonHeader = 1; // Optional file chunk sent back to the client for Enrich and Download this is mandatory. FileChunk fileChunk = 2; org.onap.ccsdk.cds.controllerblueprints.common.api.Status status = 3; // Extra optional dynamic properties. google.protobuf.Struct properties = 4; } message FileChunk { bytes chunk = 1; } // Values used in BlueprintDownloadInput/actionIdentifiers/action enum DownloadAction { // Default is SEARCH the cba and download the cba SEARCH = 0; // Download the starter cba with corresponding property options STARTER = 1; // clone cba with corresponding property options CLONE = 2; } enum UploadAction { // Default is DRAFT DRAFT = 0; ENRICH = 1; VALIDATE = 2; PUBLISH = 3; } enum RemoveAction { // Delete CBA from database, deploy path and clean cache. DEFAULT = 0; } service BlueprintManagementService { rpc downloadBlueprint (BlueprintDownloadInput) returns (BlueprintManagementOutput); rpc uploadBlueprint (BlueprintUploadInput) returns (BlueprintManagementOutput); rpc removeBlueprint (BlueprintRemoveInput) returns (BlueprintManagementOutput); rpc bootstrapBlueprint (BlueprintBootstrapInput) returns (BlueprintManagementOutput); }