2 ============LICENSE_START=======================================================
4 ================================================================================
5 Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 ================================================================================
7 Copyright (C) 2017 Amdocs
8 =============================================================================
9 Licensed under the Apache License, Version 2.0 (the "License");
10 you may not use this file except in compliance with the License.
11 You may obtain a copy of the License at
13 http://www.apache.org/licenses/LICENSE-2.0
15 Unless required by applicable law or agreed to in writing, software
16 distributed under the License is distributed on an "AS IS" BASIS,
17 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 See the License for the specific language governing permissions and
19 limitations under the License.
21 ECOMP is a trademark and service mark of AT&T Intellectual Property.
22 ============LICENSE_END=========================================================
26 * NOTE: This file is auto-generated and should not be changed manually.
28 package ${meta.api\.package};
30 <#list service?keys as action>
31 <#assign outputType = service[action].post.responses["200"].schema.properties.output.$ref?keep_after_last("/")>
32 <#assign inputType = service[action].post.parameters[0].schema.properties.input.$ref?keep_after_last("/")>
33 import ${meta.model\.package}.${outputType};
34 import ${meta.model\.package}.${inputType};
36 import ${meta.exceptions\.package}.AppcClientException;
37 import ${meta.utils\.package}.RPC;
39 <#if model.info.description??>
41 * ${model.info.description}
45 public interface ${meta.interface\.classname} {
47 <#list service?keys as action>
48 <#assign returnType = service[action].post.responses["200"].schema.properties.output.$ref?keep_after_last("/")>
49 <#assign rpcName = service[action].post.operationId>
50 <#assign methodName = toJavaName(rpcName)>
51 <#assign methodInputType = service[action].post.parameters[0].schema.properties.input.$ref?keep_after_last("/")>
52 <#assign methodInputName = methodInputType?uncap_first>
53 <#assign description = service[action].post.description>
57 * @param ${methodInputName} - RPC input object
59 @RPC(name="${rpcName}", outputType=${returnType}.class)
60 ${returnType} ${methodName}(${methodInputType} ${methodInputName}) throws AppcClientException;
65 * @param ${methodInputName} - RPC input object
66 * @return listener - callback implementation
68 @RPC(name="${rpcName}", outputType=${returnType}.class)
69 void ${methodName}(${methodInputType} ${methodInputName}, ResponseHandler<${returnType}> listener) throws AppcClientException;