a98cf6b2237edd9580ef0ae84a0dbdfbf283d74a
[ccsdk/sli/core.git] / sli / common / src / main / java / org / openecomp / sdnc / sli / SvcLogicFunctionCall.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * openECOMP : SDN-C
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights
6  *                                              reserved.
7  * ================================================================================
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  * 
12  *      http://www.apache.org/licenses/LICENSE-2.0
13  * 
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  * ============LICENSE_END=========================================================
20  */
21
22 package org.openecomp.sdnc.sli;
23
24 public class SvcLogicFunctionCall extends SvcLogicExpression {
25         
26         private String functionName;
27         
28         public SvcLogicFunctionCall(String functionName)
29         {
30                 this.functionName = functionName;
31         }
32
33         public String getFunctionName() {
34                 return functionName;
35         }
36
37         public void setFunctionName(String functionName) {
38                 this.functionName = functionName;
39         }
40         
41         public String toString()
42         {
43                 StringBuffer sbuff = new StringBuffer();
44                 
45                 sbuff.append(functionName);
46                 sbuff.append("(");
47                 boolean needComma = false;
48                 for (SvcLogicExpression operand: getOperands())
49                 {
50                         if (needComma)
51                         {
52                                 sbuff.append(",");
53                         }
54                         else
55                         {
56                                 needComma = true;
57                         }
58                         sbuff.append(operand.toString());
59                         
60                 }
61                 sbuff.append(")");
62                 return(sbuff.toString());
63         }
64         
65         public String asParsedExpr()
66         {
67                 StringBuffer sbuff = new StringBuffer();
68                 
69                 sbuff.append("(");
70                 sbuff.append(functionName);
71                 for (SvcLogicExpression operand: getOperands())
72                 {
73                         sbuff.append(" ");
74                         sbuff.append(operand.asParsedExpr());
75                 }
76                 sbuff.append(")");
77                 return(sbuff.toString());
78         }
79
80 }