Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.xtend/src/org/eclipse/internal/xtend/xtend/types/AdviceContext.java')
-rw-r--r--plugins/org.eclipse.xtend/src/org/eclipse/internal/xtend/xtend/types/AdviceContext.java54
1 files changed, 54 insertions, 0 deletions
diff --git a/plugins/org.eclipse.xtend/src/org/eclipse/internal/xtend/xtend/types/AdviceContext.java b/plugins/org.eclipse.xtend/src/org/eclipse/internal/xtend/xtend/types/AdviceContext.java
new file mode 100644
index 00000000..3cb8ed57
--- /dev/null
+++ b/plugins/org.eclipse.xtend/src/org/eclipse/internal/xtend/xtend/types/AdviceContext.java
@@ -0,0 +1,54 @@
+package org.eclipse.internal.xtend.xtend.types;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+import org.eclipse.internal.xtend.xtend.ast.Extension;
+import org.eclipse.xtend.expression.ExecutionContext;
+import org.eclipse.xtend.typesystem.Type;
+
+public class AdviceContext {
+
+ private final Extension ext;
+
+ private final ExecutionContext ctx;
+
+ private Object[] parameters;
+
+
+ public AdviceContext(final Extension ext, final ExecutionContext ctx, Object[] parameters2) {
+ super();
+ this.ext = ext;
+ this.ctx = ctx;
+ this.parameters = parameters2;
+ }
+
+ public String getName() {
+ return ext.getName();
+ }
+
+ public List<Type> getParamTypes() {
+ return ext.getParameterTypes();
+ }
+
+ public List<String> getParamNames() {
+ return ext.getParameterNames();
+ }
+ public List<Object> getParamValues() {
+ return new ArrayList<Object>(Arrays.asList(parameters));
+ }
+
+ public Object proceed() {
+ return ext.evaluate(parameters,ctx);
+ }
+
+ public Object proceed(final Object[] params) {
+ return ext.evaluate(params,ctx);
+ }
+
+ @Override
+ public String toString() {
+ return ext.toString();
+ }
+}

Back to the top