JBoss Tools SVN: r34607 - trunk/cdi/tests/org.jboss.tools.cdi.ui.test/src/org/jboss/tools/cdi/ui/test/testmodel.
by jbosstools-commits@lists.jboss.org
Author: scabanovich
Date: 2011-09-09 12:22:59 -0400 (Fri, 09 Sep 2011)
New Revision: 34607
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.ui.test/src/org/jboss/tools/cdi/ui/test/testmodel/CDIBean.java
Log:
JBIDE-9347
https://issues.jboss.org/browse/JBIDE-9347
Initial implementation of Assignable Beans dialog.
Modified: trunk/cdi/tests/org.jboss.tools.cdi.ui.test/src/org/jboss/tools/cdi/ui/test/testmodel/CDIBean.java
===================================================================
--- trunk/cdi/tests/org.jboss.tools.cdi.ui.test/src/org/jboss/tools/cdi/ui/test/testmodel/CDIBean.java 2011-09-09 16:22:00 UTC (rev 34606)
+++ trunk/cdi/tests/org.jboss.tools.cdi.ui.test/src/org/jboss/tools/cdi/ui/test/testmodel/CDIBean.java 2011-09-09 16:22:59 UTC (rev 34607)
@@ -270,4 +270,10 @@
public boolean exists() {
return true;
}
+
+ @Override
+ public void open() {
+ // TODO Auto-generated method stub
+
+ }
}
\ No newline at end of file
14 years, 7 months
JBoss Tools SVN: r34606 - in trunk/cdi/plugins/org.jboss.tools.cdi.core: src/org/jboss/tools/cdi/core and 1 other directories.
by jbosstools-commits@lists.jboss.org
Author: scabanovich
Date: 2011-09-09 12:22:00 -0400 (Fri, 09 Sep 2011)
New Revision: 34606
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.core/META-INF/MANIFEST.MF
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/IBean.java
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/EventBean.java
Log:
JBIDE-9347
https://issues.jboss.org/browse/JBIDE-9347
Initial implementation of Assignable Beans dialog.
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/META-INF/MANIFEST.MF
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/META-INF/MANIFEST.MF 2011-09-09 15:18:47 UTC (rev 34605)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/META-INF/MANIFEST.MF 2011-09-09 16:22:00 UTC (rev 34606)
@@ -11,6 +11,7 @@
org.eclipse.jdt.core;bundle-version="3.7.0",
org.eclipse.core.resources;bundle-version="3.7.100",
org.jboss.tools.common.model,
+ org.jboss.tools.common.model.ui,
org.eclipse.wst.common.project.facet.core;bundle-version="1.4.200",
org.eclipse.wst.common.modulecore;bundle-version="1.2.100",
org.eclipse.wst.common.frameworks;bundle-version="1.2.0",
@@ -26,7 +27,8 @@
org.apache.ant;bundle-version="1.7.1",
org.jboss.tools.jst.web,
org.jboss.tools.common.validation,
- org.jboss.tools.cdi.xml
+ org.jboss.tools.cdi.xml,
+ org.eclipse.ui.ide;bundle-version="3.7.0"
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-Vendor: JBoss by Red Hat
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/IBean.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/IBean.java 2011-09-09 15:18:47 UTC (rev 34605)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/IBean.java 2011-09-09 16:22:00 UTC (rev 34606)
@@ -198,4 +198,10 @@
* value, and <tt>false</tt> otherwise
*/
boolean isNullable();
+
+ /**
+ * Opens this bean in editor.
+ *
+ */
+ void open();
}
\ No newline at end of file
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java 2011-09-09 15:18:47 UTC (rev 34605)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java 2011-09-09 16:22:00 UTC (rev 34606)
@@ -22,7 +22,16 @@
import org.eclipse.core.runtime.CoreException;
import org.eclipse.jdt.core.IMember;
import org.eclipse.jdt.core.IType;
+import org.eclipse.jdt.core.JavaModelException;
import org.eclipse.jdt.core.Signature;
+import org.eclipse.jdt.ui.JavaUI;
+import org.eclipse.jface.text.TextSelection;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.ide.IDE;
+import org.eclipse.ui.texteditor.ITextEditor;
import org.jboss.tools.cdi.core.CDIConstants;
import org.jboss.tools.cdi.core.CDICoreNature;
import org.jboss.tools.cdi.core.CDICorePlugin;
@@ -38,12 +47,16 @@
import org.jboss.tools.cdi.internal.core.impl.definition.AbstractMemberDefinition;
import org.jboss.tools.cdi.internal.core.impl.definition.AbstractTypeDefinition;
import org.jboss.tools.cdi.internal.core.impl.definition.AnnotationDefinition;
+import org.jboss.tools.common.CommonPlugin;
+import org.jboss.tools.common.editor.ObjectMultiPageEditor;
import org.jboss.tools.common.java.IAnnotated;
import org.jboss.tools.common.java.IAnnotationDeclaration;
+import org.jboss.tools.common.java.IJavaMemberReference;
import org.jboss.tools.common.java.IParametedType;
import org.jboss.tools.common.java.ITypeDeclaration;
import org.jboss.tools.common.java.ParametedType;
import org.jboss.tools.common.java.TypeDeclaration;
+import org.jboss.tools.common.model.ui.editor.EditorPartWrapper;
import org.jboss.tools.common.text.ITextSourceReference;
/**
@@ -356,5 +369,44 @@
}
return result;
}
+
+ public void open() {
+ if(getDefinition().getOriginalDefinition() != null) {
+ IEditorPart part = null;
+ ITextSourceReference source = getDefinition().getOriginalDefinition();
+ IFile resource = (IFile)source.getResource();
+ IWorkbenchWindow window = CDICorePlugin.getDefault().getWorkbench().getActiveWorkbenchWindow();
+ if (window == null) return;
+ IWorkbenchPage page = window.getActivePage();
+ try {
+ part = IDE.openEditor(page, resource);
+ } catch (PartInitException e) {
+ CDICorePlugin.getDefault().logError(e);
+ }
+ if(part instanceof EditorPartWrapper) {
+ part = ((EditorPartWrapper)part).getEditor();
+ }
+ if(part instanceof ObjectMultiPageEditor) {
+ ObjectMultiPageEditor mpe = (ObjectMultiPageEditor)part;
+ ITextEditor textEditor = (ITextEditor)mpe.getAdapter(ITextEditor.class);
+ if(textEditor != null) {
+ mpe.setActiveEditor(textEditor);
+ part = textEditor;
+ }
+ }
+ if(part != null) {
+ part.getEditorSite().getSelectionProvider().setSelection(new TextSelection(source.getStartPosition(), source.getLength()));
+ }
+ } else if (this instanceof IJavaMemberReference) {
+ IMember member = ((IJavaMemberReference)this).getSourceMember();
+ try {
+ JavaUI.openInEditor(member);
+ } catch (PartInitException e) {
+ CommonPlugin.getDefault().logError(e);
+ } catch (JavaModelException e) {
+ CommonPlugin.getDefault().logError(e);
+ }
+ }
+ }
}
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/EventBean.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/EventBean.java 2011-09-09 15:18:47 UTC (rev 34605)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/EventBean.java 2011-09-09 16:22:00 UTC (rev 34606)
@@ -181,4 +181,10 @@
}
return "";
}
+
+ @Override
+ public void open() {
+ // TODO Auto-generated method stub
+
+ }
}
\ No newline at end of file
14 years, 7 months
JBoss Tools SVN: r34605 - in trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core: internal/marshalling and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2011-09-09 11:18:47 -0400 (Fri, 09 Sep 2011)
New Revision: 34605
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/SSHKey.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/AbstractJsonMarshaller.java
Log:
[JBIDE-9510] implementing create domain (create domain test now passes!)
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/SSHKey.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/SSHKey.java 2011-09-09 14:16:21 UTC (rev 34604)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/SSHKey.java 2011-09-09 15:18:47 UTC (rev 34605)
@@ -22,6 +22,15 @@
*/
public class SSHKey {
+ /**
+ * the length of the key that is created when using #create. ssh-keygen uses
+ * a default of 2048
+ *
+ * @see #create(String, String, String)
+ * @see http://en.wikipedia.org/wiki/Ssh-keygen
+ */
+ private static final int KEYLENGTH = 2048;
+
private KeyPair keyPair;
private String privateKeyPath;
private String publicKeyPath;
@@ -49,7 +58,7 @@
public static SSHKey create(String passPhrase, String privateKeyPath, String publicKeyPath)
throws OpenshiftException {
try {
- KeyPair keyPair = KeyPair.genKeyPair(new JSch(), KeyPair.RSA);
+ KeyPair keyPair = KeyPair.genKeyPair(new JSch(), KeyPair.RSA, KEYLENGTH);
keyPair.setPassphrase(passPhrase);
keyPair.writePublicKey(publicKeyPath, "created by " + OpenshiftCoreActivator.PLUGIN_ID);
keyPair.writePrivateKey(privateKeyPath);
@@ -62,8 +71,10 @@
/**
* Loads existing private and public ssh key from the given paths.
*
- * @param privateKeyPath the path to the private key
- * @param publicKeyPath the path to the public key
+ * @param privateKeyPath
+ * the path to the private key
+ * @param publicKeyPath
+ * the path to the public key
* @return
* @throws OpenshiftException
*/
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/AbstractJsonMarshaller.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/AbstractJsonMarshaller.java 2011-09-09 14:16:21 UTC (rev 34604)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/AbstractJsonMarshaller.java 2011-09-09 15:18:47 UTC (rev 34605)
@@ -33,7 +33,7 @@
}
protected void setStringProperty(String propertyName, Object value, ModelNode node) {
- if (isSet(value)) {
+ if (!isSet(value)) {
if (value instanceof String) {
setStringProperty((String) value, propertyName, node);
}
@@ -41,7 +41,7 @@
}
protected void setStringProperty(String propertyName, String value, ModelNode node) {
- if (isSet(value)) {
+ if (!isSet(value)) {
return;
}
14 years, 7 months
JBoss Tools SVN: r34604 - in trunk/as/plugins: org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core and 1 other directories.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2011-09-09 10:16:21 -0400 (Fri, 09 Sep 2011)
New Revision: 34604
Added:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/OpenshiftIntegrationTestSuite.java
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IOpenshiftService.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/OpenshiftService.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/DomainIntegrationTest.java
Log:
[JBIDE-9510] implementing create domain
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IOpenshiftService.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IOpenshiftService.java 2011-09-09 14:14:33 UTC (rev 34603)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IOpenshiftService.java 2011-09-09 14:16:21 UTC (rev 34604)
@@ -29,6 +29,6 @@
public SSHKey createKey(String passPhrase, String privateKeyPath, String publicKeyPath) throws OpenshiftException;
- public SSHKey loadKey(String passPhrase, String privateKeyPath, String publicKeyPath) throws OpenshiftException;
+ public SSHKey loadKey(String privateKeyPath, String publicKeyPath) throws OpenshiftException;
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/OpenshiftService.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/OpenshiftService.java 2011-09-09 14:14:33 UTC (rev 34603)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/OpenshiftService.java 2011-09-09 14:16:21 UTC (rev 34604)
@@ -103,7 +103,7 @@
}
@Override
- public SSHKey loadKey(String passPhrase, String privateKeyPath, String publicKeyPath) throws OpenshiftException {
+ public SSHKey loadKey(String privateKeyPath, String publicKeyPath) throws OpenshiftException {
return SSHKey.load(privateKeyPath, publicKeyPath);
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/DomainIntegrationTest.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/DomainIntegrationTest.java 2011-09-09 14:14:33 UTC (rev 34603)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/DomainIntegrationTest.java 2011-09-09 14:16:21 UTC (rev 34604)
@@ -13,6 +13,9 @@
import static org.junit.Assert.assertNotNull;
import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.io.StringReader;
import org.jboss.ide.eclipse.as.openshift.core.Domain;
import org.jboss.ide.eclipse.as.openshift.core.SSHKey;
@@ -24,9 +27,37 @@
private OpenshiftService openshiftService;
- private static final String USERNAME = "toolsjboss(a)gmail.com";
+ private static final String USERNAME = "openshift.only.domain(a)gmail.com";
private static final String PASSWORD = "1q2w3e";
+ private static final String privateKey =
+ "-----BEGIN RSA PRIVATE KEY-----\n" +
+ "Proc-Type: 4,ENCRYPTED\n" +
+ "DEK-Info: DES-EDE3-CBC,30E8B3A668E44D77\n" +
+ "\n" +
+ "wsXCU31SUTYhjPnOiW56UlZ7VXKlIjItLo5Wrk5LwCLv/OERK7UWJkrwM2bHPb6n\n" +
+ "3zAaDDZfQe786URQjfmUYWBdVeI7DrRMwoLaaUcR1tuJtMu3Jv3CK72YMkOzGapZ\n" +
+ "ZAAoTno/GRhTwptXG1KPSqKyzfqlxjbZry1HZmY+P6ikw9DWOPZC6rISIqQ3u9zm\n" +
+ "iPvi/Oo7JWZtX1d1MYp3vVt2bo2duD4RSoXWWaW471WUOIQZUh0V4dxp+eAHZziu\n" +
+ "osAfU4WoIrrSCSVl2uiKS2Zijn77PvcCXnm45eMQpww32AlslzIBNsMzUXhPtVAZ\n" +
+ "a9uvfZxlOIRu4ObN7AB3WExucbBHCvTOgxpSs95br1QtfMVl62d9VkIAXg1x9gH8\n" +
+ "kjcEP+0OS3EItYTFj1tCKC8GgBImj44AxbPSWu3SfTnYfAtFnO0pUqhPOBN63DCC\n" +
+ "XxzMm13UeER7Z3s968Swa48r6LRAbHI8JD0Ld4E02fgBYM/N/aGtPppD0FoJJwo3\n" +
+ "QVafS2PY+bALgy4qrI9daOo1mTS3gWDSAG0QbLoKd3hD8ZnLEk6rfR/0SE34Fc7j\n" +
+ "mviCy78C16hkllhWz27ROl5pheHV0Xt6ZlUsNWVz7tg/AcIFB0geMuzuM0Kd7ufj\n" +
+ "g5c8mhlI06n4vzo0uB6UXtwTBzNqyUl8yxA31S2VJfBZxkEwKc5cktNUiejQuWbU\n" +
+ "iwapdiSR0gNGyYBNMYax9OOfYH+BBQeD5kboVU3yvT7UNcz0T9GZiEhfvcaYSP8C\n" +
+ "ejQ1vuTNTKMrgyLpNi/4Sq8lm8OukRqQyE0EKYCwvkI=\n" +
+ "-----END RSA PRIVATE KEY-----";
+
+ private static final String publicKey =
+ "ssh-rsa "
+ +
+ "AAAAB3NzaC1yc2EAAAADAQABAAAAgQC6BGRDydfGsQHhnZgo43dEfLzSJBke/hE8MLBBG1+5Z" +
+ "wktsrE+f2VdVt0McRLVAO6rdJRyMUX0rTbm7SABRVSX+zeQjlfqbbUtYFc7TIfd4RQc3GaISG" +
+ "1rS3C4svRSjdWaG36vDY2KxowdFvpKj8i8IYNPlLoRA/7EzzyneS6iyw" +
+ "== created by org.jboss.ide.eclipse.as.openshift.core";
+
@Before
public void setUp() {
this.openshiftService = new OpenshiftService(USERNAME, PASSWORD);
@@ -34,15 +65,40 @@
@Test
public void canCreateDomain() throws Exception {
+ File privateKeyFile = File.createTempFile(createRandomString(), null);
+ writeTo(privateKey, privateKeyFile);
+
+ File publicKeyFile = File.createTempFile(createRandomString(), null);
+ writeTo(publicKey, publicKeyFile);
+
+ SSHKey key = openshiftService.loadKey(privateKeyFile.getAbsolutePath(), publicKeyFile.getAbsolutePath());
String domainName = createRandomString();
- File publicKey = File.createTempFile(createRandomString(), null);
- File privateKey = File.createTempFile(createRandomString(), null);
- SSHKey key = openshiftService.createKey("12345", privateKey.getAbsolutePath(), publicKey.getAbsolutePath());
Domain domain = openshiftService.createDomain(domainName, key);
+
assertNotNull(domain);
}
private String createRandomString() {
return String.valueOf(System.currentTimeMillis());
}
+
+ private void writeTo(String data, File file) throws IOException {
+ StringReader reader = null;
+ FileWriter writer = null;
+ try {
+ writer = new FileWriter(file);
+ reader = new StringReader(data);
+ for (int character = -1; (character = reader.read()) != -1;) {
+ writer.write(character);
+ }
+ } finally {
+ if (writer != null) {
+ writer.flush();
+ writer.close();
+ }
+ if (reader != null) {
+ reader.close();
+ }
+ }
+ }
}
Added: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/OpenshiftIntegrationTestSuite.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/OpenshiftIntegrationTestSuite.java (rev 0)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/OpenshiftIntegrationTestSuite.java 2011-09-09 14:16:21 UTC (rev 34604)
@@ -0,0 +1,28 @@
+/*******************************************************************************
+ * Copyright (c) 2007 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.openshift.internal.test.core;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+
+
+(a)RunWith(Suite.class)
+(a)Suite.SuiteClasses({
+ ApplicationIntegrationTest.class,
+ CartridgesIntegrationTest.class,
+ DomainIntegrationTest.class
+})
+/**
+ * @author André Dietisheim
+ */
+public class OpenshiftIntegrationTestSuite {
+
+}
Property changes on: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/OpenshiftIntegrationTestSuite.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
14 years, 7 months
JBoss Tools SVN: r34603 - trunk/documentation/whatsnew.
by jbosstools-commits@lists.jboss.org
Author: yradtsevich
Date: 2011-09-09 10:14:33 -0400 (Fri, 09 Sep 2011)
New Revision: 34603
Modified:
trunk/documentation/whatsnew/index.html
Log:
https://issues.jboss.org/browse/JBIDE-9622: JBIDE-9622 CLONE - CLONE - CLONE - Visual Editor Component N&N
https://issues.jboss.org/browse/JBIDE-9620 : CLONE - CLONE - CLONE - JST/JSF Components N&N
- Added missing VPE and JST/JSF N&N links to the main page
Modified: trunk/documentation/whatsnew/index.html
===================================================================
--- trunk/documentation/whatsnew/index.html 2011-09-09 13:27:14 UTC (rev 34602)
+++ trunk/documentation/whatsnew/index.html 2011-09-09 14:14:33 UTC (rev 34603)
@@ -41,6 +41,8 @@
<p><a href="core/core-news-3.3.0.M3.html">Core/General</a></p>
<p><a href="forge/forge-news-3.3.0.M3.html">Forge Tools</a></p>
<p><a href="as/as-news-3.3.0.M3.html">JBoss AS Server Tools</a></p>
+ <p><a href="jst/jst-news-3.3.0.M3.html">JST/JSF 3.3.0.M3</a></p>
+ <p><a href="vpe/vpe-news-3.3.0.M3.html">Visual Page Editor 3.3.0.M3</a></p>
<p><a href="cdi/cdi-news-3.3.0.M3.html">CDI/Seam 3 Tools</a></p>
<p><a href="gwt/gwt-news-1.0.2.M3.html">GWT Tools</a></p>
<p><a href="hibernate/hibernate-news-3.5.0.M3.html">Hibernate Tools</a></p>
14 years, 7 months
JBoss Tools SVN: r34602 - branches/jbosstools-3.3.0.M3/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java.
by jbosstools-commits@lists.jboss.org
Author: dgeraskov
Date: 2011-09-09 09:27:14 -0400 (Fri, 09 Sep 2011)
New Revision: 34602
Modified:
branches/jbosstools-3.3.0.M3/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedNativeQueryAnnotation.java
branches/jbosstools-3.3.0.M3/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedQueryAnnotation.java
Log:
https://issues.jboss.org/browse/JBIDE-9562
Fix standalone-nested problems for hibernate queries annotations
Modified: branches/jbosstools-3.3.0.M3/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedNativeQueryAnnotation.java
===================================================================
--- branches/jbosstools-3.3.0.M3/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedNativeQueryAnnotation.java 2011-09-09 12:42:45 UTC (rev 34601)
+++ branches/jbosstools-3.3.0.M3/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedNativeQueryAnnotation.java 2011-09-09 13:27:14 UTC (rev 34602)
@@ -50,54 +50,54 @@
public static final SimpleDeclarationAnnotationAdapter DECLARATION_ANNOTATION_ADAPTER = new SimpleDeclarationAnnotationAdapter(ANNOTATION_NAME);
- private final DeclarationAnnotationElementAdapter<String> nameDeclarationAdapter;
- private final AnnotationElementAdapter<String> nameAdapter;
+ private DeclarationAnnotationElementAdapter<String> nameDeclarationAdapter;
+ private AnnotationElementAdapter<String> nameAdapter;
private String name;
TextRange nameTextRange;
- private final DeclarationAnnotationElementAdapter<String> queryDeclarationAdapter;
- private final AnnotationElementAdapter<String> queryAdapter;
+ private DeclarationAnnotationElementAdapter<String> queryDeclarationAdapter;
+ private AnnotationElementAdapter<String> queryAdapter;
private String query;
TextRange queryTextRange;
- private final DeclarationAnnotationElementAdapter<String> flushModeDeclarationAdapter;
- private final AnnotationElementAdapter<String> flushModeAdapter;
+ private DeclarationAnnotationElementAdapter<String> flushModeDeclarationAdapter;
+ private AnnotationElementAdapter<String> flushModeAdapter;
private FlushModeType flushMode;
- private final DeclarationAnnotationElementAdapter<String> cacheModeDeclarationAdapter;
- private final AnnotationElementAdapter<String> cacheModeAdapter;
+ private DeclarationAnnotationElementAdapter<String> cacheModeDeclarationAdapter;
+ private AnnotationElementAdapter<String> cacheModeAdapter;
private CacheModeType cacheMode;
- private final DeclarationAnnotationElementAdapter<Boolean> cacheableDeclarationAdapter;
- private final AnnotationElementAdapter<Boolean> cacheableAdapter;
+ private DeclarationAnnotationElementAdapter<Boolean> cacheableDeclarationAdapter;
+ private AnnotationElementAdapter<Boolean> cacheableAdapter;
private Boolean cacheable;
- private final DeclarationAnnotationElementAdapter<String> cacheRegionDeclarationAdapter;
- private final AnnotationElementAdapter<String> cacheRegionAdapter;
+ private DeclarationAnnotationElementAdapter<String> cacheRegionDeclarationAdapter;
+ private AnnotationElementAdapter<String> cacheRegionAdapter;
private String cacheRegion;
- private final DeclarationAnnotationElementAdapter<Integer> fetchSizeDeclarationAdapter;
- private final AnnotationElementAdapter<Integer> fetchSizeAdapter;
+ private DeclarationAnnotationElementAdapter<Integer> fetchSizeDeclarationAdapter;
+ private AnnotationElementAdapter<Integer> fetchSizeAdapter;
private Integer fetchSize;
- private final DeclarationAnnotationElementAdapter<Integer> timeoutDeclarationAdapter;
- private final AnnotationElementAdapter<Integer> timeoutAdapter;
+ private DeclarationAnnotationElementAdapter<Integer> timeoutDeclarationAdapter;
+ private AnnotationElementAdapter<Integer> timeoutAdapter;
private Integer timeout;
- private final DeclarationAnnotationElementAdapter<String> commentDeclarationAdapter;
- private final AnnotationElementAdapter<String> commentAdapter;
+ private DeclarationAnnotationElementAdapter<String> commentDeclarationAdapter;
+ private AnnotationElementAdapter<String> commentAdapter;
private String comment;
- private final DeclarationAnnotationElementAdapter<Boolean> readOnlyDeclarationAdapter;
- private final AnnotationElementAdapter<Boolean> readOnlyAdapter;
+ private DeclarationAnnotationElementAdapter<Boolean> readOnlyDeclarationAdapter;
+ private AnnotationElementAdapter<Boolean> readOnlyAdapter;
private Boolean readOnly;
- private final DeclarationAnnotationElementAdapter<Boolean> callableDeclarationAdapter;
- private final AnnotationElementAdapter<Boolean> callableAdapter;
+ private DeclarationAnnotationElementAdapter<Boolean> callableDeclarationAdapter;
+ private AnnotationElementAdapter<Boolean> callableAdapter;
private Boolean callable;
- private final DeclarationAnnotationElementAdapter<String> resultClassDeclarationAdapter;
- private final AnnotationElementAdapter<String> resultClassAdapter;
+ private DeclarationAnnotationElementAdapter<String> resultClassDeclarationAdapter;
+ private AnnotationElementAdapter<String> resultClassAdapter;
private String resultClass;
/**
@@ -107,34 +107,34 @@
// we need a flag since the f-q name can be null
private boolean fqResultClassNameStale = true;
- private final DeclarationAnnotationElementAdapter<String> resultSetMappingDeclarationAdapter;
- private final AnnotationElementAdapter<String> resultSetMappingAdapter;
+ private DeclarationAnnotationElementAdapter<String> resultSetMappingDeclarationAdapter;
+ private AnnotationElementAdapter<String> resultSetMappingAdapter;
private String resultSetMapping;
- HibernateSourceNamedNativeQueryAnnotation(JavaResourceNode parent, AnnotatedElement member,DeclarationAnnotationAdapter daa, AnnotationAdapter annotationAdapter) {
- super(parent, member, daa, annotationAdapter);
+ HibernateSourceNamedNativeQueryAnnotation(JavaResourceNode parent, AnnotatedElement annotatedElement,DeclarationAnnotationAdapter daa, AnnotationAdapter annotationAdapter) {
+ super(parent, annotatedElement, daa, annotationAdapter);
this.nameDeclarationAdapter = this.buildNameAdapter(daa);
this.nameAdapter = this.buildAdapter(this.nameDeclarationAdapter);
this.queryDeclarationAdapter = this.buildQueryAdapter(daa);
this.queryAdapter = this.buildAdapter(this.queryDeclarationAdapter);
this.flushModeDeclarationAdapter = this.buildFlushModeAdapter(daa);
- this.flushModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(member, this.flushModeDeclarationAdapter);
+ this.flushModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(annotatedElement, this.flushModeDeclarationAdapter);
this.cacheModeDeclarationAdapter = this.buildCacheModeAdapter(daa);
- this.cacheModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(member, this.cacheModeDeclarationAdapter);
+ this.cacheModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(annotatedElement, this.cacheModeDeclarationAdapter);
this.cacheableDeclarationAdapter = this.buildCacheableAdapter(daa);
- this.cacheableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(member, this.cacheableDeclarationAdapter);
+ this.cacheableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(annotatedElement, this.cacheableDeclarationAdapter);
this.cacheRegionDeclarationAdapter = this.buildCacheRegionAdapter(daa);
this.cacheRegionAdapter = this.buildAdapter(this.cacheRegionDeclarationAdapter);
this.fetchSizeDeclarationAdapter = this.buildFetchSizeAdapter(daa);
- this.fetchSizeAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(member, this.fetchSizeDeclarationAdapter);
+ this.fetchSizeAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(annotatedElement, this.fetchSizeDeclarationAdapter);
this.timeoutDeclarationAdapter = this.buildTimeoutAdapter(daa);
- this.timeoutAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(member, this.timeoutDeclarationAdapter);
+ this.timeoutAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(annotatedElement, this.timeoutDeclarationAdapter);
this.commentDeclarationAdapter = this.buildCommentAdapter(daa);
- this.commentAdapter = new ShortCircuitAnnotationElementAdapter<String>(member, this.commentDeclarationAdapter);
+ this.commentAdapter = new ShortCircuitAnnotationElementAdapter<String>(annotatedElement, this.commentDeclarationAdapter);
this.readOnlyDeclarationAdapter = this.buildReadOnlyAdapter(daa);
- this.readOnlyAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(member, this.readOnlyDeclarationAdapter);
+ this.readOnlyAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(annotatedElement, this.readOnlyDeclarationAdapter);
this.callableDeclarationAdapter = this.buildReadOnlyAdapter(daa);
- this.callableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(member, this.callableDeclarationAdapter);
+ this.callableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(annotatedElement, this.callableDeclarationAdapter);
this.resultClassDeclarationAdapter = this.buildResultClassAdapter(daa);
this.resultClassAdapter = this.buildAdapter(this.resultClassDeclarationAdapter);
this.resultSetMappingDeclarationAdapter = this.buildResultSetMappingAdapter(daa);
@@ -652,7 +652,52 @@
this.setResultClass((String) map.get(RESULT_CLASS_PROPERTY));
this.setResultSetMapping((String) map.get(RESULT_SET_MAPPING_PROPERTY));
}
+
+ @Override
+ public boolean isUnset() {
+ return super.isUnset() &&
+ (this.name == null) &&
+ (this.query == null) &&
+ (this.flushMode == null) &&
+ (this.cacheMode == null) &&
+ (this.cacheable == null) &&
+ (this.cacheRegion == null) &&
+ (this.fetchSize == null) &&
+ (this.comment == null) &&
+ (this.readOnly == null);
+ }
+ @Override
+ protected void rebuildAdapters() {
+ super.rebuildAdapters();
+ this.nameDeclarationAdapter = this.buildNameAdapter(daa);
+ this.nameAdapter = this.buildAdapter(this.nameDeclarationAdapter);
+ this.queryDeclarationAdapter = this.buildQueryAdapter(daa);
+ this.queryAdapter = this.buildAdapter(this.queryDeclarationAdapter);
+ this.flushModeDeclarationAdapter = this.buildFlushModeAdapter(daa);
+ this.flushModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(this.annotatedElement, this.flushModeDeclarationAdapter);
+ this.cacheModeDeclarationAdapter = this.buildCacheModeAdapter(daa);
+ this.cacheModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(this.annotatedElement, this.cacheModeDeclarationAdapter);
+ this.cacheableDeclarationAdapter = this.buildCacheableAdapter(daa);
+ this.cacheableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(this.annotatedElement, this.cacheableDeclarationAdapter);
+ this.cacheRegionDeclarationAdapter = this.buildCacheRegionAdapter(daa);
+ this.cacheRegionAdapter = this.buildAdapter(this.cacheRegionDeclarationAdapter);
+ this.fetchSizeDeclarationAdapter = this.buildFetchSizeAdapter(daa);
+ this.fetchSizeAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(this.annotatedElement, this.fetchSizeDeclarationAdapter);
+ this.timeoutDeclarationAdapter = this.buildTimeoutAdapter(daa);
+ this.timeoutAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(this.annotatedElement, this.timeoutDeclarationAdapter);
+ this.commentDeclarationAdapter = this.buildCommentAdapter(daa);
+ this.commentAdapter = new ShortCircuitAnnotationElementAdapter<String>(this.annotatedElement, this.commentDeclarationAdapter);
+ this.readOnlyDeclarationAdapter = this.buildReadOnlyAdapter(daa);
+ this.readOnlyAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(this.annotatedElement, this.readOnlyDeclarationAdapter);
+ this.callableDeclarationAdapter = this.buildReadOnlyAdapter(daa);
+ this.callableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(this.annotatedElement, this.callableDeclarationAdapter);
+ this.resultClassDeclarationAdapter = this.buildResultClassAdapter(daa);
+ this.resultClassAdapter = this.buildAdapter(this.resultClassDeclarationAdapter);
+ this.resultSetMappingDeclarationAdapter = this.buildResultSetMappingAdapter(daa);
+ this.resultSetMappingAdapter = this.buildAdapter(this.resultSetMappingDeclarationAdapter);
+ }
+
/**
* convenience implementation of method from NestableAnnotation interface
* for subclasses
Modified: branches/jbosstools-3.3.0.M3/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedQueryAnnotation.java
===================================================================
--- branches/jbosstools-3.3.0.M3/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedQueryAnnotation.java 2011-09-09 12:42:45 UTC (rev 34601)
+++ branches/jbosstools-3.3.0.M3/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedQueryAnnotation.java 2011-09-09 13:27:14 UTC (rev 34602)
@@ -47,71 +47,71 @@
public static final SimpleDeclarationAnnotationAdapter DECLARATION_ANNOTATION_ADAPTER = new SimpleDeclarationAnnotationAdapter(ANNOTATION_NAME);
- private final DeclarationAnnotationElementAdapter<String> nameDeclarationAdapter;
- private final AnnotationElementAdapter<String> nameAdapter;
+ private DeclarationAnnotationElementAdapter<String> nameDeclarationAdapter;
+ private AnnotationElementAdapter<String> nameAdapter;
private String name;
TextRange nameTextRange;
- private final DeclarationAnnotationElementAdapter<String> queryDeclarationAdapter;
- private final AnnotationElementAdapter<String> queryAdapter;
+ private DeclarationAnnotationElementAdapter<String> queryDeclarationAdapter;
+ private AnnotationElementAdapter<String> queryAdapter;
private String query;
TextRange queryTextRange;
- private final DeclarationAnnotationElementAdapter<String> flushModeDeclarationAdapter;
- private final AnnotationElementAdapter<String> flushModeAdapter;
+ private DeclarationAnnotationElementAdapter<String> flushModeDeclarationAdapter;
+ private AnnotationElementAdapter<String> flushModeAdapter;
private FlushModeType flushMode;
- private final DeclarationAnnotationElementAdapter<String> cacheModeDeclarationAdapter;
- private final AnnotationElementAdapter<String> cacheModeAdapter;
+ private DeclarationAnnotationElementAdapter<String> cacheModeDeclarationAdapter;
+ private AnnotationElementAdapter<String> cacheModeAdapter;
private CacheModeType cacheMode;
- private final DeclarationAnnotationElementAdapter<Boolean> cacheableDeclarationAdapter;
- private final AnnotationElementAdapter<Boolean> cacheableAdapter;
+ private DeclarationAnnotationElementAdapter<Boolean> cacheableDeclarationAdapter;
+ private AnnotationElementAdapter<Boolean> cacheableAdapter;
private Boolean cacheable;
- private final DeclarationAnnotationElementAdapter<String> cacheRegionDeclarationAdapter;
- private final AnnotationElementAdapter<String> cacheRegionAdapter;
+ private DeclarationAnnotationElementAdapter<String> cacheRegionDeclarationAdapter;
+ private AnnotationElementAdapter<String> cacheRegionAdapter;
private String cacheRegion;
- private final DeclarationAnnotationElementAdapter<Integer> fetchSizeDeclarationAdapter;
- private final AnnotationElementAdapter<Integer> fetchSizeAdapter;
+ private DeclarationAnnotationElementAdapter<Integer> fetchSizeDeclarationAdapter;
+ private AnnotationElementAdapter<Integer> fetchSizeAdapter;
private Integer fetchSize;
- private final DeclarationAnnotationElementAdapter<Integer> timeoutDeclarationAdapter;
- private final AnnotationElementAdapter<Integer> timeoutAdapter;
+ private DeclarationAnnotationElementAdapter<Integer> timeoutDeclarationAdapter;
+ private AnnotationElementAdapter<Integer> timeoutAdapter;
private Integer timeout;
- private final DeclarationAnnotationElementAdapter<String> commentDeclarationAdapter;
- private final AnnotationElementAdapter<String> commentAdapter;
+ private DeclarationAnnotationElementAdapter<String> commentDeclarationAdapter;
+ private AnnotationElementAdapter<String> commentAdapter;
private String comment;
- private final DeclarationAnnotationElementAdapter<Boolean> readOnlyDeclarationAdapter;
- private final AnnotationElementAdapter<Boolean> readOnlyAdapter;
+ private DeclarationAnnotationElementAdapter<Boolean> readOnlyDeclarationAdapter;
+ private AnnotationElementAdapter<Boolean> readOnlyAdapter;
private Boolean readOnly;
- HibernateSourceNamedQueryAnnotation(JavaResourceNode parent, AnnotatedElement member,DeclarationAnnotationAdapter daa, AnnotationAdapter annotationAdapter) {
- super(parent, member, daa, annotationAdapter);
+ HibernateSourceNamedQueryAnnotation(JavaResourceNode parent, AnnotatedElement annotatedElement, DeclarationAnnotationAdapter daa, AnnotationAdapter annotationAdapter) {
+ super(parent, annotatedElement, daa, annotationAdapter);
this.nameDeclarationAdapter = this.buildNameAdapter(daa);
this.nameAdapter = this.buildAdapter(this.nameDeclarationAdapter);
this.queryDeclarationAdapter = this.buildQueryAdapter(daa);
this.queryAdapter = this.buildAdapter(this.queryDeclarationAdapter);
this.flushModeDeclarationAdapter = this.buildFlushModeAdapter(daa);
- this.flushModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(member, this.flushModeDeclarationAdapter);
+ this.flushModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(annotatedElement, this.flushModeDeclarationAdapter);
this.cacheModeDeclarationAdapter = this.buildCacheModeAdapter(daa);
- this.cacheModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(member, this.cacheModeDeclarationAdapter);
+ this.cacheModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(annotatedElement, this.cacheModeDeclarationAdapter);
this.cacheableDeclarationAdapter = this.buildCacheableAdapter(daa);
- this.cacheableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(member, this.cacheableDeclarationAdapter);
+ this.cacheableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(annotatedElement, this.cacheableDeclarationAdapter);
this.cacheRegionDeclarationAdapter = this.buildCacheRegionAdapter(daa);
this.cacheRegionAdapter = this.buildAdapter(this.cacheRegionDeclarationAdapter);
this.fetchSizeDeclarationAdapter = this.buildFetchSizeAdapter(daa);
- this.fetchSizeAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(member, this.fetchSizeDeclarationAdapter);
+ this.fetchSizeAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(annotatedElement, this.fetchSizeDeclarationAdapter);
this.timeoutDeclarationAdapter = this.buildTimeoutAdapter(daa);
- this.timeoutAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(member, this.timeoutDeclarationAdapter);
+ this.timeoutAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(annotatedElement, this.timeoutDeclarationAdapter);
this.commentDeclarationAdapter = this.buildCommentAdapter(daa);
- this.commentAdapter = new ShortCircuitAnnotationElementAdapter<String>(member, this.commentDeclarationAdapter);
+ this.commentAdapter = new ShortCircuitAnnotationElementAdapter<String>(annotatedElement, this.commentDeclarationAdapter);
this.readOnlyDeclarationAdapter = this.buildReadOnlyAdapter(daa);
- this.readOnlyAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(member, this.readOnlyDeclarationAdapter);
+ this.readOnlyAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(annotatedElement, this.readOnlyDeclarationAdapter);
}
@Override
@@ -509,6 +509,45 @@
this.setReadOnly((Boolean) map.get(READ_ONLY_PROPERTY));
}
+ @Override
+ public boolean isUnset() {
+ return super.isUnset() &&
+ (this.name == null) &&
+ (this.query == null) &&
+ (this.flushMode == null) &&
+ (this.cacheMode == null) &&
+ (this.cacheable == null) &&
+ (this.cacheRegion == null) &&
+ (this.fetchSize == null) &&
+ (this.comment == null) &&
+ (this.readOnly == null);
+ }
+
+ @Override
+ protected void rebuildAdapters() {
+ super.rebuildAdapters();
+ this.nameDeclarationAdapter = this.buildNameAdapter(daa);
+ this.nameAdapter = this.buildAdapter(this.nameDeclarationAdapter);
+ this.queryDeclarationAdapter = this.buildQueryAdapter(daa);
+ this.queryAdapter = this.buildAdapter(this.queryDeclarationAdapter);
+ this.flushModeDeclarationAdapter = this.buildFlushModeAdapter(daa);
+ this.flushModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(this.annotatedElement, this.flushModeDeclarationAdapter);
+ this.cacheModeDeclarationAdapter = this.buildCacheModeAdapter(daa);
+ this.cacheModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(this.annotatedElement, this.cacheModeDeclarationAdapter);
+ this.cacheableDeclarationAdapter = this.buildCacheableAdapter(daa);
+ this.cacheableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(this.annotatedElement, this.cacheableDeclarationAdapter);
+ this.cacheRegionDeclarationAdapter = this.buildCacheRegionAdapter(daa);
+ this.cacheRegionAdapter = this.buildAdapter(this.cacheRegionDeclarationAdapter);
+ this.fetchSizeDeclarationAdapter = this.buildFetchSizeAdapter(daa);
+ this.fetchSizeAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(this.annotatedElement, this.fetchSizeDeclarationAdapter);
+ this.timeoutDeclarationAdapter = this.buildTimeoutAdapter(daa);
+ this.timeoutAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(this.annotatedElement, this.timeoutDeclarationAdapter);
+ this.commentDeclarationAdapter = this.buildCommentAdapter(daa);
+ this.commentAdapter = new ShortCircuitAnnotationElementAdapter<String>(this.annotatedElement, this.commentDeclarationAdapter);
+ this.readOnlyDeclarationAdapter = this.buildReadOnlyAdapter(daa);
+ this.readOnlyAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(this.annotatedElement, this.readOnlyDeclarationAdapter);
+ }
+
/**
* convenience implementation of method from NestableAnnotation interface
* for subclasses
14 years, 7 months
JBoss Tools SVN: r34601 - trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/launch.
by jbosstools-commits@lists.jboss.org
Author: rob.stryker(a)jboss.com
Date: 2011-09-09 08:42:45 -0400 (Fri, 09 Sep 2011)
New Revision: 34601
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/launch/JBTWebLaunchableClient.java
Log:
JBDS-1762 - don't do this for as7
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/launch/JBTWebLaunchableClient.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/launch/JBTWebLaunchableClient.java 2011-09-09 12:15:27 UTC (rev 34600)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/launch/JBTWebLaunchableClient.java 2011-09-09 12:42:45 UTC (rev 34601)
@@ -27,6 +27,8 @@
import org.jboss.ide.eclipse.as.core.extensions.events.IEventCodes;
import org.jboss.ide.eclipse.as.core.extensions.events.ServerLogger;
import org.jboss.ide.eclipse.as.core.server.internal.JBossLaunchAdapter.JBTCustomHttpLaunchable;
+import org.jboss.ide.eclipse.as.core.server.internal.JBossServer;
+import org.jboss.ide.eclipse.as.core.util.ServerConverter;
import org.jboss.ide.eclipse.as.ui.JBossServerUIPlugin;
public class JBTWebLaunchableClient extends ClientDelegate {
@@ -40,8 +42,9 @@
}
protected boolean shouldSuspendScanner(IServer server) {
- return server.getServerState() == IServer.STATE_STARTED
- && ExtensionManager.getDefault().getJMXRunner() != null;
+ JBossServer jbs = ServerConverter.getJBossServer(server);
+ return jbs != null && server.getServerState() == IServer.STATE_STARTED
+ && jbs.hasJMXProvider() && ExtensionManager.getDefault().getJMXRunner() != null;
}
public IStatus launch(final IServer server, final Object launchable, final String launchMode, final ILaunch launch) {
14 years, 7 months
JBoss Tools SVN: r34600 - trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java.
by jbosstools-commits@lists.jboss.org
Author: dgeraskov
Date: 2011-09-09 08:15:27 -0400 (Fri, 09 Sep 2011)
New Revision: 34600
Modified:
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedNativeQueryAnnotation.java
trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedQueryAnnotation.java
Log:
https://issues.jboss.org/browse/JBIDE-9562
Fix standalone-nested problems for hibernate queries annotations
Modified: trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedNativeQueryAnnotation.java
===================================================================
--- trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedNativeQueryAnnotation.java 2011-09-09 12:14:50 UTC (rev 34599)
+++ trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedNativeQueryAnnotation.java 2011-09-09 12:15:27 UTC (rev 34600)
@@ -50,54 +50,54 @@
public static final SimpleDeclarationAnnotationAdapter DECLARATION_ANNOTATION_ADAPTER = new SimpleDeclarationAnnotationAdapter(ANNOTATION_NAME);
- private final DeclarationAnnotationElementAdapter<String> nameDeclarationAdapter;
- private final AnnotationElementAdapter<String> nameAdapter;
+ private DeclarationAnnotationElementAdapter<String> nameDeclarationAdapter;
+ private AnnotationElementAdapter<String> nameAdapter;
private String name;
TextRange nameTextRange;
- private final DeclarationAnnotationElementAdapter<String> queryDeclarationAdapter;
- private final AnnotationElementAdapter<String> queryAdapter;
+ private DeclarationAnnotationElementAdapter<String> queryDeclarationAdapter;
+ private AnnotationElementAdapter<String> queryAdapter;
private String query;
TextRange queryTextRange;
- private final DeclarationAnnotationElementAdapter<String> flushModeDeclarationAdapter;
- private final AnnotationElementAdapter<String> flushModeAdapter;
+ private DeclarationAnnotationElementAdapter<String> flushModeDeclarationAdapter;
+ private AnnotationElementAdapter<String> flushModeAdapter;
private FlushModeType flushMode;
- private final DeclarationAnnotationElementAdapter<String> cacheModeDeclarationAdapter;
- private final AnnotationElementAdapter<String> cacheModeAdapter;
+ private DeclarationAnnotationElementAdapter<String> cacheModeDeclarationAdapter;
+ private AnnotationElementAdapter<String> cacheModeAdapter;
private CacheModeType cacheMode;
- private final DeclarationAnnotationElementAdapter<Boolean> cacheableDeclarationAdapter;
- private final AnnotationElementAdapter<Boolean> cacheableAdapter;
+ private DeclarationAnnotationElementAdapter<Boolean> cacheableDeclarationAdapter;
+ private AnnotationElementAdapter<Boolean> cacheableAdapter;
private Boolean cacheable;
- private final DeclarationAnnotationElementAdapter<String> cacheRegionDeclarationAdapter;
- private final AnnotationElementAdapter<String> cacheRegionAdapter;
+ private DeclarationAnnotationElementAdapter<String> cacheRegionDeclarationAdapter;
+ private AnnotationElementAdapter<String> cacheRegionAdapter;
private String cacheRegion;
- private final DeclarationAnnotationElementAdapter<Integer> fetchSizeDeclarationAdapter;
- private final AnnotationElementAdapter<Integer> fetchSizeAdapter;
+ private DeclarationAnnotationElementAdapter<Integer> fetchSizeDeclarationAdapter;
+ private AnnotationElementAdapter<Integer> fetchSizeAdapter;
private Integer fetchSize;
- private final DeclarationAnnotationElementAdapter<Integer> timeoutDeclarationAdapter;
- private final AnnotationElementAdapter<Integer> timeoutAdapter;
+ private DeclarationAnnotationElementAdapter<Integer> timeoutDeclarationAdapter;
+ private AnnotationElementAdapter<Integer> timeoutAdapter;
private Integer timeout;
- private final DeclarationAnnotationElementAdapter<String> commentDeclarationAdapter;
- private final AnnotationElementAdapter<String> commentAdapter;
+ private DeclarationAnnotationElementAdapter<String> commentDeclarationAdapter;
+ private AnnotationElementAdapter<String> commentAdapter;
private String comment;
- private final DeclarationAnnotationElementAdapter<Boolean> readOnlyDeclarationAdapter;
- private final AnnotationElementAdapter<Boolean> readOnlyAdapter;
+ private DeclarationAnnotationElementAdapter<Boolean> readOnlyDeclarationAdapter;
+ private AnnotationElementAdapter<Boolean> readOnlyAdapter;
private Boolean readOnly;
- private final DeclarationAnnotationElementAdapter<Boolean> callableDeclarationAdapter;
- private final AnnotationElementAdapter<Boolean> callableAdapter;
+ private DeclarationAnnotationElementAdapter<Boolean> callableDeclarationAdapter;
+ private AnnotationElementAdapter<Boolean> callableAdapter;
private Boolean callable;
- private final DeclarationAnnotationElementAdapter<String> resultClassDeclarationAdapter;
- private final AnnotationElementAdapter<String> resultClassAdapter;
+ private DeclarationAnnotationElementAdapter<String> resultClassDeclarationAdapter;
+ private AnnotationElementAdapter<String> resultClassAdapter;
private String resultClass;
/**
@@ -107,34 +107,34 @@
// we need a flag since the f-q name can be null
private boolean fqResultClassNameStale = true;
- private final DeclarationAnnotationElementAdapter<String> resultSetMappingDeclarationAdapter;
- private final AnnotationElementAdapter<String> resultSetMappingAdapter;
+ private DeclarationAnnotationElementAdapter<String> resultSetMappingDeclarationAdapter;
+ private AnnotationElementAdapter<String> resultSetMappingAdapter;
private String resultSetMapping;
- HibernateSourceNamedNativeQueryAnnotation(JavaResourceNode parent, AnnotatedElement member,DeclarationAnnotationAdapter daa, AnnotationAdapter annotationAdapter) {
- super(parent, member, daa, annotationAdapter);
+ HibernateSourceNamedNativeQueryAnnotation(JavaResourceNode parent, AnnotatedElement annotatedElement,DeclarationAnnotationAdapter daa, AnnotationAdapter annotationAdapter) {
+ super(parent, annotatedElement, daa, annotationAdapter);
this.nameDeclarationAdapter = this.buildNameAdapter(daa);
this.nameAdapter = this.buildAdapter(this.nameDeclarationAdapter);
this.queryDeclarationAdapter = this.buildQueryAdapter(daa);
this.queryAdapter = this.buildAdapter(this.queryDeclarationAdapter);
this.flushModeDeclarationAdapter = this.buildFlushModeAdapter(daa);
- this.flushModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(member, this.flushModeDeclarationAdapter);
+ this.flushModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(annotatedElement, this.flushModeDeclarationAdapter);
this.cacheModeDeclarationAdapter = this.buildCacheModeAdapter(daa);
- this.cacheModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(member, this.cacheModeDeclarationAdapter);
+ this.cacheModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(annotatedElement, this.cacheModeDeclarationAdapter);
this.cacheableDeclarationAdapter = this.buildCacheableAdapter(daa);
- this.cacheableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(member, this.cacheableDeclarationAdapter);
+ this.cacheableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(annotatedElement, this.cacheableDeclarationAdapter);
this.cacheRegionDeclarationAdapter = this.buildCacheRegionAdapter(daa);
this.cacheRegionAdapter = this.buildAdapter(this.cacheRegionDeclarationAdapter);
this.fetchSizeDeclarationAdapter = this.buildFetchSizeAdapter(daa);
- this.fetchSizeAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(member, this.fetchSizeDeclarationAdapter);
+ this.fetchSizeAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(annotatedElement, this.fetchSizeDeclarationAdapter);
this.timeoutDeclarationAdapter = this.buildTimeoutAdapter(daa);
- this.timeoutAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(member, this.timeoutDeclarationAdapter);
+ this.timeoutAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(annotatedElement, this.timeoutDeclarationAdapter);
this.commentDeclarationAdapter = this.buildCommentAdapter(daa);
- this.commentAdapter = new ShortCircuitAnnotationElementAdapter<String>(member, this.commentDeclarationAdapter);
+ this.commentAdapter = new ShortCircuitAnnotationElementAdapter<String>(annotatedElement, this.commentDeclarationAdapter);
this.readOnlyDeclarationAdapter = this.buildReadOnlyAdapter(daa);
- this.readOnlyAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(member, this.readOnlyDeclarationAdapter);
+ this.readOnlyAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(annotatedElement, this.readOnlyDeclarationAdapter);
this.callableDeclarationAdapter = this.buildReadOnlyAdapter(daa);
- this.callableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(member, this.callableDeclarationAdapter);
+ this.callableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(annotatedElement, this.callableDeclarationAdapter);
this.resultClassDeclarationAdapter = this.buildResultClassAdapter(daa);
this.resultClassAdapter = this.buildAdapter(this.resultClassDeclarationAdapter);
this.resultSetMappingDeclarationAdapter = this.buildResultSetMappingAdapter(daa);
@@ -652,7 +652,52 @@
this.setResultClass((String) map.get(RESULT_CLASS_PROPERTY));
this.setResultSetMapping((String) map.get(RESULT_SET_MAPPING_PROPERTY));
}
+
+ @Override
+ public boolean isUnset() {
+ return super.isUnset() &&
+ (this.name == null) &&
+ (this.query == null) &&
+ (this.flushMode == null) &&
+ (this.cacheMode == null) &&
+ (this.cacheable == null) &&
+ (this.cacheRegion == null) &&
+ (this.fetchSize == null) &&
+ (this.comment == null) &&
+ (this.readOnly == null);
+ }
+ @Override
+ protected void rebuildAdapters() {
+ super.rebuildAdapters();
+ this.nameDeclarationAdapter = this.buildNameAdapter(daa);
+ this.nameAdapter = this.buildAdapter(this.nameDeclarationAdapter);
+ this.queryDeclarationAdapter = this.buildQueryAdapter(daa);
+ this.queryAdapter = this.buildAdapter(this.queryDeclarationAdapter);
+ this.flushModeDeclarationAdapter = this.buildFlushModeAdapter(daa);
+ this.flushModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(this.annotatedElement, this.flushModeDeclarationAdapter);
+ this.cacheModeDeclarationAdapter = this.buildCacheModeAdapter(daa);
+ this.cacheModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(this.annotatedElement, this.cacheModeDeclarationAdapter);
+ this.cacheableDeclarationAdapter = this.buildCacheableAdapter(daa);
+ this.cacheableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(this.annotatedElement, this.cacheableDeclarationAdapter);
+ this.cacheRegionDeclarationAdapter = this.buildCacheRegionAdapter(daa);
+ this.cacheRegionAdapter = this.buildAdapter(this.cacheRegionDeclarationAdapter);
+ this.fetchSizeDeclarationAdapter = this.buildFetchSizeAdapter(daa);
+ this.fetchSizeAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(this.annotatedElement, this.fetchSizeDeclarationAdapter);
+ this.timeoutDeclarationAdapter = this.buildTimeoutAdapter(daa);
+ this.timeoutAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(this.annotatedElement, this.timeoutDeclarationAdapter);
+ this.commentDeclarationAdapter = this.buildCommentAdapter(daa);
+ this.commentAdapter = new ShortCircuitAnnotationElementAdapter<String>(this.annotatedElement, this.commentDeclarationAdapter);
+ this.readOnlyDeclarationAdapter = this.buildReadOnlyAdapter(daa);
+ this.readOnlyAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(this.annotatedElement, this.readOnlyDeclarationAdapter);
+ this.callableDeclarationAdapter = this.buildReadOnlyAdapter(daa);
+ this.callableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(this.annotatedElement, this.callableDeclarationAdapter);
+ this.resultClassDeclarationAdapter = this.buildResultClassAdapter(daa);
+ this.resultClassAdapter = this.buildAdapter(this.resultClassDeclarationAdapter);
+ this.resultSetMappingDeclarationAdapter = this.buildResultSetMappingAdapter(daa);
+ this.resultSetMappingAdapter = this.buildAdapter(this.resultSetMappingDeclarationAdapter);
+ }
+
/**
* convenience implementation of method from NestableAnnotation interface
* for subclasses
Modified: trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedQueryAnnotation.java
===================================================================
--- trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedQueryAnnotation.java 2011-09-09 12:14:50 UTC (rev 34599)
+++ trunk/hibernatetools/plugins/org.jboss.tools.hibernate.jpt.core/src/org/jboss/tools/hibernate/jpt/core/internal/resource/java/HibernateSourceNamedQueryAnnotation.java 2011-09-09 12:15:27 UTC (rev 34600)
@@ -47,71 +47,71 @@
public static final SimpleDeclarationAnnotationAdapter DECLARATION_ANNOTATION_ADAPTER = new SimpleDeclarationAnnotationAdapter(ANNOTATION_NAME);
- private final DeclarationAnnotationElementAdapter<String> nameDeclarationAdapter;
- private final AnnotationElementAdapter<String> nameAdapter;
+ private DeclarationAnnotationElementAdapter<String> nameDeclarationAdapter;
+ private AnnotationElementAdapter<String> nameAdapter;
private String name;
TextRange nameTextRange;
- private final DeclarationAnnotationElementAdapter<String> queryDeclarationAdapter;
- private final AnnotationElementAdapter<String> queryAdapter;
+ private DeclarationAnnotationElementAdapter<String> queryDeclarationAdapter;
+ private AnnotationElementAdapter<String> queryAdapter;
private String query;
TextRange queryTextRange;
- private final DeclarationAnnotationElementAdapter<String> flushModeDeclarationAdapter;
- private final AnnotationElementAdapter<String> flushModeAdapter;
+ private DeclarationAnnotationElementAdapter<String> flushModeDeclarationAdapter;
+ private AnnotationElementAdapter<String> flushModeAdapter;
private FlushModeType flushMode;
- private final DeclarationAnnotationElementAdapter<String> cacheModeDeclarationAdapter;
- private final AnnotationElementAdapter<String> cacheModeAdapter;
+ private DeclarationAnnotationElementAdapter<String> cacheModeDeclarationAdapter;
+ private AnnotationElementAdapter<String> cacheModeAdapter;
private CacheModeType cacheMode;
- private final DeclarationAnnotationElementAdapter<Boolean> cacheableDeclarationAdapter;
- private final AnnotationElementAdapter<Boolean> cacheableAdapter;
+ private DeclarationAnnotationElementAdapter<Boolean> cacheableDeclarationAdapter;
+ private AnnotationElementAdapter<Boolean> cacheableAdapter;
private Boolean cacheable;
- private final DeclarationAnnotationElementAdapter<String> cacheRegionDeclarationAdapter;
- private final AnnotationElementAdapter<String> cacheRegionAdapter;
+ private DeclarationAnnotationElementAdapter<String> cacheRegionDeclarationAdapter;
+ private AnnotationElementAdapter<String> cacheRegionAdapter;
private String cacheRegion;
- private final DeclarationAnnotationElementAdapter<Integer> fetchSizeDeclarationAdapter;
- private final AnnotationElementAdapter<Integer> fetchSizeAdapter;
+ private DeclarationAnnotationElementAdapter<Integer> fetchSizeDeclarationAdapter;
+ private AnnotationElementAdapter<Integer> fetchSizeAdapter;
private Integer fetchSize;
- private final DeclarationAnnotationElementAdapter<Integer> timeoutDeclarationAdapter;
- private final AnnotationElementAdapter<Integer> timeoutAdapter;
+ private DeclarationAnnotationElementAdapter<Integer> timeoutDeclarationAdapter;
+ private AnnotationElementAdapter<Integer> timeoutAdapter;
private Integer timeout;
- private final DeclarationAnnotationElementAdapter<String> commentDeclarationAdapter;
- private final AnnotationElementAdapter<String> commentAdapter;
+ private DeclarationAnnotationElementAdapter<String> commentDeclarationAdapter;
+ private AnnotationElementAdapter<String> commentAdapter;
private String comment;
- private final DeclarationAnnotationElementAdapter<Boolean> readOnlyDeclarationAdapter;
- private final AnnotationElementAdapter<Boolean> readOnlyAdapter;
+ private DeclarationAnnotationElementAdapter<Boolean> readOnlyDeclarationAdapter;
+ private AnnotationElementAdapter<Boolean> readOnlyAdapter;
private Boolean readOnly;
- HibernateSourceNamedQueryAnnotation(JavaResourceNode parent, AnnotatedElement member,DeclarationAnnotationAdapter daa, AnnotationAdapter annotationAdapter) {
- super(parent, member, daa, annotationAdapter);
+ HibernateSourceNamedQueryAnnotation(JavaResourceNode parent, AnnotatedElement annotatedElement, DeclarationAnnotationAdapter daa, AnnotationAdapter annotationAdapter) {
+ super(parent, annotatedElement, daa, annotationAdapter);
this.nameDeclarationAdapter = this.buildNameAdapter(daa);
this.nameAdapter = this.buildAdapter(this.nameDeclarationAdapter);
this.queryDeclarationAdapter = this.buildQueryAdapter(daa);
this.queryAdapter = this.buildAdapter(this.queryDeclarationAdapter);
this.flushModeDeclarationAdapter = this.buildFlushModeAdapter(daa);
- this.flushModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(member, this.flushModeDeclarationAdapter);
+ this.flushModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(annotatedElement, this.flushModeDeclarationAdapter);
this.cacheModeDeclarationAdapter = this.buildCacheModeAdapter(daa);
- this.cacheModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(member, this.cacheModeDeclarationAdapter);
+ this.cacheModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(annotatedElement, this.cacheModeDeclarationAdapter);
this.cacheableDeclarationAdapter = this.buildCacheableAdapter(daa);
- this.cacheableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(member, this.cacheableDeclarationAdapter);
+ this.cacheableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(annotatedElement, this.cacheableDeclarationAdapter);
this.cacheRegionDeclarationAdapter = this.buildCacheRegionAdapter(daa);
this.cacheRegionAdapter = this.buildAdapter(this.cacheRegionDeclarationAdapter);
this.fetchSizeDeclarationAdapter = this.buildFetchSizeAdapter(daa);
- this.fetchSizeAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(member, this.fetchSizeDeclarationAdapter);
+ this.fetchSizeAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(annotatedElement, this.fetchSizeDeclarationAdapter);
this.timeoutDeclarationAdapter = this.buildTimeoutAdapter(daa);
- this.timeoutAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(member, this.timeoutDeclarationAdapter);
+ this.timeoutAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(annotatedElement, this.timeoutDeclarationAdapter);
this.commentDeclarationAdapter = this.buildCommentAdapter(daa);
- this.commentAdapter = new ShortCircuitAnnotationElementAdapter<String>(member, this.commentDeclarationAdapter);
+ this.commentAdapter = new ShortCircuitAnnotationElementAdapter<String>(annotatedElement, this.commentDeclarationAdapter);
this.readOnlyDeclarationAdapter = this.buildReadOnlyAdapter(daa);
- this.readOnlyAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(member, this.readOnlyDeclarationAdapter);
+ this.readOnlyAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(annotatedElement, this.readOnlyDeclarationAdapter);
}
@Override
@@ -509,6 +509,45 @@
this.setReadOnly((Boolean) map.get(READ_ONLY_PROPERTY));
}
+ @Override
+ public boolean isUnset() {
+ return super.isUnset() &&
+ (this.name == null) &&
+ (this.query == null) &&
+ (this.flushMode == null) &&
+ (this.cacheMode == null) &&
+ (this.cacheable == null) &&
+ (this.cacheRegion == null) &&
+ (this.fetchSize == null) &&
+ (this.comment == null) &&
+ (this.readOnly == null);
+ }
+
+ @Override
+ protected void rebuildAdapters() {
+ super.rebuildAdapters();
+ this.nameDeclarationAdapter = this.buildNameAdapter(daa);
+ this.nameAdapter = this.buildAdapter(this.nameDeclarationAdapter);
+ this.queryDeclarationAdapter = this.buildQueryAdapter(daa);
+ this.queryAdapter = this.buildAdapter(this.queryDeclarationAdapter);
+ this.flushModeDeclarationAdapter = this.buildFlushModeAdapter(daa);
+ this.flushModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(this.annotatedElement, this.flushModeDeclarationAdapter);
+ this.cacheModeDeclarationAdapter = this.buildCacheModeAdapter(daa);
+ this.cacheModeAdapter = new ShortCircuitAnnotationElementAdapter<String>(this.annotatedElement, this.cacheModeDeclarationAdapter);
+ this.cacheableDeclarationAdapter = this.buildCacheableAdapter(daa);
+ this.cacheableAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(this.annotatedElement, this.cacheableDeclarationAdapter);
+ this.cacheRegionDeclarationAdapter = this.buildCacheRegionAdapter(daa);
+ this.cacheRegionAdapter = this.buildAdapter(this.cacheRegionDeclarationAdapter);
+ this.fetchSizeDeclarationAdapter = this.buildFetchSizeAdapter(daa);
+ this.fetchSizeAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(this.annotatedElement, this.fetchSizeDeclarationAdapter);
+ this.timeoutDeclarationAdapter = this.buildTimeoutAdapter(daa);
+ this.timeoutAdapter = new ShortCircuitAnnotationElementAdapter<Integer>(this.annotatedElement, this.timeoutDeclarationAdapter);
+ this.commentDeclarationAdapter = this.buildCommentAdapter(daa);
+ this.commentAdapter = new ShortCircuitAnnotationElementAdapter<String>(this.annotatedElement, this.commentDeclarationAdapter);
+ this.readOnlyDeclarationAdapter = this.buildReadOnlyAdapter(daa);
+ this.readOnlyAdapter = new ShortCircuitAnnotationElementAdapter<Boolean>(this.annotatedElement, this.readOnlyDeclarationAdapter);
+ }
+
/**
* convenience implementation of method from NestableAnnotation interface
* for subclasses
14 years, 7 months
JBoss Tools SVN: r34599 - in trunk/as/plugins: org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal and 3 other directories.
by jbosstools-commits@lists.jboss.org
Author: rob.stryker(a)jboss.com
Date: 2011-09-09 08:14:50 -0400 (Fri, 09 Sep 2011)
New Revision: 34599
Added:
trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/launch/JBTWebLaunchableClient.java
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/modules/SingleDeployableFactory.java
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/JBossLaunchAdapter.java
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/LocalJBossBehaviorDelegate.java
trunk/as/plugins/org.jboss.ide.eclipse.as.jmx.integration/src/org/jboss/ide/eclipse/as/jmx/integration/JBossServerJMXRunner.java
trunk/as/plugins/org.jboss.ide.eclipse.as.ui/plugin.xml
Log:
JBDS-1762 - delay browser until modules are started
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/modules/SingleDeployableFactory.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/modules/SingleDeployableFactory.java 2011-09-09 11:55:57 UTC (rev 34598)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/modules/SingleDeployableFactory.java 2011-09-09 12:14:50 UTC (rev 34599)
@@ -97,6 +97,9 @@
return makeDeployable(resource.getFullPath());
}
+ /**
+ * @since 2.3
+ */
public static boolean makeDeployable(IProject project, IPath[] workspaceRelative) {
boolean ret = true;
for( int i = 0; i < workspaceRelative.length; i++ ) {
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/JBossLaunchAdapter.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/JBossLaunchAdapter.java 2011-09-09 11:55:57 UTC (rev 34598)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/JBossLaunchAdapter.java 2011-09-09 12:14:50 UTC (rev 34599)
@@ -33,9 +33,9 @@
import org.eclipse.wst.server.core.IRuntime;
import org.eclipse.wst.server.core.IServer;
import org.eclipse.wst.server.core.model.IURLProvider;
+import org.eclipse.wst.server.core.model.IURLProvider2;
import org.eclipse.wst.server.core.model.LaunchableAdapterDelegate;
import org.eclipse.wst.server.core.model.ServerDelegate;
-import org.eclipse.wst.server.core.util.HttpLaunchable;
import org.eclipse.wst.server.core.util.WebResource;
import org.jboss.ide.eclipse.as.core.server.IJBossServerRuntime;
import org.jboss.ide.eclipse.as.core.util.IJBossRuntimeConstants;
@@ -146,7 +146,7 @@
if (portletURL != null) {
url = portletURL;
}
- return new HttpLaunchable(url);
+ return new JBTCustomHttpLaunchable(moduleObject, url);
} catch (MalformedURLException e) {
return null; // no launchable available.
}
@@ -213,4 +213,31 @@
File file = new File(location,portalDir);
return file.exists();
}
+
+
+ public static class JBTCustomHttpLaunchable {
+ private IURLProvider2 urlProvider;
+ private IModuleArtifact artifact;
+ public JBTCustomHttpLaunchable(IModuleArtifact artifact, final URL url) {
+ this.artifact = artifact;
+ this.urlProvider = new IURLProvider2() {
+ public URL getModuleRootURL(IModule module){
+ return url;
+ }
+ public URL getLaunchableURL() {
+ return getModuleRootURL(null);
+ }
+ };
+ }
+
+ public JBTCustomHttpLaunchable(IURLProvider2 urlProvider){
+ this.urlProvider = urlProvider;
+ }
+ public URL getURL() {
+ return urlProvider.getLaunchableURL();
+ }
+ public IModule getModule() {
+ return artifact.getModule();
+ }
+ }
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/LocalJBossBehaviorDelegate.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/LocalJBossBehaviorDelegate.java 2011-09-09 11:55:57 UTC (rev 34598)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/LocalJBossBehaviorDelegate.java 2011-09-09 12:14:50 UTC (rev 34599)
@@ -35,6 +35,7 @@
import org.jboss.ide.eclipse.as.core.Messages;
import org.jboss.ide.eclipse.as.core.extensions.events.IEventCodes;
import org.jboss.ide.eclipse.as.core.extensions.events.ServerLogger;
+import org.jboss.ide.eclipse.as.core.publishers.AbstractServerToolsPublisher;
import org.jboss.ide.eclipse.as.core.publishers.LocalPublishMethod;
import org.jboss.ide.eclipse.as.core.server.IJBossServerRuntime;
import org.jboss.ide.eclipse.as.core.server.IServerStatePoller;
@@ -245,8 +246,11 @@
protected void resumeDeployment(final MBeanServerConnection connection, IProgressMonitor monitor) throws Exception {
+ monitor.beginTask("Resuming Deployment Scanner", 1000); //$NON-NLS-1$
ObjectName name = new ObjectName(IJBossRuntimeConstants.DEPLOYMENT_SCANNER_MBEAN_NAME);
launchDeployCommand(connection, name, IJBossRuntimeConstants.START, monitor);
+ monitor.worked(1000);
+ monitor.done();
}
protected void launchDeployCommand(final MBeanServerConnection connection, final ObjectName objectName,
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.jmx.integration/src/org/jboss/ide/eclipse/as/jmx/integration/JBossServerJMXRunner.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.jmx.integration/src/org/jboss/ide/eclipse/as/jmx/integration/JBossServerJMXRunner.java 2011-09-09 11:55:57 UTC (rev 34598)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.jmx.integration/src/org/jboss/ide/eclipse/as/jmx/integration/JBossServerJMXRunner.java 2011-09-09 12:14:50 UTC (rev 34599)
@@ -13,6 +13,8 @@
import javax.management.MBeanServerConnection;
import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
import org.eclipse.wst.server.core.IServer;
import org.jboss.ide.eclipse.as.core.ExtensionManager.IServerJMXRunnable;
import org.jboss.ide.eclipse.as.core.ExtensionManager.IServerJMXRunner;
@@ -31,6 +33,7 @@
JBossServerConnectionProvider.run(server, runnable2);
} catch(JMXException jmxe) {
// TODO wrap and log
+ throw new CoreException(new Status(IStatus.ERROR, Activator.PLUGIN_ID, jmxe.getMessage(), jmxe));
}
}
Added: trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/launch/JBTWebLaunchableClient.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/launch/JBTWebLaunchableClient.java (rev 0)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/launch/JBTWebLaunchableClient.java 2011-09-09 12:14:50 UTC (rev 34599)
@@ -0,0 +1,161 @@
+package org.jboss.ide.eclipse.as.ui.launch;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Date;
+
+import javax.management.InstanceNotFoundException;
+import javax.management.MBeanServerConnection;
+import javax.management.ObjectName;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.debug.core.ILaunch;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.browser.IWebBrowser;
+import org.eclipse.ui.browser.IWorkbenchBrowserSupport;
+import org.eclipse.wst.server.core.IModule;
+import org.eclipse.wst.server.core.IServer;
+import org.eclipse.wst.server.core.model.ClientDelegate;
+import org.jboss.ide.eclipse.as.core.ExtensionManager;
+import org.jboss.ide.eclipse.as.core.ExtensionManager.IServerJMXRunnable;
+import org.jboss.ide.eclipse.as.core.JBossServerCorePlugin;
+import org.jboss.ide.eclipse.as.core.Messages;
+import org.jboss.ide.eclipse.as.core.extensions.events.IEventCodes;
+import org.jboss.ide.eclipse.as.core.extensions.events.ServerLogger;
+import org.jboss.ide.eclipse.as.core.server.internal.JBossLaunchAdapter.JBTCustomHttpLaunchable;
+import org.jboss.ide.eclipse.as.ui.JBossServerUIPlugin;
+
+public class JBTWebLaunchableClient extends ClientDelegate {
+
+ public JBTWebLaunchableClient() {
+ // TODO Auto-generated constructor stub
+ }
+
+ public boolean supports(IServer server, Object launchable, String launchMode) {
+ return (launchable instanceof JBTCustomHttpLaunchable);
+ }
+
+ protected boolean shouldSuspendScanner(IServer server) {
+ return server.getServerState() == IServer.STATE_STARTED
+ && ExtensionManager.getDefault().getJMXRunner() != null;
+ }
+
+ public IStatus launch(final IServer server, final Object launchable, final String launchMode, final ILaunch launch) {
+ new Thread() {
+ public void run() {
+ launch2(server, launchable, launchMode, launch);
+ }
+ }.start();
+ return null; // intentional null return
+ }
+
+ public IStatus launch2(IServer server, Object launchable, String launchMode, ILaunch launch) {
+ final JBTCustomHttpLaunchable http = (JBTCustomHttpLaunchable) launchable;
+ wait(server, http.getModule());
+ Display.getDefault().asyncExec(new Runnable(){
+ public void run() {
+ try {
+ IWorkbenchBrowserSupport browserSupport = JBossServerUIPlugin.getDefault().getWorkbench().getBrowserSupport();
+ IWebBrowser browser = browserSupport.createBrowser(IWorkbenchBrowserSupport.LOCATION_BAR | IWorkbenchBrowserSupport.NAVIGATION_BAR, null, null, null);
+ browser.openURL(http.getURL());
+ } catch (Exception e) {
+ JBossServerUIPlugin.getDefault().getLog().log(
+ new Status(IStatus.ERROR, JBossServerUIPlugin.PLUGIN_ID, "Unable to open web browser", e)); //$NON-NLS-1$
+ }
+ }
+ });
+ return null;
+ }
+
+ protected void wait(final IServer server, final IModule module) {
+ if( shouldSuspendScanner(server)) {
+ IServerJMXRunnable r = new IServerJMXRunnable() {
+ public void run(MBeanServerConnection connection) throws Exception {
+ waitForDeploymentStarted(server, module, connection, null);
+ }
+ };
+ try {
+ ExtensionManager.getDefault().getJMXRunner().run(server, r);
+ } catch( CoreException jmxe ) {
+ IStatus status = new Status(IStatus.WARNING, JBossServerCorePlugin.PLUGIN_ID, IEventCodes.RESUME_DEPLOYMENT_SCANNER, Messages.JMXResumeScannerError, jmxe);
+ ServerLogger.getDefault().log(server, status);
+ } finally {
+ ExtensionManager.getDefault().getJMXRunner().endTransaction(server, this);
+ }
+ }
+ }
+
+ protected void waitForDeploymentStarted(final IServer server, final IModule module,
+ final MBeanServerConnection connection, IProgressMonitor monitor) throws Exception {
+ monitor = monitor == null ? new NullProgressMonitor() : monitor;
+ monitor.beginTask("Ensuring Deployments are Loaded", 10000); //$NON-NLS-1$
+ long time = new Date().getTime();
+ while( new Date().getTime() < (time + 20000)) {
+ boolean done = checkDeploymentStarted(server, module, connection, monitor);
+ System.out.println(done);
+ if( done ) {
+ monitor.done();
+ return;
+ }
+ try {
+ Thread.sleep(1000);
+ } catch(InterruptedException ie) {}
+ }
+ }
+
+ protected boolean checkDeploymentStarted(final IServer server, final IModule module,
+ final MBeanServerConnection connection, IProgressMonitor monitor) throws Exception {
+ String typeId;
+ typeId = module.getModuleType().getId();
+
+ if( typeId.equals("wst.web") || typeId.equals("jst.web")) { //$NON-NLS-1$ //$NON-NLS-2$
+ String mbeanName = null;
+ IModule earParent = findEarParent(server, module);
+ String stateAttribute;
+ Object result;
+ if( earParent == null ) {
+ mbeanName = "jboss.web:J2EEApplication=none,J2EEServer=none,j2eeType=WebModule,name=//localhost/" + module.getName(); //$NON-NLS-1$
+ stateAttribute = "state"; //$NON-NLS-1$
+ result = getAttributeResult(connection, mbeanName, stateAttribute);
+ if(result == null || !(result instanceof Integer) || ((Integer)result).intValue() != 1 ) {
+ return false;
+ }
+ } else {
+ mbeanName = "jboss.deployment:id=\"jboss.web.deployment:war=/" + module.getName() + "\",type=Component"; //$NON-NLS-1$//$NON-NLS-2$
+ stateAttribute = "State"; //$NON-NLS-1$
+ result = getAttributeResult(connection, mbeanName, stateAttribute);
+ if( result == null || !result.toString().equals("DEPLOYED")) //$NON-NLS-1$
+ return false;
+ }
+ }
+ return true;
+ }
+
+ private Object getAttributeResult(final MBeanServerConnection connection, String mbeanName, String stateAttribute) throws Exception {
+ ObjectName on = new ObjectName(mbeanName);
+ try {
+ return connection.getAttribute(on, stateAttribute);
+ } catch(InstanceNotFoundException infe) {
+ return false;
+ }
+ }
+
+ private IModule findEarParent(IServer server, IModule module) {
+ try {
+ IModule[] deployed = server.getModules();
+ ArrayList<IModule> deployedAsList = new ArrayList<IModule>();
+ deployedAsList.addAll(Arrays.asList(deployed));
+ IModule[] possibleParents = server.getRootModules(module, new NullProgressMonitor());
+ for( int i = 0; i < possibleParents.length; i++ ) {
+ if( possibleParents[i].getModuleType().getId().equals("jst.ear") && deployedAsList.contains(possibleParents[i]))
+ return possibleParents[i];
+ }
+ } catch(CoreException ce) {
+ }
+ return null;
+ }
+}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.ui/plugin.xml
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.ui/plugin.xml 2011-09-09 11:55:57 UTC (rev 34598)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.ui/plugin.xml 2011-09-09 12:14:50 UTC (rev 34599)
@@ -449,4 +449,16 @@
typeIds="%AllJBossServerTypes">
</runtimeLocator>
</extension>
+ <extension
+ point="org.eclipse.wst.server.core.clients">
+ <client
+ class="org.jboss.ide.eclipse.as.ui.launch.JBTWebLaunchableClient"
+ description="Launches URLs in a web browser"
+ id="org.jboss.ide.eclipse.as.core.server.internal.launch.jbtLaunchClient"
+ launchable="org.jboss.ide.eclipse.as.core.server.internal.JBossLaunchAdapter$JBTCustomHttpLaunchable"
+ name="Web Launchable Client"
+ priority="20">
+ </client>
+ </extension>
+
</plugin>
14 years, 7 months
JBoss Tools SVN: r34598 - in trunk/as/plugins: org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling and 4 other directories.
by jbosstools-commits@lists.jboss.org
Author: adietish
Date: 2011-09-09 07:55:57 -0400 (Fri, 09 Sep 2011)
New Revision: 34598
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IOpenshiftJsonConstants.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IOpenshiftService.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/SSHKey.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/AbstractJsonMarshaller.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/ApplicationRequestJsonMarshaller.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/DomainRequestJsonMarshaller.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/IOpenshiftMarshaller.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/ListCartridgesRequestJsonMarshaller.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/OpenshiftService.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/httpclient/UrlConnectionHttpClient.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/AbstractDomainRequest.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/ChangeCreateDomainRequest.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/CreateDomainRequest.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/DomainIntegrationTest.java
Log:
[JBIDE-9510] implementing create domain
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IOpenshiftJsonConstants.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IOpenshiftJsonConstants.java 2011-09-09 07:48:54 UTC (rev 34597)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IOpenshiftJsonConstants.java 2011-09-09 11:55:57 UTC (rev 34598)
@@ -30,5 +30,6 @@
public static final String PROPERTY_CARTS = "carts";
public static final String PROPERTY_NAMESPACE = "namespace";
public static final String PROPERTY_ALTER = "alter";
+ public static final String PROPERTY_SSH = "ssh";
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IOpenshiftService.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IOpenshiftService.java 2011-09-09 07:48:54 UTC (rev 34597)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IOpenshiftService.java 2011-09-09 11:55:57 UTC (rev 34598)
@@ -25,7 +25,10 @@
public Application destroyApplication(String name, Cartridge cartridge) throws OpenshiftException;
- public Domain createDomain(String name, String sshKey) throws OpenshiftException;
+ public Domain createDomain(String name, SSHKey keyPair) throws OpenshiftException;
- public Domain createDomain(String name, SSHKey keyPair) throws OpenshiftException;
+ public SSHKey createKey(String passPhrase, String privateKeyPath, String publicKeyPath) throws OpenshiftException;
+
+ public SSHKey loadKey(String passPhrase, String privateKeyPath, String publicKeyPath) throws OpenshiftException;
+
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/SSHKey.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/SSHKey.java 2011-09-09 07:48:54 UTC (rev 34597)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/SSHKey.java 2011-09-09 11:55:57 UTC (rev 34598)
@@ -59,6 +59,14 @@
}
}
+ /**
+ * Loads existing private and public ssh key from the given paths.
+ *
+ * @param privateKeyPath the path to the private key
+ * @param publicKeyPath the path to the public key
+ * @return
+ * @throws OpenshiftException
+ */
public static SSHKey load(String privateKeyPath, String publicKeyPath)
throws OpenshiftException {
try {
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/AbstractJsonMarshaller.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/AbstractJsonMarshaller.java 2011-09-09 07:48:54 UTC (rev 34597)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/AbstractJsonMarshaller.java 2011-09-09 11:55:57 UTC (rev 34598)
@@ -12,6 +12,7 @@
import org.jboss.dmr.ModelNode;
import org.jboss.ide.eclipse.as.openshift.core.IOpenshiftJsonConstants;
+import org.jboss.ide.eclipse.as.openshift.core.OpenshiftException;
import org.jboss.ide.eclipse.as.openshift.internal.core.request.AbstractOpenshiftRequest;
/**
@@ -19,15 +20,41 @@
*/
public abstract class AbstractJsonMarshaller<REQUEST extends AbstractOpenshiftRequest> implements IOpenshiftMarshaller<REQUEST> {
- public String marshall(REQUEST request) {
+ public String marshall(REQUEST request) throws OpenshiftException {
ModelNode node = new ModelNode();
- node.get(IOpenshiftJsonConstants.PROPERTY_RHLOGIN).set(request.getRhLogin());
- node.get(IOpenshiftJsonConstants.PROPERTY_DEBUG).set(String.valueOf(request.isDebug()));
+ setStringProperty(IOpenshiftJsonConstants.PROPERTY_RHLOGIN, request.getRhLogin(), node);
+ setStringProperty(IOpenshiftJsonConstants.PROPERTY_DEBUG, request.isDebug(), node);
setJsonDataProperties(node, request);
return node.toJSONString(true);
}
- protected void setJsonDataProperties(ModelNode node, REQUEST request) {
+ protected void setJsonDataProperties(ModelNode node, REQUEST request) throws OpenshiftException {
// empty default implementation
}
+
+ protected void setStringProperty(String propertyName, Object value, ModelNode node) {
+ if (isSet(value)) {
+ if (value instanceof String) {
+ setStringProperty((String) value, propertyName, node);
+ }
+ }
+ }
+
+ protected void setStringProperty(String propertyName, String value, ModelNode node) {
+ if (isSet(value)) {
+ return;
+ }
+
+ node.get(propertyName).set(value);
+ }
+
+ protected boolean isSet(String value) {
+ return value != null
+ && value.length() > 0;
+ }
+
+ protected boolean isSet(Object value) {
+ return value != null;
+ }
+
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/ApplicationRequestJsonMarshaller.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/ApplicationRequestJsonMarshaller.java 2011-09-09 07:48:54 UTC (rev 34597)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/ApplicationRequestJsonMarshaller.java 2011-09-09 11:55:57 UTC (rev 34598)
@@ -23,9 +23,9 @@
@Override
protected void setJsonDataProperties(ModelNode node, ApplicationRequest request) {
- node.get(IOpenshiftJsonConstants.PROPERTY_CARTRIDGE).set(getCartridgeName(request.getCartridge()));
- node.get(IOpenshiftJsonConstants.PROPERTY_ACTION).set(getActionName(request.getAction()));
- node.get(IOpenshiftJsonConstants.PROPERTY_APP_NAME).set(request.getName());
+ setStringProperty(IOpenshiftJsonConstants.PROPERTY_CARTRIDGE, getCartridgeName(request.getCartridge()), node);
+ setStringProperty(IOpenshiftJsonConstants.PROPERTY_ACTION, getActionName(request.getAction()), node);
+ setStringProperty(IOpenshiftJsonConstants.PROPERTY_APP_NAME, request.getName(), node);
}
private String getCartridgeName(Cartridge cartridge) {
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/DomainRequestJsonMarshaller.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/DomainRequestJsonMarshaller.java 2011-09-09 07:48:54 UTC (rev 34597)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/DomainRequestJsonMarshaller.java 2011-09-09 11:55:57 UTC (rev 34598)
@@ -12,6 +12,7 @@
import org.jboss.dmr.ModelNode;
import org.jboss.ide.eclipse.as.openshift.core.IOpenshiftJsonConstants;
+import org.jboss.ide.eclipse.as.openshift.core.OpenshiftException;
import org.jboss.ide.eclipse.as.openshift.internal.core.request.AbstractDomainRequest;
/**
@@ -20,8 +21,9 @@
public class DomainRequestJsonMarshaller extends AbstractJsonMarshaller<AbstractDomainRequest> {
@Override
- protected void setJsonDataProperties(ModelNode node, AbstractDomainRequest request) {
+ protected void setJsonDataProperties(ModelNode node, AbstractDomainRequest request) throws OpenshiftException {
node.get(IOpenshiftJsonConstants.PROPERTY_NAMESPACE).set(request.getName());
- node.get(IOpenshiftJsonConstants.PROPERTY_ALTER).set(request.isAlter());
+ node.get(IOpenshiftJsonConstants.PROPERTY_ALTER).set(String.valueOf(request.isAlter()));
+ node.get(IOpenshiftJsonConstants.PROPERTY_SSH).set(request.getSshKey().getPublicKeyContent());
}
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/IOpenshiftMarshaller.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/IOpenshiftMarshaller.java 2011-09-09 07:48:54 UTC (rev 34597)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/IOpenshiftMarshaller.java 2011-09-09 11:55:57 UTC (rev 34598)
@@ -10,11 +10,13 @@
******************************************************************************/
package org.jboss.ide.eclipse.as.openshift.core.internal.marshalling;
+import org.jboss.ide.eclipse.as.openshift.core.OpenshiftException;
+
/**
* @author André Dietisheim
*/
public interface IOpenshiftMarshaller<REQUEST extends IOpenshiftRequest> {
- public String marshall(REQUEST object);
+ public String marshall(REQUEST object) throws OpenshiftException;
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/ListCartridgesRequestJsonMarshaller.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/ListCartridgesRequestJsonMarshaller.java 2011-09-09 07:48:54 UTC (rev 34597)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/marshalling/ListCartridgesRequestJsonMarshaller.java 2011-09-09 11:55:57 UTC (rev 34598)
@@ -21,6 +21,6 @@
@Override
protected void setJsonDataProperties(ModelNode node, ListCartridgesRequest request) {
- node.get(IOpenshiftJsonConstants.PROPERTY_CART_TYPE).set(request.getCartType());
+ setStringProperty(IOpenshiftJsonConstants.PROPERTY_CART_TYPE, request.getCartType(), node);
}
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/OpenshiftService.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/OpenshiftService.java 2011-09-09 07:48:54 UTC (rev 34597)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/OpenshiftService.java 2011-09-09 11:55:57 UTC (rev 34598)
@@ -97,12 +97,18 @@
}
}
- public Domain createDomain(String name, SSHKey sshKey) throws OpenshiftException {
- return createDomain(name, sshKey.getPublicKeyContent());
+ @Override
+ public SSHKey createKey(String passPhrase, String privateKeyPath, String publicKeyPath) throws OpenshiftException {
+ return SSHKey.create(passPhrase, privateKeyPath, publicKeyPath);
}
+
+ @Override
+ public SSHKey loadKey(String passPhrase, String privateKeyPath, String publicKeyPath) throws OpenshiftException {
+ return SSHKey.load(privateKeyPath, publicKeyPath);
+ }
@Override
- public Domain createDomain(String name, String sshKey) throws OpenshiftException {
+ public Domain createDomain(String name, SSHKey sshKey) throws OpenshiftException {
return requestDomainAction(new CreateDomainRequest(name, sshKey, username, true));
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/httpclient/UrlConnectionHttpClient.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/httpclient/UrlConnectionHttpClient.java 2011-09-09 07:48:54 UTC (rev 34597)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/httpclient/UrlConnectionHttpClient.java 2011-09-09 11:55:57 UTC (rev 34598)
@@ -31,7 +31,7 @@
throw new NotFoundException(
MessageFormat.format("Could not find resource {0}", url.toString()), e);
} catch (IOException e) {
- throw getException(e, connection);
+ throw createException(e, connection);
} finally {
if (connection != null) {
connection.disconnect();
@@ -39,7 +39,7 @@
}
}
- private HttpClientException getException(IOException ioe, HttpURLConnection connection) {
+ private HttpClientException createException(IOException ioe, HttpURLConnection connection) {
try {
int responseCode = connection.getResponseCode();
String errorMessage = StreamUtils.readToString(connection.getErrorStream());
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/AbstractDomainRequest.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/AbstractDomainRequest.java 2011-09-09 07:48:54 UTC (rev 34597)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/AbstractDomainRequest.java 2011-09-09 11:55:57 UTC (rev 34598)
@@ -10,20 +10,22 @@
******************************************************************************/
package org.jboss.ide.eclipse.as.openshift.internal.core.request;
+import org.jboss.ide.eclipse.as.openshift.core.SSHKey;
+
/**
* @author André Dietisheim
*/
public abstract class AbstractDomainRequest extends AbstractOpenshiftRequest {
private String name;
- private String sshKey;
+ private SSHKey sshKey;
- public AbstractDomainRequest(String name, String sshKey, ApplicationAction action, String username) {
+ public AbstractDomainRequest(String name, SSHKey sshKey, ApplicationAction action, String username) {
this(name, sshKey, username, false);
}
- public AbstractDomainRequest(String name, String sshKey, String username, boolean debug) {
+ public AbstractDomainRequest(String name, SSHKey sshKey, String username, boolean debug) {
super(username, debug);
this.name = name;
this.sshKey = sshKey;
@@ -33,7 +35,7 @@
return name;
}
- public String getSshKey() {
+ public SSHKey getSshKey() {
return sshKey;
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/ChangeCreateDomainRequest.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/ChangeCreateDomainRequest.java 2011-09-09 07:48:54 UTC (rev 34597)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/ChangeCreateDomainRequest.java 2011-09-09 11:55:57 UTC (rev 34598)
@@ -10,17 +10,19 @@
******************************************************************************/
package org.jboss.ide.eclipse.as.openshift.internal.core.request;
+import org.jboss.ide.eclipse.as.openshift.core.SSHKey;
+
/**
* @author André Dietisheim
*/
public class ChangeCreateDomainRequest extends AbstractDomainRequest {
- public ChangeCreateDomainRequest(String name, String namespace, String sshKey, ApplicationAction action, String username) {
+ public ChangeCreateDomainRequest(String name, String namespace, SSHKey sshKey, ApplicationAction action, String username) {
this(name, namespace, sshKey, username, false);
}
- public ChangeCreateDomainRequest(String name, String namespace, String sshKey, String username, boolean debug) {
+ public ChangeCreateDomainRequest(String name, String namespace, SSHKey sshKey, String username, boolean debug) {
super(name, sshKey, username, debug);
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/CreateDomainRequest.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/CreateDomainRequest.java 2011-09-09 07:48:54 UTC (rev 34597)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/CreateDomainRequest.java 2011-09-09 11:55:57 UTC (rev 34598)
@@ -10,17 +10,19 @@
******************************************************************************/
package org.jboss.ide.eclipse.as.openshift.internal.core.request;
+import org.jboss.ide.eclipse.as.openshift.core.SSHKey;
+
/**
* @author André Dietisheim
*/
public class CreateDomainRequest extends AbstractDomainRequest {
- public CreateDomainRequest(String name, String sshKey, ApplicationAction action, String username) {
+ public CreateDomainRequest(String name, SSHKey sshKey, ApplicationAction action, String username) {
this(name, sshKey, username, false);
}
- public CreateDomainRequest(String name, String sshKey, String username, boolean debug) {
+ public CreateDomainRequest(String name, SSHKey sshKey, String username, boolean debug) {
super(name, sshKey, username, debug);
}
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/DomainIntegrationTest.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/DomainIntegrationTest.java 2011-09-09 07:48:54 UTC (rev 34597)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/DomainIntegrationTest.java 2011-09-09 11:55:57 UTC (rev 34598)
@@ -12,10 +12,12 @@
import static org.junit.Assert.assertNotNull;
+import java.io.File;
+
import org.jboss.ide.eclipse.as.openshift.core.Domain;
+import org.jboss.ide.eclipse.as.openshift.core.SSHKey;
import org.jboss.ide.eclipse.as.openshift.internal.core.OpenshiftService;
import org.junit.Before;
-import org.junit.Ignore;
import org.junit.Test;
public class DomainIntegrationTest {
@@ -30,15 +32,17 @@
this.openshiftService = new OpenshiftService(USERNAME, PASSWORD);
}
- @Ignore
@Test
public void canCreateDomain() throws Exception {
- String name = createRandomDomainName();
- Domain domain = openshiftService.createDomain(name, (String) null);
+ String domainName = createRandomString();
+ File publicKey = File.createTempFile(createRandomString(), null);
+ File privateKey = File.createTempFile(createRandomString(), null);
+ SSHKey key = openshiftService.createKey("12345", privateKey.getAbsolutePath(), publicKey.getAbsolutePath());
+ Domain domain = openshiftService.createDomain(domainName, key);
assertNotNull(domain);
}
- private String createRandomDomainName() {
+ private String createRandomString() {
return String.valueOf(System.currentTimeMillis());
}
}
14 years, 7 months