001: /*
002: * Copyright 2005 JBoss Inc
003: *
004: * Licensed under the Apache License, Version 2.0 (the "License");
005: * you may not use this file except in compliance with the License.
006: * You may obtain a copy of the License at
007: *
008: * http://www.apache.org/licenses/LICENSE-2.0
009: *
010: * Unless required by applicable law or agreed to in writing, software
011: * distributed under the License is distributed on an "AS IS" BASIS,
012: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013: * See the License for the specific language governing permissions and
014: * limitations under the License.
015: */
016:
017: package org.drools.lang.descr;
018:
019: import java.util.Collections;
020: import java.util.List;
021:
022: /**
023: * A descr class for accumulate node
024: */
025: public class AccumulateDescr extends PatternSourceDescr implements
026: ConditionalElementDescr, PatternDestinationDescr {
027:
028: private static final long serialVersionUID = 400L;
029:
030: private PatternDescr inputPattern;
031: private String initCode;
032: private String actionCode;
033: private String reverseCode;
034: private String resultCode;
035: private String[] declarations;
036: private String className;
037: private boolean externalFunction = false;
038: private String functionIdentifier;
039: private String expression;
040:
041: public int getLine() {
042: return this .inputPattern.getLine();
043: }
044:
045: public String getClassName() {
046: return this .className;
047: }
048:
049: public void setClassName(final String classMethodName) {
050: this .className = classMethodName;
051: }
052:
053: public String[] getDeclarations() {
054: return this .declarations;
055: }
056:
057: public void setDeclarations(final String[] declarations) {
058: this .declarations = declarations;
059: }
060:
061: public String getActionCode() {
062: return this .actionCode;
063: }
064:
065: public void setActionCode(final String actionCode) {
066: this .actionCode = actionCode;
067: }
068:
069: public String getInitCode() {
070: return this .initCode;
071: }
072:
073: public void setInitCode(final String initCode) {
074: this .initCode = initCode;
075: }
076:
077: public String getResultCode() {
078: return this .resultCode;
079: }
080:
081: public void setResultCode(final String resultCode) {
082: this .resultCode = resultCode;
083: }
084:
085: public String toString() {
086: return "[Accumulate: input="
087: + this .inputPattern.getIdentifier() + "; objectType="
088: + this .inputPattern.getObjectType() + "]";
089: }
090:
091: public void addDescr(final BaseDescr patternDescr) {
092: throw new UnsupportedOperationException(
093: "Can't add descriptors to " + this .getClass().getName());
094: }
095:
096: public void insertBeforeLast(final Class clazz,
097: final BaseDescr baseDescr) {
098: throw new UnsupportedOperationException(
099: "Can't add descriptors to " + this .getClass().getName());
100: }
101:
102: public List getDescrs() {
103: // nothing to do
104: return Collections.EMPTY_LIST;
105: }
106:
107: public void addOrMerge(BaseDescr baseDescr) {
108: throw new UnsupportedOperationException(
109: "Can't add descriptors to " + this .getClass().getName());
110: }
111:
112: public String getReverseCode() {
113: return reverseCode;
114: }
115:
116: public void setReverseCode(String reverseCode) {
117: this .reverseCode = reverseCode;
118: }
119:
120: public boolean isExternalFunction() {
121: return externalFunction;
122: }
123:
124: public void setExternalFunction(boolean externalFunction) {
125: this .externalFunction = externalFunction;
126: }
127:
128: public String getExpression() {
129: return expression;
130: }
131:
132: public void setExpression(String expression) {
133: this .expression = expression;
134: }
135:
136: public String getFunctionIdentifier() {
137: return functionIdentifier;
138: }
139:
140: public void setFunctionIdentifier(String functionIdentifier) {
141: this .functionIdentifier = functionIdentifier;
142: }
143:
144: public PatternDescr getInputPattern() {
145: return this .inputPattern;
146: }
147:
148: public void setInputPattern(final PatternDescr inputPattern) {
149: this.inputPattern = inputPattern;
150: }
151:
152: }
|