diff options
author | Alexis de Talhouët <adetalhouet89@gmail.com> | 2019-01-18 14:29:38 -0500 |
---|---|---|
committer | Alexis de Talhouët <adetalhouet89@gmail.com> | 2019-01-18 14:29:38 -0500 |
commit | 1600d564c99116685fcf6c9c270cd1fbd3440a57 (patch) | |
tree | 0455e3a79211afd0b442d9c58bb413aa4985b194 /components/model-catalog/proto-definition | |
parent | 9d12c15053c000b48af68a766f69c7ec8b008db6 (diff) |
Create module for .proto definition
That way 3rd party system can depend on it to create a client
Change-Id: I96e8588251eb0911a7dd7bee270954e966d9fc40
Issue-ID: CCSDK-947
Signed-off-by: Alexis de Talhouët <adetalhouet89@gmail.com>
Diffstat (limited to 'components/model-catalog/proto-definition')
3 files changed, 168 insertions, 0 deletions
diff --git a/components/model-catalog/proto-definition/pom.xml b/components/model-catalog/proto-definition/pom.xml new file mode 100644 index 00000000..c1f77922 --- /dev/null +++ b/components/model-catalog/proto-definition/pom.xml @@ -0,0 +1,81 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * Copyright (C) 2019 Bell Canada +* + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + --> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.onap.ccsdk.apps.controllerblueprints</groupId> + <artifactId>modules</artifactId> + <version>0.4.1-SNAPSHOT</version> + </parent> + + <artifactId>proto-definition</artifactId> + <packaging>jar</packaging> + + <name>Controller Blueprints Proto Definition</name> + <description>Controller Blueprints Proto Definition</description> + + <dependencies> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-protobuf</artifactId> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-stub</artifactId> + </dependency> + <dependency> + <groupId>com.google.protobuf</groupId> + <artifactId>protobuf-java-util</artifactId> + </dependency> + </dependencies> + + <build> + <extensions> + <extension> + <groupId>kr.motd.maven</groupId> + <artifactId>os-maven-plugin</artifactId> + <version>1.6.1</version> + </extension> + </extensions> + <plugins> + <plugin> + <groupId>org.xolstice.maven.plugins</groupId> + <artifactId>protobuf-maven-plugin</artifactId> + <version>0.6.1</version> + <configuration> + <protocArtifact> + com.google.protobuf:protoc:3.5.1-1:exe:${os.detected.classifier} + </protocArtifact> + <pluginId>grpc-java</pluginId> + <pluginArtifact> + io.grpc:protoc-gen-grpc-java:1.16.1:exe:${os.detected.classifier} + </pluginArtifact> + <protoSourceRoot>proto</protoSourceRoot> + </configuration> + <executions> + <execution> + <goals> + <goal>compile</goal> + <goal>compile-custom</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project>
\ No newline at end of file diff --git a/components/model-catalog/proto-definition/proto/BluePrintManagement.proto b/components/model-catalog/proto-definition/proto/BluePrintManagement.proto new file mode 100644 index 00000000..dc0680d5 --- /dev/null +++ b/components/model-catalog/proto-definition/proto/BluePrintManagement.proto @@ -0,0 +1,38 @@ +syntax = "proto3"; +option java_multiple_files = true; +package org.onap.ccsdk.apps.controllerblueprints.management.api; + +message BluePrintManagementInput { + CommonHeader commonHeader = 1; + string blueprintName = 2; + string blueprintVersion = 3; + FileChunk fileChunk = 4; +} + +message BluePrintManagementOutput { + CommonHeader commonHeader = 1; + Status status = 3; +} + +message FileChunk { + bytes chunk = 1; +} + +message CommonHeader { + string timestamp = 1; + string originatorId = 23; + string requestId = 3; + string subRequestId = 4; +} + +message Status { + string timestamp = 1; + int32 code = 2; + string message = 3; + string errorMessage = 4; +} + +service BluePrintManagementService { + rpc uploadBlueprint (BluePrintManagementInput) returns (BluePrintManagementOutput); + rpc removeBlueprint (BluePrintManagementInput) returns (BluePrintManagementOutput); +} diff --git a/components/model-catalog/proto-definition/proto/BluePrintProcessing.proto b/components/model-catalog/proto-definition/proto/BluePrintProcessing.proto new file mode 100644 index 00000000..8fa4a13f --- /dev/null +++ b/components/model-catalog/proto-definition/proto/BluePrintProcessing.proto @@ -0,0 +1,49 @@ +syntax = "proto3"; +import "google/protobuf/struct.proto"; +option java_multiple_files = true; +package org.onap.ccsdk.apps.controllerblueprints.processing.api; + +message ExecutionServiceInput { + CommonHeader commonHeader = 1; + ActionIdentifiers actionIdentifiers = 2; + google.protobuf.Struct payload = 3; +} + +message ExecutionServiceOutput { + CommonHeader commonHeader = 1; + ActionIdentifiers actionIdentifiers = 2; + Status status = 3; + google.protobuf.Struct payload = 4; +} + +message CommonHeader { + string timestamp = 1; + string originatorId = 23; + string requestId = 3; + string subRequestId = 4; + Flag flag = 5; +} + +message Flag { + bool isForce = 1; + int32 ttl = 2; +} + +message ActionIdentifiers { + string blueprintName = 1; + string blueprintVersion = 2; + string actionName = 3; + string mode = 4; +} + +message Status { + int32 code = 1; + string errorMessage = 2; + string message = 3; + string eventType = 4; + string timestamp = 5; +} + +service BluePrintProcessingService { + rpc process (ExecutionServiceInput) returns (stream ExecutionServiceOutput); +} |