JBoss Tools SVN: r33031 - trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb.
by jbosstools-commits@lists.jboss.org
Author: dazarov
Date: 2011-07-18 19:24:31 -0400 (Mon, 18 Jul 2011)
New Revision: 33031
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/PageContextFactory.java
Log:
https://issues.jboss.org/browse/JBIDE-9307
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/PageContextFactory.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/PageContextFactory.java 2011-07-18 22:59:07 UTC (rev 33030)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/PageContextFactory.java 2011-07-18 23:24:31 UTC (rev 33031)
@@ -563,47 +563,49 @@
private void fillElReferencesForNode(IDocument document, IDOMNode node, XmlContextImpl context) {
if(Node.ELEMENT_NODE == node.getNodeType() || Node.TEXT_NODE == node.getNodeType()) {
IStructuredDocumentRegion regionNode = node.getFirstStructuredDocumentRegion();
- if (regionNode == null)
- return;
- ITextRegionList regions = regionNode.getRegions();
- for(int i=0; i<regions.size(); i++) {
- ITextRegion region = regions.get(i);
- if(region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE || region.getType() == DOMRegionContext.XML_CONTENT) {
- String text = regionNode.getFullText(region);
- if(text.indexOf("{")>-1) { //$NON-NLS-1$
- int offset = regionNode.getStartOffset() + region.getStart();
- int startEl = text.indexOf("#{"); //$NON-NLS-1$
- if(startEl==-1) {
- startEl = text.indexOf("${"); //$NON-NLS-1$
- }
- if(startEl>-1) {
- ELParser parser = ELParserUtil.getJbossFactory().createParser();
- ELModel model = parser.parse(text);
- List<ELInstance> is = model.getInstances();
-
- ELReference elReference = new KbELReference();
- elReference.setResource(context.getResource());
- elReference.setEl(is);
- elReference.setLength(text.length());
- elReference.setStartPosition(offset);
- try {
- if(Node.TEXT_NODE == node.getNodeType()) {
- if(is.size()==1) {
- elReference.setLineNumber(document.getLineOfOffset(elReference.getStartPossitionOfFirstEL()) + 1);
+ while (regionNode != null){
+ //return;
+ ITextRegionList regions = regionNode.getRegions();
+ for(int i=0; i<regions.size(); i++) {
+ ITextRegion region = regions.get(i);
+ if(region.getType() == DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE || region.getType() == DOMRegionContext.XML_CONTENT) {
+ String text = regionNode.getFullText(region);
+ if(text.indexOf("{")>-1) { //$NON-NLS-1$
+ int offset = regionNode.getStartOffset() + region.getStart();
+ int startEl = text.indexOf("#{"); //$NON-NLS-1$
+ if(startEl==-1) {
+ startEl = text.indexOf("${"); //$NON-NLS-1$
+ }
+ if(startEl>-1) {
+ ELParser parser = ELParserUtil.getJbossFactory().createParser();
+ ELModel model = parser.parse(text);
+ List<ELInstance> is = model.getInstances();
+
+ ELReference elReference = new KbELReference();
+ elReference.setResource(context.getResource());
+ elReference.setEl(is);
+ elReference.setLength(text.length());
+ elReference.setStartPosition(offset);
+ try {
+ if(Node.TEXT_NODE == node.getNodeType()) {
+ if(is.size()==1) {
+ elReference.setLineNumber(document.getLineOfOffset(elReference.getStartPossitionOfFirstEL()) + 1);
+ }
+ } else {
+ elReference.setLineNumber(document.getLineOfOffset(offset) + 1);
}
- } else {
- elReference.setLineNumber(document.getLineOfOffset(offset) + 1);
+ } catch (BadLocationException e) {
+ WebKbPlugin.getDefault().logError(e);
}
- } catch (BadLocationException e) {
- WebKbPlugin.getDefault().logError(e);
+
+ elReference.setSyntaxErrors(model.getSyntaxErrors());
+
+ context.addELReference(elReference);
}
-
- elReference.setSyntaxErrors(model.getSyntaxErrors());
-
- context.addELReference(elReference);
}
}
}
+ regionNode = regionNode.getNext();
}
}
}
14 years, 9 months
JBoss Tools SVN: r33030 - in trunk: jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/validation and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: akazakov
Date: 2011-07-18 18:59:07 -0400 (Mon, 18 Jul 2011)
New Revision: 33030
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/web/validation/JSFELValidationDelegate.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/validation/ELValidator.java
Log:
https://issues.jboss.org/browse/JBIDE-5045
Modified: trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/web/validation/JSFELValidationDelegate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/web/validation/JSFELValidationDelegate.java 2011-07-18 20:08:22 UTC (rev 33029)
+++ trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/web/validation/JSFELValidationDelegate.java 2011-07-18 22:59:07 UTC (rev 33030)
@@ -11,9 +11,6 @@
package org.jboss.tools.jsf.web.validation;
import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.jboss.tools.jsf.JSFModelPlugin;
-import org.jboss.tools.jsf.project.JSFNature;
import org.jboss.tools.jst.web.kb.internal.KbProject;
import org.jboss.tools.jst.web.kb.internal.validation.KBValidator;
import org.jboss.tools.jst.web.kb.validation.IELValidationDelegate;
@@ -36,12 +33,7 @@
* @see org.jboss.tools.jst.web.kb.validation.IELValidationDelegate#shouldValidate(org.eclipse.core.resources.IProject)
*/
public boolean shouldValidate(IProject project) {
- try {
- return project!=null && project.isAccessible() && project.hasNature(JSFNature.NATURE_ID) && KbProject.checkKBBuilderInstalled(project);
- } catch (CoreException e) {
- JSFModelPlugin.getDefault().logError(e);
- }
- return false;
+ return project!=null && project.isAccessible() && KbProject.checkKBBuilderInstalled(project);
}
public String getID() {
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/validation/ELValidator.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/validation/ELValidator.java 2011-07-18 20:08:22 UTC (rev 33029)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/validation/ELValidator.java 2011-07-18 22:59:07 UTC (rev 33030)
@@ -447,6 +447,7 @@
if(delegate.shouldValidate(project)) {
IValidatingProjectTree tree = delegate.getValidatingProjects(project);
if(tree.getAllProjects().size()>max) {
+ max = tree.getAllProjects().size();
result = tree;
}
}
14 years, 9 months
JBoss Tools SVN: r33029 - in trunk/forge: tests/org.jboss.tools.forge.core.test/src/org/jboss/tools/forge/core/process and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: koen.aers(a)jboss.com
Date: 2011-07-18 16:08:22 -0400 (Mon, 18 Jul 2011)
New Revision: 33029
Modified:
trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/Console.java
trunk/forge/tests/org.jboss.tools.forge.core.test/src/org/jboss/tools/forge/core/process/ForgeAbstractRuntimeTest.java
Log:
cleanup
Modified: trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/Console.java
===================================================================
--- trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/Console.java 2011-07-18 20:06:52 UTC (rev 33028)
+++ trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/Console.java 2011-07-18 20:08:22 UTC (rev 33029)
@@ -111,7 +111,7 @@
private int lastLinePosition = 0;
private StringBuffer escapeSequence = new StringBuffer();
private boolean escapeSequenceStarted = false;
- private boolean metaDataSequenceStarted = false;
+// private boolean metaDataSequenceStarted = false;
public void appendString(final String str) {
Display.getDefault().asyncExec(new Runnable() {
@@ -175,10 +175,6 @@
});
}
- private void handleMetaData(String metaData) {
- System.out.println("meta data detected: " + metaData);
- }
-
private class RuntimeStopListener implements PropertyChangeListener {
@Override
public void propertyChange(PropertyChangeEvent evt) {
Modified: trunk/forge/tests/org.jboss.tools.forge.core.test/src/org/jboss/tools/forge/core/process/ForgeAbstractRuntimeTest.java
===================================================================
--- trunk/forge/tests/org.jboss.tools.forge.core.test/src/org/jboss/tools/forge/core/process/ForgeAbstractRuntimeTest.java 2011-07-18 20:06:52 UTC (rev 33028)
+++ trunk/forge/tests/org.jboss.tools.forge.core.test/src/org/jboss/tools/forge/core/process/ForgeAbstractRuntimeTest.java 2011-07-18 20:08:22 UTC (rev 33029)
@@ -17,8 +17,6 @@
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.core.model.IStreamMonitor;
-import org.eclipse.debug.core.model.IStreamsProxy;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
14 years, 9 months
JBoss Tools SVN: r33028 - in trunk/as/plugins: org.jboss.ide.eclipse.as.rse.core/src/org/jboss/ide/eclipse/as/rse/core and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2011-07-18 16:06:52 -0400 (Mon, 18 Jul 2011)
New Revision: 33028
Added:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/util/RegExUtils.java
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.rse.core/src/org/jboss/ide/eclipse/as/rse/core/RSEJBoss7StartLaunchDelegate.java
trunk/as/plugins/org.jboss.ide.eclipse.as.rse.core/src/org/jboss/ide/eclipse/as/rse/core/RSELaunchConfigurator.java
Log:
[JBIDE-9215] translating paths to rse home dir
Added: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/util/RegExUtils.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/util/RegExUtils.java (rev 0)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/util/RegExUtils.java 2011-07-18 20:06:52 UTC (rev 33028)
@@ -0,0 +1,16 @@
+package org.jboss.ide.eclipse.as.core.util;
+
+public class RegExUtils {
+
+ public static String escapeRegex(String value) {
+ StringBuilder builder = new StringBuilder();
+ for(char character : value.toCharArray()) {
+ if ('/' == character) {
+ builder.append('\\');
+ }
+ builder.append(character);
+ }
+ return builder.toString();
+ }
+
+}
Property changes on: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/util/RegExUtils.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.rse.core/src/org/jboss/ide/eclipse/as/rse/core/RSEJBoss7StartLaunchDelegate.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.rse.core/src/org/jboss/ide/eclipse/as/rse/core/RSEJBoss7StartLaunchDelegate.java 2011-07-18 20:06:00 UTC (rev 33027)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.rse.core/src/org/jboss/ide/eclipse/as/rse/core/RSEJBoss7StartLaunchDelegate.java 2011-07-18 20:06:52 UTC (rev 33028)
@@ -13,23 +13,23 @@
package org.jboss.ide.eclipse.as.rse.core;
import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Path;
import org.eclipse.debug.core.ILaunch;
import org.eclipse.debug.core.ILaunchConfiguration;
import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.jdt.launching.IJavaLaunchConfigurationConstants;
import org.eclipse.wst.server.core.IServer;
import org.jboss.ide.eclipse.as.core.server.internal.DelegatingServerBehavior;
import org.jboss.ide.eclipse.as.core.server.internal.JBossServer;
import org.jboss.ide.eclipse.as.core.server.internal.launch.DelegatingStartLaunchConfiguration;
import org.jboss.ide.eclipse.as.core.server.internal.launch.configuration.JBossLaunchConfigProperties;
import org.jboss.ide.eclipse.as.core.util.IJBossRuntimeConstants;
-import org.jboss.ide.eclipse.as.core.util.IJBossRuntimeResourceConstants;
import org.jboss.ide.eclipse.as.core.util.JBossServerBehaviorUtils;
import org.jboss.ide.eclipse.as.core.util.LaunchCommandPreferences;
import org.jboss.ide.eclipse.as.core.util.LaunchConfigUtils;
+import org.jboss.ide.eclipse.as.core.util.RegExUtils;
import org.jboss.ide.eclipse.as.core.util.ServerConverter;
+import org.jboss.ide.eclipse.as.core.util.ServerUtil;
public class RSEJBoss7StartLaunchDelegate extends AbstractRSELaunchDelegate {
@@ -75,37 +75,45 @@
private String getDefaultLaunchCommand(ILaunchConfiguration config) throws CoreException {
/*
- * -server -Xms64m -Xmx512m -XX:MaxPermSize=256m
- * -Djava.net.preferIPv4Stack=true -Dorg.jboss.resolver.warning=true
- * -Dsun.rmi.dgc.client.gcInterval=3600000
- * -Dsun.rmi.dgc.server.gcInterval=3600000
- * -Dorg.jboss.boot.log.file=/home
- * /adietish/jboss-runtimes/jboss-7.0.0.CR1/standalone/log/boot.log
- * -Dlogging
- * .configuration=file:/home/adietish/jboss-runtimes/jboss-7.0.0
- * .CR1/standalone/configuration/logging.properties -jar
- * /home/adietish/jboss-runtimes/jboss-7.0.0.CR1/jboss-modules.jar
- * (!!!!!!!!!MISSING) -mp
- * /home/adietish/jboss-runtimes/jboss-7.0.0.CR1/modules -logmodule
- * org.jboss.logmanager -jaxpmodule javax.xml.jaxp-provider
- * org.jboss.as.standalone
- * -Djboss.home.dir=/home/adietish/jboss-runtimes/jboss-7.0.0.CR1
- */
+ * -server
+ * -Xms64m
+ * -Xmx512m
+ * -XX:MaxPermSize=256m
+ * -Djava.net.preferIPv4Stack=true
+ * -Dorg.jboss.resolver.warning=true
+ * -Dsun.rmi.dgc.client.gcInterval=3600000
+ * -Dsun.rmi.dgc.server.gcInterval=3600000
+ * -Djboss.modules.system.pkgs=org.jboss.byteman
+ * -Dorg.jboss.boot.log.file=/home/adietish/jboss-runtimes/jboss-as-web-7.0.0.Final/standalone/log/boot.log
+ * -Dlogging.configuration=file:/home/adietish/jboss-runtimes/jboss-as-web-7.0.0.Final/standalone/configuration/logging.properties
+ * -jar /home/adietish/jboss-runtimes/jboss-as-web-7.0.0.Final/jboss-modules.jar
+ * -mp /home/adietish/jboss-runtimes/jboss-as-web-7.0.0.Final/modules -logmodule org.jboss.logmanager
+ * -jaxpmodule javax.xml.jaxp-provider
+ * org.jboss.as.standalone
+ * -Djboss.home.dir=/home/adietish/jboss-runtimes/jboss-as-web-7.0.0.Final
+ */
+
String serverId = JBossLaunchConfigProperties.getServerId(config);
JBossServer jbossServer = ServerConverter.checkedFindJBossServer(serverId);
- String rseHome = RSEUtils.getRSEHomeDir(jbossServer.getServer());
- String currentArgs = config.getAttribute(IJavaLaunchConfigurationConstants.ATTR_PROGRAM_ARGUMENTS, ""); //$NON-NLS-1$
- String currentVMArgs = config.getAttribute(IJavaLaunchConfigurationConstants.ATTR_VM_ARGUMENTS, ""); //$NON-NLS-1$
+ String currentArgs = JBossLaunchConfigProperties.getProgramArguments(config);
+ String rseArgs = replaceLocalPath(currentArgs, jbossServer);
+ String currentVMArgs = JBossLaunchConfigProperties.getVMArguments(config);
+ String rseVMArgs = replaceLocalPath(currentVMArgs, jbossServer);
String jarArg = LaunchConfigUtils.classpathUserClassesToString(config);
-
+ String rseJarArg = replaceLocalPath(jarArg, jbossServer);
+
String cmd = "java "
- + currentVMArgs
- + " -classpath "
- + new Path(rseHome).append(IJBossRuntimeResourceConstants.BIN).append(
- IJBossRuntimeResourceConstants.START_JAR).toString()
- + " -jar " + jarArg + " "
- + IJBossRuntimeConstants.SPACE + currentArgs
+ + rseVMArgs
+ + " -jar " + rseJarArg + " "
+ + IJBossRuntimeConstants.SPACE + rseArgs
+ "&";
return cmd;
}
+
+ private String replaceLocalPath(String value, JBossServer jbossServer) throws CoreException {
+ IPath localHome = ServerUtil.getServerHomePath(jbossServer);
+ String localHomeRegex = RegExUtils.escapeRegex(localHome.toOSString());
+ String rseHome = RSEUtils.getRSEHomeDir(jbossServer.getServer());
+ return value.replaceAll(localHomeRegex, rseHome);
+ }
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.rse.core/src/org/jboss/ide/eclipse/as/rse/core/RSELaunchConfigurator.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.rse.core/src/org/jboss/ide/eclipse/as/rse/core/RSELaunchConfigurator.java 2011-07-18 20:06:00 UTC (rev 33027)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.rse.core/src/org/jboss/ide/eclipse/as/rse/core/RSELaunchConfigurator.java 2011-07-18 20:06:52 UTC (rev 33028)
@@ -21,10 +21,12 @@
private String defaultLaunchCommand;
private String defaultStopCommand;
+ private String rseHome;
public RSELaunchConfigurator(String defaultLaunchCommand, String defaultStopCommand) throws CoreException {
this.defaultLaunchCommand = defaultLaunchCommand;
this.defaultStopCommand = defaultStopCommand;
+ this.rseHome = rseHome;
}
@Override
14 years, 9 months
JBoss Tools SVN: r33027 - in trunk/forge/plugins: org.jboss.tools.forge.runtime and 11 other directories.
by jbosstools-commits@lists.jboss.org
Author: koen.aers(a)jboss.com
Date: 2011-07-18 16:06:00 -0400 (Mon, 18 Jul 2011)
New Revision: 33027
Added:
trunk/forge/plugins/org.jboss.tools.forge.core/src/org/jboss/tools/forge/core/io/ForgeHiddenOutputFilter.java
trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/META-INF/
trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/META-INF/beans.xml
trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/META-INF/forge.xml
trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/org/
trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/org/jboss/
trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/org/jboss/tools/
trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/org/jboss/tools/forge/
trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/org/jboss/tools/forge/runtime/
trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/org/jboss/tools/forge/runtime/ext/
trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/org/jboss/tools/forge/runtime/ext/EventHandler.java
trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/org/jboss/tools/forge/runtime/ext/ShellDecorator.java
Modified:
trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/META-INF/MANIFEST.MF
trunk/forge/plugins/org.jboss.tools.forge.runtime/.classpath
trunk/forge/plugins/org.jboss.tools.forge.runtime/META-INF/MANIFEST.MF
trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/Console.java
trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/ConsoleViewer.java
Log:
initial implementation of a decorator for Forge Shell and an observer for Forge events
Added: trunk/forge/plugins/org.jboss.tools.forge.core/src/org/jboss/tools/forge/core/io/ForgeHiddenOutputFilter.java
===================================================================
--- trunk/forge/plugins/org.jboss.tools.forge.core/src/org/jboss/tools/forge/core/io/ForgeHiddenOutputFilter.java (rev 0)
+++ trunk/forge/plugins/org.jboss.tools.forge.core/src/org/jboss/tools/forge/core/io/ForgeHiddenOutputFilter.java 2011-07-18 20:06:00 UTC (rev 33027)
@@ -0,0 +1,45 @@
+package org.jboss.tools.forge.core.io;
+
+public class ForgeHiddenOutputFilter implements ForgeOutputListener {
+
+ private static final String ESCAPE_SEQUENCE = new String(new char[] { 27, '[', '%' });
+
+ private ForgeOutputListener target = null;
+ private boolean hidden = false;
+ private StringBuffer hiddenOutput = new StringBuffer();
+
+ public ForgeHiddenOutputFilter(ForgeOutputListener target) {
+ this.target = target;
+ }
+
+ @Override
+ public void outputAvailable(String output) {
+ System.out.println("ForgeHiddenOutputListener->outputAvailable: " + output);
+ int i = output.indexOf(ESCAPE_SEQUENCE);
+ if (i != -1) {
+ if (hidden) {
+ hiddenOutput.append(output.substring(0, i));
+ handleHiddenOutput(hiddenOutput);
+ } else {
+ target.outputAvailable(output.substring(0, i));
+ hidden = true;
+ }
+ if (output.length() > i + 3) {
+ outputAvailable(output.substring(i + 3));
+ }
+ } else {
+ if (hidden) {
+ hiddenOutput.append(output);
+ } else {
+ target.outputAvailable(output);
+ }
+ }
+ }
+
+ private void handleHiddenOutput(StringBuffer output) {
+ System.out.println(output.toString());
+ output.setLength(0);
+ hidden = false;
+ }
+
+}
Modified: trunk/forge/plugins/org.jboss.tools.forge.runtime/.classpath
===================================================================
--- trunk/forge/plugins/org.jboss.tools.forge.runtime/.classpath 2011-07-18 18:58:20 UTC (rev 33026)
+++ trunk/forge/plugins/org.jboss.tools.forge.runtime/.classpath 2011-07-18 20:06:00 UTC (rev 33027)
@@ -5,5 +5,6 @@
<classpathentry exported="true" kind="lib" path="lib/forge-shell-api.jar"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="lib" path="lib/weld-core.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>
Modified: trunk/forge/plugins/org.jboss.tools.forge.runtime/META-INF/MANIFEST.MF
===================================================================
--- trunk/forge/plugins/org.jboss.tools.forge.runtime/META-INF/MANIFEST.MF 2011-07-18 18:58:20 UTC (rev 33026)
+++ trunk/forge/plugins/org.jboss.tools.forge.runtime/META-INF/MANIFEST.MF 2011-07-18 20:06:00 UTC (rev 33027)
@@ -7,7 +7,8 @@
Bundle-ClassPath: lib/forge-shell-api.jar,
lib/cdi-api.jar,
lib/javax.inject.jar
-Export-Package: javax.enterprise.context,
+Export-Package: javax.decorator,
+ javax.enterprise.context,
javax.enterprise.event,
javax.inject,
org.jboss.forge,
Modified: trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/META-INF/MANIFEST.MF
===================================================================
--- trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/META-INF/MANIFEST.MF 2011-07-18 18:58:20 UTC (rev 33026)
+++ trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/META-INF/MANIFEST.MF 2011-07-18 20:06:00 UTC (rev 33027)
@@ -1,6 +1,8 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Ext
+Bundle-Name: Forge Runtime Extensions
Bundle-SymbolicName: org.jboss.tools.forge.runtime.ext
Bundle-Version: 1.0.0.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-Vendor: JBoss by Red Hat
+Require-Bundle: org.jboss.tools.forge.runtime;bundle-version="1.0.0"
Added: trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/META-INF/beans.xml
===================================================================
--- trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/META-INF/beans.xml (rev 0)
+++ trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/META-INF/beans.xml 2011-07-18 20:06:00 UTC (rev 33027)
@@ -0,0 +1,8 @@
+<beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="
+ http://java.sun.com/xml/ns/javaee
+ http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
+ <decorators>
+ <class>org.jboss.tools.forge.runtime.ext.ShellDecorator</class>
+ </decorators>
+</beans>
Added: trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/META-INF/forge.xml
===================================================================
--- trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/META-INF/forge.xml (rev 0)
+++ trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/META-INF/forge.xml 2011-07-18 20:06:00 UTC (rev 33027)
@@ -0,0 +1 @@
+<forge/>
\ No newline at end of file
Added: trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/org/jboss/tools/forge/runtime/ext/EventHandler.java
===================================================================
--- trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/org/jboss/tools/forge/runtime/ext/EventHandler.java (rev 0)
+++ trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/org/jboss/tools/forge/runtime/ext/EventHandler.java 2011-07-18 20:06:00 UTC (rev 33027)
@@ -0,0 +1,24 @@
+package org.jboss.tools.forge.runtime.ext;
+
+import javax.enterprise.event.Observes;
+import javax.inject.Inject;
+
+import org.jboss.forge.shell.Shell;
+import org.jboss.forge.shell.events.PostStartup;
+
+public class EventHandler {
+
+ private static final String ESCAPE = new String(new char[] { 27, '[', '%'} );
+
+ @Inject
+ private Shell shell;
+
+ public void startup(@Observes PostStartup event) {
+ sendEscaped("PostStartup");
+ }
+
+ private void sendEscaped(String str) {
+ shell.print(ESCAPE + str + ESCAPE);
+ }
+
+}
Added: trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/org/jboss/tools/forge/runtime/ext/ShellDecorator.java
===================================================================
--- trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/org/jboss/tools/forge/runtime/ext/ShellDecorator.java (rev 0)
+++ trunk/forge/plugins/org.jboss.tools.forge.runtime.ext/org.jboss.tools.forge.runtime.ext/src/org/jboss/tools/forge/runtime/ext/ShellDecorator.java 2011-07-18 20:06:00 UTC (rev 33027)
@@ -0,0 +1,37 @@
+package org.jboss.tools.forge.runtime.ext;
+
+import java.io.IOException;
+
+import javax.decorator.Decorator;
+import javax.decorator.Delegate;
+import javax.inject.Inject;
+
+import org.jboss.forge.shell.Shell;
+
+@Decorator
+public abstract class ShellDecorator implements Shell {
+
+ private static final String ESCAPE = new String(new char[] { 27, '[', '%' });
+
+ @Inject @Delegate Shell shell;
+
+ @Override
+ public String readLine() throws IOException {
+ String str = shell.readLine();
+ int i1 = str.indexOf(ESCAPE);
+ int i2 = str.indexOf(ESCAPE, i1 + 3);
+ if (i1 != -1 && str.length() > i1 + 3) {
+ i2 = str.indexOf(ESCAPE);
+ if (i2 != -1) {
+ handleHidden(str.substring(i1 + 3, i2));
+ }
+ return "";
+ }
+ return str;
+ }
+
+ private void handleHidden(String str) {
+ shell.println(ESCAPE + "hidden detected: " + str + ESCAPE);
+ }
+
+}
Modified: trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/Console.java
===================================================================
--- trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/Console.java 2011-07-18 18:58:20 UTC (rev 33026)
+++ trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/Console.java 2011-07-18 20:06:00 UTC (rev 33027)
@@ -10,6 +10,7 @@
import org.eclipse.ui.console.IConsoleView;
import org.eclipse.ui.console.TextConsole;
import org.eclipse.ui.part.IPageBookViewPage;
+import org.jboss.tools.forge.core.io.ForgeHiddenOutputFilter;
import org.jboss.tools.forge.core.io.ForgeInputStream;
import org.jboss.tools.forge.core.io.ForgeOutputListener;
import org.jboss.tools.forge.core.process.ForgeRuntime;
@@ -27,11 +28,7 @@
public Console(ForgeRuntime runtime) {
super("Forge Console", null, null, true);
this.runtime = runtime;
- initInputStream();
- initPartitioner();
- initCommandRecorder();
- initOutputListener();
- initInputReadJob();
+ initialize();
}
protected void init() {
@@ -58,12 +55,14 @@
}
private void initOutputListener() {
- outputListener = new ForgeOutputListener() {
+ ForgeOutputListener target = new ForgeOutputListener() {
@Override
public void outputAvailable(String output) {
+ System.out.println("ForgeOutputListener->outputAvailable : " + output);
appendString(output);
}
};
+ outputListener = new ForgeHiddenOutputFilter(target);
runtime.addOutputListener(outputListener);
}
@@ -101,6 +100,7 @@
outputListener = null;
partitioner.disconnect();
inputStream.close();
+ inputStream = null;
} catch (IOException e) {
ForgeUIPlugin.log(e);
}
@@ -188,5 +188,5 @@
}
}
}
-
+
}
Modified: trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/ConsoleViewer.java
===================================================================
--- trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/ConsoleViewer.java 2011-07-18 18:58:20 UTC (rev 33026)
+++ trunk/forge/plugins/org.jboss.tools.forge.ui/src/org/jboss/tools/forge/ui/console/ConsoleViewer.java 2011-07-18 20:06:00 UTC (rev 33027)
@@ -23,7 +23,7 @@
public ConsoleViewer(Composite parent, ForgeRuntime runtime) {
super(parent, new Console(runtime));
this.runtime = runtime;
- getDocument().addDocumentListener(new DocumentListener());
+ getDocument().addDocumentListener(new DocumentListener());
}
protected void handleVerifyEvent(VerifyEvent e) {
@@ -44,7 +44,7 @@
}
private void handleF1Down() {
-// console.getInputStream().appendData((char)27 + "[%hidden blahblahblah %");
+ runtime.sendInput((char)27 + "[%hidden blahblahblah" +(char)27 + "[%");
}
protected StyledText createTextWidget(Composite parent, int styles) {
14 years, 9 months
JBoss Tools SVN: r33026 - trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/web/validation/composite.
by jbosstools-commits@lists.jboss.org
Author: akazakov
Date: 2011-07-18 14:58:20 -0400 (Mon, 18 Jul 2011)
New Revision: 33026
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/web/validation/composite/CompositeComponentValidator.java
Log:
https://issues.jboss.org/browse/JBIDE-9138
Modified: trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/web/validation/composite/CompositeComponentValidator.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/web/validation/composite/CompositeComponentValidator.java 2011-07-18 17:14:07 UTC (rev 33025)
+++ trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/web/validation/composite/CompositeComponentValidator.java 2011-07-18 18:58:20 UTC (rev 33026)
@@ -14,6 +14,7 @@
import java.util.HashSet;
import java.util.Set;
+import org.eclipse.core.resources.IContainer;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IMarker;
import org.eclipse.core.resources.IProject;
@@ -87,21 +88,33 @@
for (IFile file : changedFiles) {
pathesToClean.add(file.getFullPath());
// If the changed file is a composition component then collect all the pages which use this component.
- if(file.isAccessible() && notValidatedYet(file)) {
- filesToValidate.add(file);
- ITagLibrary[] libs = TagLibraryManager.getLibraries(file.getParent());
- for (ITagLibrary lib : libs) {
- if(lib instanceof ICompositeTagLibrary) {
- Set<IPath> pathes = getValidationContext().getCoreResourcesByVariableName(SHORT_ID, getComponentUri(lib, file), false);
- if(pathes!=null) {
- for (IPath path : pathes) {
- IFile page = root.getFile(path);
- if(page!=null && page.isAccessible()) {
- filesToValidate.add(page);
- pathesToClean.add(page.getFullPath());
+ if(notValidatedYet(file)) {
+ if(file.exists()) {
+ filesToValidate.add(file);
+ ITagLibrary[] libs = TagLibraryManager.getLibraries(file.getParent());
+ for (ITagLibrary lib : libs) {
+ if(lib instanceof ICompositeTagLibrary) {
+ collectRelatedPages(root, filesToValidate, pathesToClean, getComponentUri(lib.getURI(), file));
+ }
+ }
+ } else {
+ // In case of deleted resource file
+ IContainer folder = file.getParent();
+ if(folder!=null) {
+ String[] segemnts = folder.getFullPath().segments();
+ StringBuffer libUri = new StringBuffer();
+ for (String segment : segemnts) {
+ if(libUri.length()==0) {
+ if(segment.equalsIgnoreCase("resources")) {
+ libUri.append("http://java.sun.com/jsf/composite");
}
+ } else {
+ libUri.append('/').append(segment);
}
}
+ if(libUri.length()>"http://java.sun.com/jsf/composite".length()) {
+ collectRelatedPages(root, filesToValidate, pathesToClean, getComponentUri(libUri.toString(), file));
+ }
}
}
}
@@ -118,6 +131,19 @@
return OK_STATUS;
}
+ private void collectRelatedPages(IWorkspaceRoot root, Set<IFile> filesToValidate, Set<IPath> pathesToClean, String uri) {
+ Set<IPath> pathes = getValidationContext().getCoreResourcesByVariableName(SHORT_ID, uri, false);
+ if(pathes!=null) {
+ for (IPath path : pathes) {
+ IFile page = root.getFile(path);
+ if(page!=null && page.isAccessible()) {
+ filesToValidate.add(page);
+ pathesToClean.add(page.getFullPath());
+ }
+ }
+ }
+ }
+
/*
* (non-Javadoc)
* @see org.jboss.tools.jst.web.kb.validation.IValidator#validateAll(org.eclipse.core.resources.IProject, org.jboss.tools.jst.web.kb.internal.validation.ContextValidationHelper, org.jboss.tools.jst.web.kb.validation.IProjectValidationContext, org.jboss.tools.jst.web.kb.internal.validation.ValidatorManager, org.eclipse.wst.validation.internal.provisional.core.IReporter)
@@ -142,14 +168,14 @@
return OK_STATUS;
}
- private String getComponentUri(ITagLibrary lib, IFile file) {
+ private String getComponentUri(String libUri, IFile file) {
String fullName = file.getName();
String name = fullName;
String ext = file.getFileExtension();
if(ext!=null) {
name = name.substring(0, name.lastIndexOf("." + ext));
}
- return lib.getURI() + ":" + name;
+ return libUri + ":" + name;
}
private void validateResource(IFile file) {
14 years, 9 months
JBoss Tools SVN: r33025 - trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/jsf2/model.
by jbosstools-commits@lists.jboss.org
Author: dazarov
Date: 2011-07-18 13:14:07 -0400 (Mon, 18 Jul 2011)
New Revision: 33025
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/jsf2/model/JSF2ComponentModelManager.java
Log:
https://issues.jboss.org/browse/JBIDE-9138
Modified: trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/jsf2/model/JSF2ComponentModelManager.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/jsf2/model/JSF2ComponentModelManager.java 2011-07-18 16:27:41 UTC (rev 33024)
+++ trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/jsf2/model/JSF2ComponentModelManager.java 2011-07-18 17:14:07 UTC (rev 33025)
@@ -99,6 +99,7 @@
provider.aboutToChange(input);
provider.saveDocument(new NullProgressMonitor(), input, document, true);
+ provider.changed(input);
provider.disconnect(input);
}
});
14 years, 9 months
JBoss Tools SVN: r33024 - trunk/ws/tests/org.jboss.tools.ws.ui.bot.test/src/org/jboss/tools/ws/ui/bot/test/uiutils/wizards.
by jbosstools-commits@lists.jboss.org
Author: jlukas(a)redhat.com
Date: 2011-07-18 12:27:41 -0400 (Mon, 18 Jul 2011)
New Revision: 33024
Modified:
trunk/ws/tests/org.jboss.tools.ws.ui.bot.test/src/org/jboss/tools/ws/ui/bot/test/uiutils/wizards/WebServiceWizard.java
trunk/ws/tests/org.jboss.tools.ws.ui.bot.test/src/org/jboss/tools/ws/ui/bot/test/uiutils/wizards/WsWizardBase.java
Log:
guard tests against lost focus
Modified: trunk/ws/tests/org.jboss.tools.ws.ui.bot.test/src/org/jboss/tools/ws/ui/bot/test/uiutils/wizards/WebServiceWizard.java
===================================================================
--- trunk/ws/tests/org.jboss.tools.ws.ui.bot.test/src/org/jboss/tools/ws/ui/bot/test/uiutils/wizards/WebServiceWizard.java 2011-07-18 16:02:15 UTC (rev 33023)
+++ trunk/ws/tests/org.jboss.tools.ws.ui.bot.test/src/org/jboss/tools/ws/ui/bot/test/uiutils/wizards/WebServiceWizard.java 2011-07-18 16:27:41 UTC (rev 33024)
@@ -42,11 +42,13 @@
}
public WebServiceWizard setServiceType(Service_Type type) {
+ setFocus();
bot().comboBoxWithLabel("Web service type:").setSelection(type.getDescription());
return this;
}
public Service_Type getServiceType() {
+ setFocus();
String s = bot().comboBoxWithLabel("Web service type:").getText();
return s.startsWith("Bottom up") ? Service_Type.BOTTOM_UP : Service_Type.TOP_DOWN;
}
Modified: trunk/ws/tests/org.jboss.tools.ws.ui.bot.test/src/org/jboss/tools/ws/ui/bot/test/uiutils/wizards/WsWizardBase.java
===================================================================
--- trunk/ws/tests/org.jboss.tools.ws.ui.bot.test/src/org/jboss/tools/ws/ui/bot/test/uiutils/wizards/WsWizardBase.java 2011-07-18 16:02:15 UTC (rev 33023)
+++ trunk/ws/tests/org.jboss.tools.ws.ui.bot.test/src/org/jboss/tools/ws/ui/bot/test/uiutils/wizards/WsWizardBase.java 2011-07-18 16:27:41 UTC (rev 33024)
@@ -43,8 +43,9 @@
}
public WsWizardBase setSource(String s) {
+ setFocus();
SWTBotCombo c = bot().comboBoxWithLabel(getSourceComboLabel());
- c.typeText(s);
+ c.setText(s);
return this;
}
@@ -61,6 +62,7 @@
protected abstract String getSourceComboLabel();
protected WsWizardBase setServerRuntime(String name, int idx) {
+ setFocus();
findLink("Server runtime:").get(idx).click();
SWTBotShell sh = bot().activeShell();
SWTBotTree tree = sh.bot().treeInGroup("Server runtime:");
@@ -71,6 +73,8 @@
}
protected WsWizardBase setWebServiceRuntime(String name, int idx) {
+ setFocus();
+ sleep(100);
findLink("Web service runtime:").get(idx).click();
sleep(100);
SWTBotShell sh = bot().activeShell();
@@ -83,6 +87,8 @@
}
protected WsWizardBase setTargetProject(String label, String name) {
+ setFocus();
+ sleep(100);
findLink(label).get(0).click();
SWTBotShell sh = bot().activeShell();
SWTBotCombo c = sh.bot().comboBoxWithLabel(label);
@@ -111,6 +117,7 @@
//second panel
public WsWizardBase setPackageName(String pkg) {
+ setFocus();
bot().textWithLabel("Package name").typeText(pkg);
return this;
}
@@ -120,6 +127,7 @@
}
private List<SWTBotHyperlinkExt> findLink(String text) {
+ setFocus();
List<? extends Hyperlink> widgets = bot().widgets(WidgetMatcherFactory.widgetOfType(Hyperlink.class));
List<SWTBotHyperlinkExt> ret = new ArrayList<SWTBotHyperlinkExt>();
for (Hyperlink h : widgets) {
@@ -131,6 +139,7 @@
}
private SWTBotScaleExt scale(int i) {
+ setFocus();
List<? extends Scale> widgets = bot().widgets(WidgetMatcherFactory.widgetOfType(Scale.class));
List<SWTBotScaleExt> ret = new ArrayList<SWTBotScaleExt>();
for (Scale s : widgets) {
14 years, 9 months
JBoss Tools SVN: r33023 - trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2011-07-18 12:02:15 -0400 (Mon, 18 Jul 2011)
New Revision: 33023
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/PollThread.java
Log:
[JBIDE-9054] cleaned imports
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/PollThread.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/PollThread.java 2011-07-18 15:59:37 UTC (rev 33022)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/PollThread.java 2011-07-18 16:02:15 UTC (rev 33023)
@@ -10,8 +10,6 @@
******************************************************************************/
package org.jboss.ide.eclipse.as.core.server.internal;
-import java.util.Date;
-
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.osgi.util.NLS;
14 years, 9 months
JBoss Tools SVN: r33022 - in trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core: util and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2011-07-18 11:59:37 -0400 (Mon, 18 Jul 2011)
New Revision: 33022
Added:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/IPollResultListener.java
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/AbstractJBossBehaviourDelegate.java
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/PollThread.java
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/util/PollThreadUtils.java
Log:
[JBIDE-9359] deprecated #alertBehaviour, replaced by #alertListener. The ServerBehaviour would now add a listener to the poller which then would get informed of the outcome of the polling. The server behavior could then act upon (and not the PollThread like it was before).
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/AbstractJBossBehaviourDelegate.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/AbstractJBossBehaviourDelegate.java 2011-07-18 14:56:59 UTC (rev 33021)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/AbstractJBossBehaviourDelegate.java 2011-07-18 15:59:37 UTC (rev 33022)
@@ -93,9 +93,29 @@
protected void pollServer(boolean expectedState, IServerStatePoller poller) {
stopPolling();
- this.pollThread = PollThreadUtils.pollServer(expectedState, poller, pollThread, actualBehavior);
+ this.pollThread = PollThreadUtils.pollServer(expectedState, poller, pollThread, onPollingFinished(),
+ getServer());
}
+ protected IPollResultListener onPollingFinished() {
+ return new IPollResultListener() {
+
+ @Override
+ public void stateNotAsserted(boolean expectedState, boolean currentState) {
+ stop(true);
+ }
+
+ @Override
+ public void stateAsserted(boolean expectedState, boolean currentState) {
+ if (currentState == IServerStatePoller.SERVER_UP) {
+ setServerStarted();
+ } else {
+ stop(true);
+ }
+ }
+ };
+ }
+
protected void stopPolling() {
cancelPolling(null);
}
Added: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/IPollResultListener.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/IPollResultListener.java (rev 0)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/IPollResultListener.java 2011-07-18 15:59:37 UTC (rev 33022)
@@ -0,0 +1,23 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.ide.eclipse.as.core.server.internal;
+
+public interface IPollResultListener {
+
+ /**
+ * Called if the poller did
+ * @param expectedState
+ * @param currentState
+ */
+ public void stateAsserted(boolean expectedState, boolean currentState);
+
+ public void stateNotAsserted(boolean expectedState, boolean currentState);
+}
Property changes on: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/IPollResultListener.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/PollThread.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/PollThread.java 2011-07-18 14:56:59 UTC (rev 33021)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/PollThread.java 2011-07-18 15:59:37 UTC (rev 33022)
@@ -10,6 +10,8 @@
******************************************************************************/
package org.jboss.ide.eclipse.as.core.server.internal;
+import java.util.Date;
+
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.osgi.util.NLS;
@@ -49,17 +51,31 @@
private boolean expectedState, abort, stateStartedOrStopped;
private IServerStatePoller poller;
private String abortMessage;
+ @Deprecated
private DelegatingServerBehavior behavior;
private String pollerId;
+ private IPollResultListener listener;
+ private IServer server;
+ @Deprecated
public PollThread(boolean expectedState, IServerStatePoller poller, DelegatingServerBehavior behavior) {
super(getThreadName(behavior.getServer()));
this.expectedState = expectedState;
this.behavior = behavior;
+ this.server = behavior.getServer();
this.poller = poller;
this.abort = false;
}
+ public PollThread(boolean expectedState, IServerStatePoller poller, IPollResultListener listener, IServer server) {
+ super(getThreadName(server));
+ this.expectedState = expectedState;
+ this.poller = poller;
+ this.server = server;
+ this.listener = listener;
+ this.abort = false;
+ }
+
private static String getThreadName(IServer server) {
return NLS.bind(Messages.ServerPollerThreadName, server.getName());
}
@@ -86,7 +102,8 @@
if (poller == null) {
alertEventLogStarting();
alertPollerNotFound();
- alertBehavior(!expectedState);
+// alertBehavior(!expectedState);
+ alertListener(!expectedState);
return;
}
@@ -115,7 +132,8 @@
poller.cancel(IServerStatePoller.CANCEL);
poller.cleanup();
alertEventLogPollerException(e);
- alertBehavior(!expectedState);
+// alertBehavior(!expectedState);
+ alertListener(!expectedState);
return;
} catch (RequiresInfoException rie) {
// This way each request for new info is checked only once.
@@ -138,7 +156,7 @@
// we stopped. Did we abort?
if (stateStartedOrStopped) {
- int state = behavior.getServer().getServerState();
+ int state = server.getServerState();
boolean success = false;
if (expectedState == IServerStatePoller.SERVER_UP)
success = state == IServer.STATE_STARTED;
@@ -159,7 +177,8 @@
try {
currentState = poller.getState();
poller.cleanup();
- alertBehavior(currentState);
+// alertBehavior(currentState);
+ alertListener(currentState);
if (finalAlert) {
alertEventLog(currentState);
}
@@ -168,7 +187,8 @@
poller.cancel(IServerStatePoller.CANCEL);
poller.cleanup();
alertEventLogPollerException(pe);
- alertBehavior(!expectedState);
+// alertBehavior(!expectedState);
+ alertListener(!expectedState);
return;
} catch (RequiresInfoException rie) {
// You don't have an answer... liar!
@@ -187,7 +207,8 @@
// we're up (failed to shutdown)
// all other cases, we're down.
currentState = (expectedState == (behavior == IServerStatePoller.TIMEOUT_BEHAVIOR_SUCCEED));
- alertBehavior(currentState);
+// alertBehavior(currentState);
+ alertListener(currentState);
}
}
}
@@ -198,7 +219,7 @@
}
protected boolean checkServerState() {
- int state = behavior.getServer().getServerState();
+ int state = server.getServerState();
if (state == IServer.STATE_STARTED)
return true;
if (state == IServer.STATE_STOPPED)
@@ -214,6 +235,7 @@
}
}
+ @Deprecated
protected void alertBehavior(boolean currentState) {
if (currentState != expectedState) {
// it didnt work... cancel all processes! force stop
@@ -226,8 +248,16 @@
}
}
+ protected void alertListener(boolean currentState) {
+ if (currentState != expectedState) {
+ listener.stateNotAsserted(currentState, expectedState);
+ } else {
+ listener.stateAsserted(currentState, expectedState);
+ }
+ }
+
protected IServer getServer() {
- return behavior.getServer();
+ return server;
}
/*
@@ -240,26 +270,26 @@
IStatus status = new Status(IStatus.INFO,
JBossServerCorePlugin.PLUGIN_ID, POLLING_ROOT_CODE | state, message, null);
- ServerLogger.getDefault().log(behavior.getServer(), status);
+ ServerLogger.getDefault().log(server, status);
}
protected void alertEventLogPollerException(PollingException e) {
IStatus status = new Status(IStatus.ERROR,
JBossServerCorePlugin.PLUGIN_ID, POLLING_FAIL_CODE, Messages.PollerFailure, e);
- ServerLogger.getDefault().log(behavior.getServer(), status);
+ ServerLogger.getDefault().log(server, status);
}
protected void alertEventLogAbort() {
IStatus status = new Status(IStatus.WARNING,
JBossServerCorePlugin.PLUGIN_ID, POLLING_FAIL_CODE | getStateMask(expectedState, false),
NLS.bind(Messages.PollerAborted, abortMessage), null);
- ServerLogger.getDefault().log(behavior.getServer(), status);
+ ServerLogger.getDefault().log(server, status);
}
protected void alertEventLogTimeout() {
IStatus status = new Status(IStatus.ERROR,
JBossServerCorePlugin.PLUGIN_ID, POLLING_FAIL_CODE | getStateMask(expectedState, false), "", null); //$NON-NLS-1$
- ServerLogger.getDefault().log(behavior.getServer(), status);
+ ServerLogger.getDefault().log(server, status);
}
protected void alertEventLogFailure() {
@@ -268,7 +298,7 @@
IStatus status = new Status(IStatus.ERROR,
JBossServerCorePlugin.PLUGIN_ID, POLLING_FAIL_CODE | getStateMask(expectedState, false),
expectedState ? startupFailed : shutdownFailed, null);
- ServerLogger.getDefault().log(behavior.getServer(), status);
+ ServerLogger.getDefault().log(server, status);
}
protected void alertEventLogSuccess(boolean currentState) {
@@ -278,7 +308,7 @@
IStatus status = new Status(IStatus.INFO,
JBossServerCorePlugin.PLUGIN_ID, POLLING_ROOT_CODE | state | SUCCESS,
expectedState ? startupSuccess : shutdownSuccess, null);
- ServerLogger.getDefault().log(behavior.getServer(), status);
+ ServerLogger.getDefault().log(server, status);
}
protected void alertPollerNotFound() {
@@ -287,7 +317,7 @@
IStatus status = new Status(IStatus.ERROR, JBossServerCorePlugin.PLUGIN_ID,
POLLING_FAIL_CODE | getStateMask(expectedState, false),
expectedState ? startupPollerNotFound : shutdownPollerNotFound, null);
- ServerLogger.getDefault().log(behavior.getServer(), status);
+ ServerLogger.getDefault().log(server, status);
}
protected int getStateMask(boolean expected, boolean success) {
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/util/PollThreadUtils.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/util/PollThreadUtils.java 2011-07-18 14:56:59 UTC (rev 33021)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/util/PollThreadUtils.java 2011-07-18 15:59:37 UTC (rev 33022)
@@ -13,8 +13,9 @@
import org.eclipse.wst.server.core.IServer;
import org.jboss.ide.eclipse.as.core.ExtensionManager;
import org.jboss.ide.eclipse.as.core.server.IServerStatePoller;
+import org.jboss.ide.eclipse.as.core.server.internal.DelegatingServerBehavior;
+import org.jboss.ide.eclipse.as.core.server.internal.IPollResultListener;
import org.jboss.ide.eclipse.as.core.server.internal.JBossServer;
-import org.jboss.ide.eclipse.as.core.server.internal.DelegatingServerBehavior;
import org.jboss.ide.eclipse.as.core.server.internal.PollThread;
import org.jboss.ide.eclipse.as.core.server.internal.ServerAttributeHelper;
import org.jboss.ide.eclipse.as.core.server.internal.ServerStatePollerType;
@@ -121,6 +122,7 @@
* @return
* @return the new poll thread
*/
+ @Deprecated
public static PollThread pollServer(final boolean expectedState, PollThread currentPollThread, DelegatingServerBehavior behaviour) {
IServerStatePoller poller = PollThreadUtils.getPoller(expectedState, behaviour.getServer());
return pollServer(expectedState, poller, currentPollThread, behaviour);
@@ -136,6 +138,7 @@
* @param behaviour the server behavior to use.
* @return the new poll thread
*/
+ @Deprecated
public static PollThread pollServer(boolean expectedState, IServerStatePoller poller, PollThread currentPollThread,
DelegatingServerBehavior behaviour) {
stopPolling(currentPollThread);
@@ -144,4 +147,22 @@
return newPollThread;
}
+ /**
+ * Stops the given poll thread and creates a new poll thread for the given
+ * expected state, poller, result listener and server.
+ *
+ * @param expectedState the state to wait for
+ * @param poller the poller to use to wait for the expected state
+ * @param pollThread the poll thread to stop
+ * @param listener the listener to inform about the polling result
+ * @return the new poll thread
+ */
+ public static PollThread pollServer(boolean expectedState, IServerStatePoller poller, PollThread currentPollThread,
+ IPollResultListener listener, IServer server) {
+ stopPolling(currentPollThread);
+ PollThread newPollThread = new PollThread(expectedState, poller, listener, server);
+ newPollThread.start();
+ return newPollThread;
+ }
+
}
14 years, 9 months