From jbosstools-commits at lists.jboss.org Thu May 5 14:56:06 2011
Content-Type: multipart/mixed; boundary="===============9133362868331258534=="
MIME-Version: 1.0
From: jbosstools-commits at lists.jboss.org
To: jbosstools-commits at lists.jboss.org
Subject: [jbosstools-commits] JBoss Tools SVN: r31111 - in
branches/jbosstools-3.2.x/smooks:
plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration
and 3 other directories.
Date: Thu, 05 May 2011 14:56:05 -0400
Message-ID: <201105051856.p45Iu52n030834@svn01.web.mwc.hst.phx2.redhat.com>
--===============9133362868331258534==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable
Author: tfennelly
Date: 2011-05-05 14:56:04 -0400 (Thu, 05 May 2011)
New Revision: 31111
Added:
branches/jbosstools-3.2.x/smooks/plugins/org.jboss.tools.smooks.ui/src/o=
rg/jboss/tools/smooks/launch/JavaGraphBuilder.java
Modified:
branches/jbosstools-3.2.x/smooks/
branches/jbosstools-3.2.x/smooks/plugins/org.jboss.tools.smooks.ui/src/o=
rg/jboss/tools/smooks/configuration/RuntimeMetadata.java
branches/jbosstools-3.2.x/smooks/plugins/org.jboss.tools.smooks.ui/src/o=
rg/jboss/tools/smooks/configuration/editors/SelectorCreationDialog.java
branches/jbosstools-3.2.x/smooks/plugins/org.jboss.tools.smooks.ui/src/o=
rg/jboss/tools/smooks/configuration/editors/javabean12/PropertiesAndSetterM=
ethodSearchFieldEditorCreator.java
branches/jbosstools-3.2.x/smooks/plugins/org.jboss.tools.smooks.ui/src/o=
rg/jboss/tools/smooks/launch/SmooksLaunchConfigurationDelegate.java
branches/jbosstools-3.2.x/smooks/plugins/org.jboss.tools.smooks.ui/src/o=
rg/jboss/tools/smooks/launch/SmooksLaunchShortcut.java
branches/jbosstools-3.2.x/smooks/plugins/org.jboss.tools.smooks.ui/src/o=
rg/jboss/tools/smooks/launch/SmooksLauncher.java
Log:
https://issues.jboss.org/browse/JBIDE-7509
Launch Configuration doesn't work for Java Sources
Property changes on: branches/jbosstools-3.2.x/smooks
___________________________________________________________________
Added: svn:mergeinfo
+ /trunk/smooks:29129-29130,29167-29168
Modified: branches/jbosstools-3.2.x/smooks/plugins/org.jboss.tools.smooks.u=
i/src/org/jboss/tools/smooks/configuration/RuntimeMetadata.java
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- branches/jbosstools-3.2.x/smooks/plugins/org.jboss.tools.smooks.ui/src/=
org/jboss/tools/smooks/configuration/RuntimeMetadata.java 2011-05-05 17:10:=
17 UTC (rev 31110)
+++ branches/jbosstools-3.2.x/smooks/plugins/org.jboss.tools.smooks.ui/src/=
org/jboss/tools/smooks/configuration/RuntimeMetadata.java 2011-05-05 18:56:=
04 UTC (rev 31111)
@@ -50,7 +50,7 @@
* @author tom.fennelly(a)jbos=
s.com
*/
public class RuntimeMetadata {
-
+ private String inputClassName =3D null;
private Smooks metadataExtractor;
private boolean isSmooksConfig;
private boolean isValidSmooksConfig;
@@ -70,7 +70,21 @@
// Build dependency map...
RuntimeDependency.addDependencyChecklist(metadataExtractor);
}
+ =
+ =
=
+ public String getInputClassName() {
+ return inputClassName;
+ }
+
+
+
+ public void setInputClassName(String inputClassName) {
+ this.inputClassName =3D inputClassName;
+ }
+
+
+
public boolean isSmooksConfig() {
return isSmooksConfig;
}
@@ -188,19 +202,24 @@
if (inputType !=3D null) {
String inputPath =3D inputParams.getProperty(inputType);
if (inputPath !=3D null) {
- String resolvedFilePath;
+ String resolvedFilePath =3D null;
try {
resolvedFilePath =3D SmooksUIUtils.parseFilePath(inputPath.trim());
} catch (Exception e) {
// It's not a valid config...
inputFile =3D new File(inputPath.trim());
- return;
+// return;
}
-
- inputFile =3D new File(resolvedFilePath);
- if (SmooksModelUtils.INPUT_TYPE_JAVA.equals(inputType) || (inputFile.=
exists() && inputFile.isFile())) {
+ if(resolvedFilePath !=3D null){
+ inputFile =3D new File(resolvedFilePath);
+ }
+ if (SmooksModelUtils.INPUT_TYPE_JAVA.equals(inputType)){
isValidSmooksConfig =3D true;
+ setInputClassName(inputPath);
}
+ if ((inputFile.exists() && inputFile.isFile())) {
+ isValidSmooksConfig =3D true;
+ }
}
}
} catch (Exception e) {
Modified: branches/jbosstools-3.2.x/smooks/plugins/org.jboss.tools.smooks.u=
i/src/org/jboss/tools/smooks/configuration/editors/SelectorCreationDialog.j=
ava
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- branches/jbosstools-3.2.x/smooks/plugins/org.jboss.tools.smooks.ui/src/=
org/jboss/tools/smooks/configuration/editors/SelectorCreationDialog.java 20=
11-05-05 17:10:17 UTC (rev 31110)
+++ branches/jbosstools-3.2.x/smooks/plugins/org.jboss.tools.smooks.ui/src/=
org/jboss/tools/smooks/configuration/editors/SelectorCreationDialog.java 20=
11-05-05 18:56:04 UTC (rev 31111)
@@ -11,22 +11,10 @@
package org.jboss.tools.smooks.configuration.editors;
=
import java.util.ArrayList;
-import java.util.Collection;
import java.util.Collections;
-import java.util.EnumSet;
-import java.util.HashMap;
import java.util.Iterator;
-import java.util.LinkedHashSet;
import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.lang.reflect.Array;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.lang.reflect.ParameterizedType;
-import java.lang.reflect.Type;
=
-import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
@@ -35,8 +23,6 @@
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
=
-import org.w3c.dom.Document;
-
import org.eclipse.jdt.core.IJavaProject;
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.viewers.DoubleClickEvent;
@@ -70,8 +56,6 @@
import org.jboss.tools.smooks.configuration.editors.edireader12.EDIDataPar=
ser;
import org.jboss.tools.smooks.configuration.editors.input.InputParameter;
import org.jboss.tools.smooks.configuration.editors.input.InputType;
-import org.jboss.tools.smooks.configuration.editors.javabean12.JavaBeanMod=
el;
-import org.jboss.tools.smooks.configuration.editors.javabean12.JavaBeanMod=
elFactory;
import org.jboss.tools.smooks.configuration.editors.uitls.JsonInputDataPar=
ser;
import org.jboss.tools.smooks.configuration.editors.uitls.SmooksUIUtils;
import org.jboss.tools.smooks.configuration.editors.wizard.StructuredDataS=
electionWizard;
@@ -80,10 +64,12 @@
import org.jboss.tools.smooks.configuration.editors.xml.XMLObjectAnalyzer;
import org.jboss.tools.smooks.configuration.editors.xml.XSDObjectAnalyzer;
import org.jboss.tools.smooks.editor.ISmooksModelProvider;
+import org.jboss.tools.smooks.launch.JavaGraphBuilder;
import org.jboss.tools.smooks.model.smooks.DocumentRoot;
import org.jboss.tools.smooks.model.smooks.SmooksResourceListType;
import org.milyn.Smooks;
import org.milyn.payload.JavaSource;
+import org.w3c.dom.Document;
=
/**
* @author Dart (dpeng(a)redhat.com)
@@ -539,109 +525,6 @@
return super.close();
}
=
- public static class JavaGraphBuilder {
-
- public T buildGraph(Class messageType) {
- try {
- return buildObject(messageType);
- } catch (Exception e) {
- e.printStackTrace();
- throw new IllegalArgumentException("Unable to construct an in=
stance of '" + messageType.getName() + "'", e);
- }
- }
-
- @SuppressWarnings("unchecked")
- private T buildObject(Class objectType) throws IllegalAccessExcep=
tion, InstantiationException, InvocationTargetException, NoSuchMethodExcept=
ion {
-
- if(String.class.isAssignableFrom(objectType)) {
- return objectType.cast("x");
- } else if(Number.class.isAssignableFrom(objectType)) {
- return objectType.getConstructor(String.class).newInstance("1=
");
- } else if(objectType.isPrimitive()) {
- return (T) primitiveToObjectMap.get(objectType);
- } else if(objectType =3D=3D Object.class) {
- // don't construct raw Object types... leave them and just re=
turn null...
- return null;
- } else if(objectType.isEnum()) {
- return (T) EnumSet.allOf((Class)objectType).iterator().nex=
t();
- }
-
- T messageInstance =3D objectType.newInstance();
-
- // populate all the fields...
- Method[] methods =3D objectType.getMethods();
- for(Method method : methods) {
- if(method.getName().startsWith("set") && method.getParameterT=
ypes().length =3D=3D 1) {
- Class> propertyType =3D method.getParameterTypes()[0];
- Object propertyInstance =3D null;
-
- if(Collection.class.isAssignableFrom(propertyType)) {
- propertyInstance =3D buildCollection(method, property=
Type);
- } else if(propertyType.isArray()) {
- propertyInstance =3D buildArray(method, propertyType);
- } else {
- propertyInstance =3D buildObject(propertyType);
- }
-
- if(propertyInstance !=3D null) {
- method.invoke(messageInstance, propertyInstance);
- }
- }
- }
-
- return messageInstance;
- }
-
- private Object buildArray(Method method, Class> propertyType) throws A=
rrayIndexOutOfBoundsException, IllegalArgumentException, IllegalAccessExcep=
tion, InstantiationException, InvocationTargetException, NoSuchMethodExcept=
ion {
- Class> arrayType =3D propertyType.getComponentType();
- Object[] arrayObj =3D (Object[]) Array.newInstance(arrayType, 1);
- =
- Array.set(arrayObj, 0, buildObject(arrayType));
- =
- return arrayObj;
- }
-
- private Object buildCollection(Method method, Class> propertyType) thr=
ows IllegalAccessException, InstantiationException, InvocationTargetExcepti=
on, NoSuchMethodException {
- Type genericType =3D method.getGenericParameterTypes()[0];
-
- if(genericType instanceof ParameterizedType) {
- ParameterizedType genericTypeClass =3D (ParameterizedType) genericT=
ype;
- Collection collection =3D null;
-
- if(!propertyType.isInterface()) {
- // It's a concrete Collection type... just create an instance...
- collection =3D (Collection) propertyType.newInstance();
- }else if(List.class.isAssignableFrom(propertyType)) {
- collection =3D new ArrayList();
- } else if(Set.class.isAssignableFrom(propertyType)) {
- collection =3D new LinkedHashSet();
- }
- =
- if(collection !=3D null) {
- collection.add(buildObject((Class