You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by jo...@apache.org on 2011/08/12 13:00:51 UTC
svn commit: r1157047 [7/27] - in
/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide: ./ .settings/
META-INF/ icons/ schema/ src/ src/main/ src/main/java/ src/main/java/org/
src/main/java/org/apache/ src/main/java/org/apache/uima/
src/main/java/org/...
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/codeassist/TextMarkerSelectionParser.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/codeassist/TextMarkerSelectionParser.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEActionExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEActionExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEActionExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEActionExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+*/
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import java.util.List;
+
+import org.antlr.runtime.RecognitionException;
+import org.antlr.runtime.Token;
+import org.apache.uima.textmarker.ide.parser.ast.TextMarkerAction;
+import org.eclipse.dltk.ast.expressions.Expression;
+
+
+public abstract class AbstractIDEActionExtension implements IIDEActionExtension {
+
+ public TextMarkerAction createAction(Token type, List<Expression> args)
+ throws RecognitionException {
+ // TODO set boundaries
+ return new TextMarkerAction(0, 0, args, 0, "", 0, 0);
+ }
+
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEActionExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEActionExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEBooleanFunctionExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEBooleanFunctionExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEBooleanFunctionExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEBooleanFunctionExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import java.util.List;
+
+import org.antlr.runtime.RecognitionException;
+import org.antlr.runtime.Token;
+import org.apache.uima.textmarker.ide.parser.ast.TextMarkerExpression;
+import org.eclipse.dltk.ast.expressions.Expression;
+
+public abstract class AbstractIDEBooleanFunctionExtension implements IIDEBooleanFunctionExtension {
+
+ public TextMarkerExpression createBooleanFunction(Token type, List<Expression> args)
+ throws RecognitionException {
+ return new TextMarkerExpression(0, 0, args.get(0), 0);
+ }
+
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEBooleanFunctionExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEBooleanFunctionExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEConditionExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEConditionExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEConditionExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEConditionExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+*/
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import java.util.List;
+
+import org.antlr.runtime.RecognitionException;
+import org.antlr.runtime.Token;
+import org.apache.uima.textmarker.ide.parser.ast.TextMarkerCondition;
+import org.eclipse.dltk.ast.expressions.Expression;
+
+
+public abstract class AbstractIDEConditionExtension implements IIDEConditionExtension {
+
+ public TextMarkerCondition createCondition(Token type, List<Expression> args)
+ throws RecognitionException {
+ return new TextMarkerCondition(0, 0, args, 0, "", 0, 0);
+ }
+
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEConditionExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEConditionExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDENumberFunctionExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDENumberFunctionExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDENumberFunctionExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDENumberFunctionExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import java.util.List;
+
+import org.antlr.runtime.RecognitionException;
+import org.antlr.runtime.Token;
+import org.apache.uima.textmarker.ide.parser.ast.TextMarkerExpression;
+import org.eclipse.dltk.ast.expressions.Expression;
+
+public abstract class AbstractIDENumberFunctionExtension implements IIDENumberFunctionExtension {
+
+ public TextMarkerExpression createNumberFunction(Token type, List<Expression> args)
+ throws RecognitionException {
+ return new TextMarkerExpression(0, 0, args.get(0), 0);
+ }
+
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDENumberFunctionExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDENumberFunctionExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEStringFunctionExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEStringFunctionExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEStringFunctionExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEStringFunctionExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import java.util.List;
+
+import org.antlr.runtime.RecognitionException;
+import org.antlr.runtime.Token;
+import org.apache.uima.textmarker.ide.parser.ast.TextMarkerExpression;
+import org.eclipse.dltk.ast.expressions.Expression;
+
+public abstract class AbstractIDEStringFunctionExtension implements IIDEStringFunctionExtension {
+
+ public TextMarkerExpression createStringFunction(Token type, List<Expression> args)
+ throws RecognitionException {
+ return new TextMarkerExpression(0, 0, args.get(0), 0);
+ }
+
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEStringFunctionExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDEStringFunctionExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDETypeFunctionExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDETypeFunctionExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDETypeFunctionExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDETypeFunctionExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import java.util.List;
+
+import org.antlr.runtime.RecognitionException;
+import org.antlr.runtime.Token;
+import org.apache.uima.textmarker.ide.parser.ast.TextMarkerExpression;
+import org.eclipse.dltk.ast.expressions.Expression;
+
+public abstract class AbstractIDETypeFunctionExtension implements IIDETypeFunctionExtension {
+
+ public TextMarkerExpression createTypeFunction(Token type, List<Expression> args)
+ throws RecognitionException {
+ return new TextMarkerExpression(0, 0, args.get(0), 0);
+ }
+
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDETypeFunctionExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/AbstractIDETypeFunctionExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ICompletionExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ICompletionExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ICompletionExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ICompletionExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,47 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+*/
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import java.util.Set;
+
+import org.apache.uima.textmarker.ide.core.codeassist.CompletionOnKeywordArgumentOrFunctionArgument;
+import org.apache.uima.textmarker.ide.core.codeassist.CompletionOnKeywordOrFunction;
+import org.apache.uima.textmarker.ide.core.codeassist.TextMarkerCompletionEngine;
+import org.apache.uima.textmarker.ide.core.codeassist.TextMarkerCompletionParser;
+import org.eclipse.dltk.ast.ASTNode;
+import org.eclipse.dltk.ast.expressions.Expression;
+import org.eclipse.dltk.ast.statements.Statement;
+import org.eclipse.dltk.core.CompletionRequestor;
+
+
+public interface ICompletionExtension {
+ boolean visit(Expression s, TextMarkerCompletionParser parser, int position);
+
+ boolean visit(Statement s, TextMarkerCompletionParser parser, int position);
+
+ void completeOnKeywordOrFunction(CompletionOnKeywordOrFunction key, ASTNode astNodeParent,
+ TextMarkerCompletionEngine engine);
+
+ void completeOnKeywordArgumentsOne(String name,
+ CompletionOnKeywordArgumentOrFunctionArgument compl, Set methodNames, Statement st,
+ TextMarkerCompletionEngine tmCompletionEngine);
+
+ void setRequestor(CompletionRequestor requestor);
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ICompletionExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ICompletionExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEActionExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEActionExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEActionExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEActionExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+*/
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import java.util.List;
+
+import org.antlr.runtime.RecognitionException;
+import org.antlr.runtime.Token;
+import org.apache.uima.textmarker.ide.parser.ast.TextMarkerAction;
+import org.eclipse.dltk.ast.expressions.Expression;
+
+
+public interface IIDEActionExtension extends ITextMarkerExtension {
+
+ TextMarkerAction createAction(Token type, List<Expression> args) throws RecognitionException;
+
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEActionExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEActionExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEBooleanFunctionExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEBooleanFunctionExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEBooleanFunctionExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEBooleanFunctionExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import java.util.List;
+
+import org.antlr.runtime.RecognitionException;
+import org.antlr.runtime.Token;
+import org.apache.uima.textmarker.ide.parser.ast.TextMarkerExpression;
+import org.eclipse.dltk.ast.expressions.Expression;
+
+public interface IIDEBooleanFunctionExtension extends ITextMarkerExtension {
+
+ TextMarkerExpression createBooleanFunction(Token type, List<Expression> args)
+ throws RecognitionException;
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEBooleanFunctionExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEBooleanFunctionExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEConditionExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEConditionExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEConditionExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEConditionExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,35 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+*/
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import java.util.List;
+
+import org.antlr.runtime.RecognitionException;
+import org.antlr.runtime.Token;
+import org.apache.uima.textmarker.ide.parser.ast.TextMarkerCondition;
+import org.eclipse.dltk.ast.expressions.Expression;
+
+
+public interface IIDEConditionExtension extends ITextMarkerExtension {
+
+ TextMarkerCondition createCondition(Token type, List<Expression> args)
+ throws RecognitionException;
+
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEConditionExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEConditionExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDENumberFunctionExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDENumberFunctionExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDENumberFunctionExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDENumberFunctionExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import java.util.List;
+
+import org.antlr.runtime.RecognitionException;
+import org.antlr.runtime.Token;
+import org.apache.uima.textmarker.ide.parser.ast.TextMarkerExpression;
+import org.eclipse.dltk.ast.expressions.Expression;
+
+public interface IIDENumberFunctionExtension extends ITextMarkerExtension {
+
+ TextMarkerExpression createNumberFunction(Token type, List<Expression> args)
+ throws RecognitionException;
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDENumberFunctionExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDENumberFunctionExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEStringFunctionExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEStringFunctionExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEStringFunctionExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEStringFunctionExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import java.util.List;
+
+import org.antlr.runtime.RecognitionException;
+import org.antlr.runtime.Token;
+import org.apache.uima.textmarker.ide.parser.ast.TextMarkerExpression;
+import org.eclipse.dltk.ast.expressions.Expression;
+
+public interface IIDEStringFunctionExtension extends ITextMarkerExtension {
+
+ TextMarkerExpression createStringFunction(Token type, List<Expression> args)
+ throws RecognitionException;
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEStringFunctionExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDEStringFunctionExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDETypeFunctionExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDETypeFunctionExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDETypeFunctionExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDETypeFunctionExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import java.util.List;
+
+import org.antlr.runtime.RecognitionException;
+import org.antlr.runtime.Token;
+import org.apache.uima.textmarker.ide.parser.ast.TextMarkerExpression;
+import org.eclipse.dltk.ast.expressions.Expression;
+
+public interface IIDETypeFunctionExtension extends ITextMarkerExtension {
+
+ TextMarkerExpression createTypeFunction(Token type, List<Expression> args)
+ throws RecognitionException;
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDETypeFunctionExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IIDETypeFunctionExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IMatchLocatorExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IMatchLocatorExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IMatchLocatorExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IMatchLocatorExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+*/
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import org.eclipse.dltk.ast.ASTNode;
+import org.eclipse.dltk.core.search.matching.PatternLocator;
+import org.eclipse.dltk.internal.core.search.matching.MatchingNodeSet;
+
+public interface IMatchLocatorExtension {
+ // This is match locator feature extension
+ public void visitGeneral(ASTNode node, PatternLocator locator, MatchingNodeSet nodeSet);
+
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IMatchLocatorExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IMatchLocatorExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IMixinBuildVisitorExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IMixinBuildVisitorExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IMixinBuildVisitorExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IMixinBuildVisitorExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+*/
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+public interface IMixinBuildVisitorExtension {
+ //
+ // /**
+ // * If method return true, then other checks will not be provided and
+ // * original visit will return true
+ // */
+ // boolean visit(MethodDeclaration s, TextMarkerMixinBuildVisitor original);
+ //
+ // /**
+ // * If method return true, then other checks will not be provided and
+ // * original visit will return true
+ // */
+ // boolean visit(TypeDeclaration s, TextMarkerMixinBuildVisitor
+ // tmMixinBuildVisitor);
+ //
+ // /**
+ // * If method return true, then other checks will not be provided and
+ // * original visit will return <b>false</b>
+ // */
+ // boolean visit(Statement s, TextMarkerMixinBuildVisitor
+ // tmMixinBuildVisitor);
+
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IMixinBuildVisitorExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/IMixinBuildVisitorExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ISelectionExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ISelectionExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ISelectionExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ISelectionExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+*/
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import org.apache.uima.textmarker.ide.core.codeassist.SelectionOnKeywordOrFunction;
+import org.apache.uima.textmarker.ide.core.codeassist.TextMarkerSelectionEngine;
+import org.eclipse.dltk.ast.ASTNode;
+
+
+public interface ISelectionExtension {
+
+ void selectionOnKeywordOrFunction(SelectionOnKeywordOrFunction key,
+ TextMarkerSelectionEngine tmSelectionEngine);
+
+ void selectionOnAST(ASTNode node, TextMarkerSelectionEngine tmSelectionEngine);
+
+ void selectionOnNode(ASTNode node, int position, TextMarkerSelectionEngine tmSelectionEngine);
+
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ISelectionExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ISelectionExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ISourceElementRequestVisitorExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ISourceElementRequestVisitorExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ISourceElementRequestVisitorExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ISourceElementRequestVisitorExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+*/
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import org.eclipse.dltk.ast.declarations.Declaration;
+
+public interface ISourceElementRequestVisitorExtension {
+
+ int getModifiers(Declaration s);
+
+ // boolean visit(Statement statement, TextMarkerSourceElementRequestVisitor
+ // original);
+ //
+ // boolean extendedExitRequired(MethodDeclaration method,
+ // TextMarkerSourceElementRequestVisitor tmSourceElementRequestVisitor);
+ //
+ // ExitFromType getExitExtended(MethodDeclaration method,
+ // TextMarkerSourceElementRequestVisitor tmSourceElementRequestVisitor);
+ //
+ // ExitFromType processField(FieldDeclaration decl,
+ // TextMarkerSourceElementRequestVisitor tmSourceElementRequestVisitor);
+
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ISourceElementRequestVisitorExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ISourceElementRequestVisitorExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ITextMarkerExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ITextMarkerExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ITextMarkerExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ITextMarkerExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,26 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+*/
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+public interface ITextMarkerExtension {
+
+ String[] getKnownExtensions();
+
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ITextMarkerExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ITextMarkerExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ITextMarkerLanguageExtension.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ITextMarkerLanguageExtension.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ITextMarkerLanguageExtension.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ITextMarkerLanguageExtension.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+*/
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+public interface ITextMarkerLanguageExtension {
+ String getName();
+
+ ISourceElementRequestVisitorExtension createSourceElementRequestVisitorExtension();
+
+ IMixinBuildVisitorExtension createMixinBuildVisitorExtension();
+
+ IMatchLocatorExtension createMatchLocatorExtension();
+
+ ICompletionExtension createCompletionExtension();
+
+ ISelectionExtension createSelectionExtension();
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ITextMarkerLanguageExtension.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/ITextMarkerLanguageExtension.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/TextMarkerExternalFactory.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/TextMarkerExternalFactory.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/TextMarkerExternalFactory.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/TextMarkerExternalFactory.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,189 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.uima.textmarker.ide.core.extensions;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.antlr.runtime.NoViableAltException;
+import org.antlr.runtime.RecognitionException;
+import org.antlr.runtime.Token;
+import org.apache.uima.textmarker.ide.core.TextMarkerExtensionManager;
+import org.apache.uima.textmarker.ide.parser.ast.TextMarkerAction;
+import org.apache.uima.textmarker.ide.parser.ast.TextMarkerCondition;
+import org.apache.uima.textmarker.ide.parser.ast.TextMarkerExpression;
+import org.eclipse.dltk.ast.expressions.Expression;
+
+public class TextMarkerExternalFactory {
+
+ private Map<String, IIDEConditionExtension> conditionExtensions;
+
+ private Map<String, IIDEActionExtension> actionExtensions;
+
+ private Map<String, IIDENumberFunctionExtension> numberFunctionExtensions;
+
+ private Map<String, IIDEBooleanFunctionExtension> booleanFunctionExtensions;
+
+ private Map<String, IIDEStringFunctionExtension> stringFunctionExtensions;
+
+ private Map<String, IIDETypeFunctionExtension> typeFunctionExtensions;
+
+ public TextMarkerExternalFactory() {
+ super();
+ conditionExtensions = new HashMap<String, IIDEConditionExtension>();
+ actionExtensions = new HashMap<String, IIDEActionExtension>();
+ numberFunctionExtensions = new HashMap<String, IIDENumberFunctionExtension>();
+ booleanFunctionExtensions = new HashMap<String, IIDEBooleanFunctionExtension>();
+ stringFunctionExtensions = new HashMap<String, IIDEStringFunctionExtension>();
+ typeFunctionExtensions = new HashMap<String, IIDETypeFunctionExtension>();
+ IIDEConditionExtension[] cextensions = TextMarkerExtensionManager.getDefault()
+ .getIDEConditionExtensions();
+ for (IIDEConditionExtension each : cextensions) {
+ String[] knownExtensions = each.getKnownExtensions();
+ for (String string : knownExtensions) {
+ conditionExtensions.put(string, each);
+ }
+ }
+ IIDEActionExtension[] aextensions = TextMarkerExtensionManager.getDefault()
+ .getIDEActionExtensions();
+ for (IIDEActionExtension each : aextensions) {
+ String[] knownExtensions = each.getKnownExtensions();
+ for (String string : knownExtensions) {
+ actionExtensions.put(string, each);
+ }
+ }
+ IIDENumberFunctionExtension[] nfextensions = TextMarkerExtensionManager.getDefault()
+ .getIDENumberFunctionExtensions();
+ for (IIDENumberFunctionExtension each : nfextensions) {
+ String[] knownExtensions = each.getKnownExtensions();
+ for (String string : knownExtensions) {
+ numberFunctionExtensions.put(string, each);
+ }
+ }
+ IIDEBooleanFunctionExtension[] bfextensions = TextMarkerExtensionManager.getDefault()
+ .getIDEBooleanFunctionExtensions();
+ for (IIDEBooleanFunctionExtension each : bfextensions) {
+ String[] knownExtensions = each.getKnownExtensions();
+ for (String string : knownExtensions) {
+ booleanFunctionExtensions.put(string, each);
+ }
+ }
+ IIDEStringFunctionExtension[] sfextensions = TextMarkerExtensionManager.getDefault()
+ .getIDEStringFunctionExtensions();
+ for (IIDEStringFunctionExtension each : sfextensions) {
+ String[] knownExtensions = each.getKnownExtensions();
+ for (String string : knownExtensions) {
+ stringFunctionExtensions.put(string, each);
+ }
+ }
+ IIDETypeFunctionExtension[] tfextensions = TextMarkerExtensionManager.getDefault()
+ .getIDETypeFunctionExtensions();
+ for (IIDETypeFunctionExtension each : tfextensions) {
+ String[] knownExtensions = each.getKnownExtensions();
+ for (String string : knownExtensions) {
+ typeFunctionExtensions.put(string, each);
+ }
+ }
+
+ }
+
+ public TextMarkerCondition createExternalCondition(Token id, List<Expression> args)
+ throws RecognitionException {
+ String name = id.getText();
+ IIDEConditionExtension extension = conditionExtensions.get(name);
+ if (extension != null) {
+ return extension.createCondition(id, args);
+ }
+ throw new NoViableAltException();
+ }
+
+ public TextMarkerAction createExternalAction(Token id, List<Expression> args)
+ throws RecognitionException {
+ String name = id.getText();
+ IIDEActionExtension extension = actionExtensions.get(name);
+ if (extension != null) {
+ return extension.createAction(id, args);
+ }
+ throw new NoViableAltException("Unknown action : " + name, id.getType(), id.getType(),
+ id.getInputStream());
+ }
+
+ public TextMarkerExpression createExternalNumberFunction(Token id, List<Expression> args)
+ throws RecognitionException {
+ String name = id.getText();
+ IIDENumberFunctionExtension extension = numberFunctionExtensions.get(name);
+ if (extension != null) {
+ return extension.createNumberFunction(id, args);
+ }
+ throw new NoViableAltException("Unknown number function : " + name, id.getType(), id.getType(),
+ id.getInputStream());
+ }
+
+ public TextMarkerExpression createExternalBooleanFunction(Token id, List<Expression> args)
+ throws RecognitionException {
+ String name = id.getText();
+ IIDEBooleanFunctionExtension extension = booleanFunctionExtensions.get(name);
+ if (extension != null) {
+ return extension.createBooleanFunction(id, args);
+ }
+ throw new NoViableAltException("Unknown number function : " + name, id.getType(), id.getType(),
+ id.getInputStream());
+ }
+
+ public TextMarkerExpression createExternalStringFunction(Token id, List<Expression> args)
+ throws RecognitionException {
+ String name = id.getText();
+ IIDEStringFunctionExtension extension = stringFunctionExtensions.get(name);
+ if (extension != null) {
+ return extension.createStringFunction(id, args);
+ }
+ throw new NoViableAltException("Unknown number function : " + name, id.getType(), id.getType(),
+ id.getInputStream());
+ }
+
+ public TextMarkerExpression createExternalTypeFunction(Token id, List<Expression> args)
+ throws RecognitionException {
+ String name = id.getText();
+ IIDETypeFunctionExtension extension = typeFunctionExtensions.get(name);
+ if (extension != null) {
+ return extension.createTypeFunction(id, args);
+ }
+ throw new NoViableAltException("Unknown number function : " + name, id.getType(), id.getType(),
+ id.getInputStream());
+ }
+
+ public void addExtension(String id, ITextMarkerExtension extension) {
+ if (extension instanceof IIDEActionExtension) {
+ addActionExtension(id, (IIDEActionExtension) extension);
+ } else if (extension instanceof IIDEConditionExtension) {
+ addConditionExtension(id, (IIDEConditionExtension) extension);
+ }
+ }
+
+ public void addConditionExtension(String id, IIDEConditionExtension extension) {
+ conditionExtensions.put(id, extension);
+ }
+
+ public void addActionExtension(String id, IIDEActionExtension extension) {
+ actionExtensions.put(id, extension);
+ }
+
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/TextMarkerExternalFactory.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/extensions/TextMarkerExternalFactory.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/packages/DLTKTextMarkerHelper.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/packages/DLTKTextMarkerHelper.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/packages/DLTKTextMarkerHelper.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/packages/DLTKTextMarkerHelper.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,415 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.uima.textmarker.ide.core.packages;
+
+import java.io.BufferedReader;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+
+import org.apache.uima.textmarker.ide.TextMarkerIdePlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.dltk.core.DLTKCore;
+import org.eclipse.dltk.core.environment.IDeployment;
+import org.eclipse.dltk.core.environment.IExecutionEnvironment;
+import org.eclipse.dltk.core.environment.IFileHandle;
+import org.eclipse.dltk.launching.EnvironmentVariable;
+import org.eclipse.dltk.launching.IInterpreterInstall;
+import org.eclipse.dltk.launching.InterpreterConfig;
+import org.eclipse.dltk.launching.ScriptLaunchUtil;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import org.xml.sax.SAXException;
+import org.xml.sax.helpers.DefaultHandler;
+
+public class DLTKTextMarkerHelper {
+
+ private static final String DLTK_TM = "scripts/dltk.tm"; //$NON-NLS-1$
+
+ public static List getScriptOutput(InputStream stream) {
+ final List elements = new ArrayList();
+ final BufferedReader input = new BufferedReader(new InputStreamReader(stream));
+ Thread t = new Thread(new Runnable() {
+ public void run() {
+ try {
+ while (true) {
+ String line;
+ line = input.readLine();
+ if (line == null) {
+ break;
+ }
+ elements.add(line);
+ }
+ } catch (IOException e) {
+ if (DLTKCore.DEBUG) {
+ e.printStackTrace();
+ }
+ }
+ }
+ });
+ t.start();
+ try {
+ t.join(50000);// No more then 50 seconds
+ } catch (InterruptedException e) {
+ if (DLTKCore.DEBUG) {
+ e.printStackTrace();
+ }
+ }
+ return elements;
+ }
+
+ private static List deployExecute(IExecutionEnvironment exeEnv, String installLocation,
+ String[] arguments, EnvironmentVariable[] env) {
+ IDeployment deployment = exeEnv.createDeployment();
+ IFileHandle script = deploy(deployment);
+ if (script == null) {
+ return null;
+ }
+
+ IFileHandle workingDir = script.getParent();
+ InterpreterConfig config = ScriptLaunchUtil.createInterpreterConfig(exeEnv, script, workingDir,
+ env);
+ // For wish
+ config.removeEnvVar("DISPLAY"); //$NON-NLS-1$
+
+ if (arguments != null) {
+ config.addScriptArgs(arguments);
+ }
+
+ Process process = null;
+ try {
+ process = ScriptLaunchUtil.runScriptWithInterpreter(exeEnv, installLocation, config);
+ } catch (CoreException e) {
+ if (DLTKCore.DEBUG) {
+ e.printStackTrace();
+ }
+ }
+ if (process == null) {
+ return new ArrayList();
+ }
+ List output = getScriptOutput(process.getInputStream());
+ getScriptOutput(process.getErrorStream());
+ process.destroy();
+ deployment.dispose();
+ return output;
+ }
+
+ private static IFileHandle deploy(IDeployment deployment) {
+ IFileHandle script;
+ try {
+ IPath path = deployment.add(TextMarkerIdePlugin.getDefault().getBundle(), DLTK_TM);
+ script = deployment.getFile(path);
+ } catch (IOException e) {
+ if (DLTKCore.DEBUG) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+ return script;
+ }
+
+ public static String[] getDefaultPath(IFileHandle installLocation,
+ EnvironmentVariable[] environment) {
+ // Process process = deployExecute(installLocation.getAbsolutePath(),
+ // new String[] { "get-paths" }, environment);
+ // List content = getScriptOutput(process);
+ // String[] autoPath = getAutoPath(content);
+ // for (int i = 0; i < autoPath.length; i++) {
+ // Path p = new Path(autoPath[i]);
+ // if (p.lastSegment().startsWith("tcl8.")) {
+ // return new String[] { autoPath[i] };
+ // }
+ // }
+ // process.destroy();
+ return new String[0];
+ // return autoPath;
+ }
+
+ public static TextMarkerPackage[] getSrcs(IExecutionEnvironment exeEnv,
+ IFileHandle installLocation, EnvironmentVariable[] environment, String packageName) {
+ IDeployment deployment = exeEnv.createDeployment();
+ IFileHandle script = deploy(deployment);
+ if (script == null) {
+ return null;
+ }
+
+ IFileHandle workingDir = script.getParent();
+ InterpreterConfig config = ScriptLaunchUtil.createInterpreterConfig(exeEnv, script, workingDir,
+ environment);
+ String names = packageName;
+ ByteArrayInputStream bais = new ByteArrayInputStream(names.getBytes());
+ IPath packagesPath = null;
+ try {
+ packagesPath = deployment.add(bais, "packages.txt"); //$NON-NLS-1$
+ } catch (IOException e1) {
+ if (DLTKCore.DEBUG) {
+ e1.printStackTrace();
+ }
+ return null;
+ }
+ IFileHandle file = deployment.getFile(packagesPath);
+ // For wish
+ config.removeEnvVar("DISPLAY"); //$NON-NLS-1$
+ String[] arguments = new String[] { "get-srcs", "-fpkgs", //$NON-NLS-1$ //$NON-NLS-2$
+ file.toOSString() };
+
+ config.addScriptArgs(arguments);
+
+ Process process = null;
+ try {
+ process = ScriptLaunchUtil.runScriptWithInterpreter(exeEnv, installLocation.toOSString(),
+ config);
+ } catch (CoreException e) {
+ if (DLTKCore.DEBUG) {
+ e.printStackTrace();
+ }
+ }
+ if (process == null) {
+ return null;
+ }
+ List output = getScriptOutput(process.getInputStream());
+ getScriptOutput(process.getErrorStream());
+ process.destroy();
+ deployment.dispose();
+ return getPackagePath(output);
+ }
+
+ private static boolean isElementName(Node nde, String name) {
+ if (nde != null) {
+ if (nde.getNodeType() == Node.ELEMENT_NODE) {
+ if (name.equalsIgnoreCase(nde.getNodeName())) {
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+
+ private static String[] getAutoPath(List content) {
+ String text = getXMLContent(content);
+ Document document = getDocument(text);
+
+ Set paths = new HashSet();
+ if (document != null) {
+ Element element = document.getDocumentElement();
+ NodeList childNodes = element.getChildNodes();
+ int len = childNodes.getLength();
+ for (int i = 0; i < len; i++) {
+ Node nde = childNodes.item(i);
+ if (isElementName(nde, "path")) { //$NON-NLS-1$
+ Element el = (Element) nde;
+ String path = el.getAttribute("name"); //$NON-NLS-1$
+ if (path.length() > 0) {
+ paths.add(path);
+ }
+ }
+ }
+ }
+ return (String[]) paths.toArray(new String[paths.size()]);
+ }
+
+ public static class TextMarkerPackage {
+ private String name;
+
+ private Set paths = new HashSet();
+
+ private Set dependencies = new HashSet();
+
+ public TextMarkerPackage(String name) {
+ this.name = name;
+ }
+
+ @Override
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + ((name == null) ? 0 : name.hashCode());
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj)
+ return true;
+ if (obj == null)
+ return false;
+ if (getClass() != obj.getClass())
+ return false;
+ TextMarkerPackage other = (TextMarkerPackage) obj;
+ if (name == null) {
+ if (other.name != null)
+ return false;
+ } else if (!name.equals(other.name))
+ return false;
+ return true;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public Set getPaths() {
+ return paths;
+ }
+
+ public void setPaths(Set paths) {
+ this.paths = paths;
+ }
+
+ public Set getDependencies() {
+ return dependencies;
+ }
+
+ public void setDependencies(Set dependencies) {
+ this.dependencies = dependencies;
+ }
+
+ @Override
+ public String toString() {
+ StringBuffer sb = new StringBuffer(128);
+ sb.append("TextMarkerPackage"); //$NON-NLS-1$
+ sb.append('{');
+ sb.append("name=").append(name); //$NON-NLS-1$
+ sb.append(' ');
+ sb.append("paths=").append(paths); //$NON-NLS-1$
+ sb.append(' ');
+ sb.append("dependencies=").append(dependencies); //$NON-NLS-1$
+ sb.append('}');
+ return sb.toString();
+ }
+ };
+
+ public static TextMarkerPackage[] getPackagePath(List content) {
+ String text = getXMLContent(content);
+ Document document = getDocument(text);
+
+ Map packages = new HashMap();
+ if (document != null) {
+ Element element = document.getDocumentElement();
+ NodeList childNodes = element.getChildNodes();
+ int len = childNodes.getLength();
+ for (int i = 0; i < len; i++) {
+ Node nde = childNodes.item(i);
+ if (isElementName(nde, "path")) { //$NON-NLS-1$
+ Element el = (Element) nde;
+ NodeList elChilds = el.getChildNodes();
+ for (int j = 0; j < elChilds.getLength(); j++) {
+ Node pkgNde = elChilds.item(j);
+ if (isElementName(pkgNde, "package")) { //$NON-NLS-1$
+ populatePackage(packages, pkgNde);
+ }
+ }
+ }
+ }
+ }
+ return (TextMarkerPackage[]) packages.values().toArray(new TextMarkerPackage[packages.size()]);
+ }
+
+ private static void populatePackage(Map packages, Node pkgNde) {
+ Element pkg = (Element) pkgNde;
+ String pkgName = pkg.getAttribute("name"); //$NON-NLS-1$
+ TextMarkerPackage tclPackage = new TextMarkerPackage(pkgName);
+ if (packages.containsKey(tclPackage)) {
+ tclPackage = (TextMarkerPackage) packages.get(tclPackage);
+ } else {
+ packages.put(tclPackage, tclPackage);
+ }
+ NodeList childs = pkg.getChildNodes();
+ for (int i = 0; i < childs.getLength(); i++) {
+ Node nde = childs.item(i);
+ if (isElementName(nde, "source")) { //$NON-NLS-1$
+ Element el = (Element) nde;
+ String name = el.getAttribute("name"); //$NON-NLS-1$
+ IPath path = new Path(name).removeLastSegments(1);
+ tclPackage.getPaths().add(path);
+ } else if (isElementName(nde, "require")) { //$NON-NLS-1$
+ Element el = (Element) nde;
+ String name = el.getAttribute("name"); //$NON-NLS-1$
+ tclPackage.getDependencies().add(name);
+ }
+ }
+ }
+
+ private static Document getDocument(String text) {
+ try {
+ DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder();
+ parser.setErrorHandler(new DefaultHandler());
+ Document document = parser.parse(new ByteArrayInputStream(text.getBytes()));
+ return document;
+ } catch (IOException e) {
+
+ } catch (ParserConfigurationException e) {
+ if (DLTKCore.DEBUG) {
+ e.printStackTrace();
+ }
+ } catch (SAXException e) {
+ if (DLTKCore.DEBUG) {
+ e.printStackTrace();
+ }
+ }
+ return null;
+ }
+
+ private static String getXMLContent(List content) {
+ StringBuffer newList = new StringBuffer();
+ if (content != null) {
+ for (Iterator iterator = content.iterator(); iterator.hasNext();) {
+ String line = (String) iterator.next();
+ if (line.trim().startsWith("<")) { //$NON-NLS-1$
+ newList.append(line).append("\n"); //$NON-NLS-1$
+ }
+ }
+ }
+ return newList.toString();
+ }
+
+ public static Set getPackages(IInterpreterInstall install) {
+ IExecutionEnvironment exeEnv = install.getExecEnvironment();
+ List content = deployExecute(exeEnv, install.getInstallLocation().toOSString(),
+ new String[] { "get-pkgs" }, install //$NON-NLS-1$
+ .getEnvironmentVariables());
+ Set packages = new HashSet();
+ TextMarkerPackage[] packagePath = getPackagePath(content);
+ for (int i = 0; i < packagePath.length; i++) {
+ packages.add(packagePath[i].getName());
+ }
+ return packages;
+ }
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/packages/DLTKTextMarkerHelper.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/packages/DLTKTextMarkerHelper.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/packages/Messages.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/packages/Messages.java?rev=1157047&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/packages/Messages.java (added)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/packages/Messages.java Fri Aug 12 11:00:38 2011
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.uima.textmarker.ide.core.packages;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.apache.uima.textmarker.ide.core.packages.messages"; //$NON-NLS-1$
+
+ public static String TextMarkerCheckBuilder_interpreterNotFound;
+
+ public static String TextMarkerCheckBuilder_processing;
+
+ public static String TextMarkerCheckBuilder_retrievePackages;
+
+ public static String TextMarkerCheckBuilder_unknownPackage;
+
+ public static String TextMarkerCheckBuilder_unresolvedDependencies;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/packages/Messages.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/packages/Messages.java
------------------------------------------------------------------------------
svn:mime-type = text/plain