From 849da15d5b7ddc68e4c2b90b603fc8948d4b5e6d Mon Sep 17 00:00:00 2001 From: Andrew Gauld Date: Wed, 13 Nov 2019 18:09:32 +0000 Subject: Add acumos adapter project Signed-off-by: Andrew Gauld Issue-ID: DCAEGEN2-1860 Change-Id: Ib22fd2aa61fe7761bacf85e69540d11803c7acee Signed-off-by: Andrew Gauld --- .../models/example-model-listofm/example_model.py | 41 ++++++++++++++++++++++ .../models/example-model-listofm/metadata.json | 1 + .../models/example-model-listofm/model.proto | 39 ++++++++++++++++++++ 3 files changed, 81 insertions(+) create mode 100644 adapter/acumos/tests/fixtures/models/example-model-listofm/example_model.py create mode 100644 adapter/acumos/tests/fixtures/models/example-model-listofm/metadata.json create mode 100644 adapter/acumos/tests/fixtures/models/example-model-listofm/model.proto (limited to 'adapter/acumos/tests/fixtures/models/example-model-listofm') diff --git a/adapter/acumos/tests/fixtures/models/example-model-listofm/example_model.py b/adapter/acumos/tests/fixtures/models/example-model-listofm/example_model.py new file mode 100644 index 0000000..cff1acb --- /dev/null +++ b/adapter/acumos/tests/fixtures/models/example-model-listofm/example_model.py @@ -0,0 +1,41 @@ +# ============LICENSE_START==================================================== +# org.onap.dcae +# ============================================================================= +# Copyright (c) 2019 AT&T Intellectual Property. All rights reserved. +# ============================================================================= +# 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. +# ============LICENSE_END====================================================== + +from acumos.session import AcumosSession +from acumos.modeling import Model, List, NamedTuple + + +class Args(NamedTuple): + x: int + y: int + + +class ArgsList(NamedTuple): + args: List[Args] + + +def sum(args: ArgsList) -> List[int]: + return [arg.x + arg.y for arg in args] + + +if __name__ == '__main__': + '''Main''' + model = Model(sum=sum) + + session = AcumosSession() + session.dump(model, 'example-model', '.') diff --git a/adapter/acumos/tests/fixtures/models/example-model-listofm/metadata.json b/adapter/acumos/tests/fixtures/models/example-model-listofm/metadata.json new file mode 100644 index 0000000..e9df2bd --- /dev/null +++ b/adapter/acumos/tests/fixtures/models/example-model-listofm/metadata.json @@ -0,0 +1 @@ +{"schema": "acumos.schema.model:0.4.0", "runtime": {"name": "python", "encoding": "protobuf", "version": "3.6.8", "dependencies": {"pip": {"indexes": [], "requirements": [{"name": "dill", "version": "0.3.0"}, {"name": "acumos", "version": "0.8.0"}]}, "conda": {"channels": [], "requirements": []}}}, "name": "example-model", "methods": {"sum": {"input": "ArgsList", "output": "SumOut", "description": ""}}} \ No newline at end of file diff --git a/adapter/acumos/tests/fixtures/models/example-model-listofm/model.proto b/adapter/acumos/tests/fixtures/models/example-model-listofm/model.proto new file mode 100644 index 0000000..ba40893 --- /dev/null +++ b/adapter/acumos/tests/fixtures/models/example-model-listofm/model.proto @@ -0,0 +1,39 @@ +/*- + * ===============LICENSE_START================================================ + * org.onap.dcae + * ============================================================================ + * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. + * ============================================================================ + * This Acumos software file is distributed by AT&T and Tech Mahindra + * 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 + * + * This file 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. + * ===============LICENSE_END================================================== + */ + +syntax = "proto3"; +package QrPbKNxHnOMiIoWCyFplggLzzNUBisBm; + +service Model { + rpc sum (ArgsList) returns (SumOut); +} + +message ArgsList { + repeated Args args = 1; +} + +message Args { + int64 x = 1; + int64 y = 2; +} + +message SumOut { + repeated int64 value = 1; +} -- cgit 1.2.3-korg