Skip to content

Method: toString()

1: package de.fhdw.wtf.generator.java.generatorModel;
2:
3: import java.util.Collection;
4: import java.util.List;
5: import java.util.Vector;
6:
7: import de.fhdw.wtf.generator.java.visitor.GenOperationVisitorReturn;
8:
9: public final class GenJavaOperation extends GenOperation {
10:         
11:         private final GenOperationSignature signature;
12:         
13:         private GenJavaOperation(final String name, final List<GenParameter> parameters, final GenOperationState state) {
14:                 super(name, parameters, state);
15:                 this.signature = GenOperationSignature.create(this.getName(), this.getParameters());
16:         }
17:         
18:         public static GenJavaOperation create(final String name,
19:                         final List<GenParameter> parameters,
20:                         final GenOperationState state) {
21:                 return new GenJavaOperation(name, parameters, state);
22:         }
23:         
24:         public static GenJavaOperation create(final String name,
25:                         final GenVisibility visibility,
26:                         final List<GenParameter> params,
27:                         final Collection<GenException> exceptions,
28:                         final String method,
29:                         final GenType typ,
30:                         final Collection<GenOperationModifier> operationModifier,
31:                         final GenComment comment) {
32:                 return new GenJavaOperation(name, params, GenFullParsedOperationState.create(
33:                                 comment,
34:                                 exceptions,
35:                                 GenTypeReferenceByReference.create(typ),
36:                                 operationModifier,
37:                                 visibility,
38:                                 method));
39:         }
40:         
41:         public static GenJavaOperation createConstructor(final GenType container,
42:                         final GenVisibility visibility,
43:                         final List<GenParameter> params,
44:                         final Collection<GenException> exceptions,
45:                         final String method,
46:                         final GenComment comment) {
47:                 return new GenJavaOperation(container.getFullyQualifiedTypeName(), params, GenFullParsedOperationState.create(
48:                                 comment,
49:                                 exceptions,
50:                                 GenTypeReferenceByName.create(container.getFullyQualifiedTypeName()),
51:                                 new Vector<GenOperationModifier>(),
52:                                 visibility,
53:                                 method));
54:         }
55:         
56:         @Override
57:         public <T> T accept(final GenOperationVisitorReturn<T> visitor) {
58:                 return visitor.handleJavaOperation(this);
59:         }
60:         
61:         @Override
62:         public String toString() {
63:                 final StringBuffer result = new StringBuffer();
64:•                if (!this.getGenerics().isEmpty()) {
65:                         result.append('<');
66:•                        for (final GenType type : this.getGenerics()) {
67:                                 result.append(type.getName());
68:                                 result.append(',');
69:                         }
70:                         result.deleteCharAt(result.length() - 1);
71:                         result.append("> ");
72:                 }
73:                 result.append(this.signature);
74:                 return result.toString();
75:         }
76:         
77:         /**
78:          * Returns the signature (name and parameters) of this operation.
79:          *
80:          * @return - {@link GenOperationSignature}.
81:          */
82:         public GenOperationSignature getSignature() {
83:                 return this.signature;
84:                 
85:         }
86: }