You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apex.apache.org by da...@apache.org on 2016/05/10 17:54:25 UTC
[1/2] incubator-apex-core git commit: APEXCORE-451 :
get-app-package-operators in ApexCLI to contain "type" property to indicate
operator or module
Repository: incubator-apex-core
Updated Branches:
refs/heads/master 2ad07ee1a -> 228c795d5
APEXCORE-451 : get-app-package-operators in ApexCLI to contain "type" property to indicate operator or module
Project: http://git-wip-us.apache.org/repos/asf/incubator-apex-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-apex-core/commit/41666de8
Tree: http://git-wip-us.apache.org/repos/asf/incubator-apex-core/tree/41666de8
Diff: http://git-wip-us.apache.org/repos/asf/incubator-apex-core/diff/41666de8
Branch: refs/heads/master
Commit: 41666de8e95a3a580578f08b3e7ed68ddcde0a7b
Parents: da46ec1
Author: shubham <sh...@github.com>
Authored: Thu May 5 15:19:48 2016 +0530
Committer: shubham <sh...@github.com>
Committed: Fri May 6 11:20:53 2016 +0530
----------------------------------------------------------------------
.../java/com/datatorrent/stram/cli/ApexCli.java | 3 +-
.../stram/webapp/OperatorDiscoverer.java | 40 +++++++++++++++++---
.../com/datatorrent/stram/webapp/TypeGraph.java | 5 ++-
3 files changed, 39 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-apex-core/blob/41666de8/engine/src/main/java/com/datatorrent/stram/cli/ApexCli.java
----------------------------------------------------------------------
diff --git a/engine/src/main/java/com/datatorrent/stram/cli/ApexCli.java b/engine/src/main/java/com/datatorrent/stram/cli/ApexCli.java
index 67406a3..4e1f201 100644
--- a/engine/src/main/java/com/datatorrent/stram/cli/ApexCli.java
+++ b/engine/src/main/java/com/datatorrent/stram/cli/ApexCli.java
@@ -93,6 +93,7 @@ import com.google.common.collect.Sets;
import com.sun.jersey.api.client.WebResource;
import com.datatorrent.api.Context;
+import com.datatorrent.api.DAG.GenericOperator;
import com.datatorrent.api.Operator;
import com.datatorrent.api.StreamingApplication;
import com.datatorrent.stram.StramClient;
@@ -2963,7 +2964,7 @@ public class ApexCli
String[] newArgs = new String[args.length - 1];
System.arraycopy(args, 1, newArgs, 0, args.length - 1);
GetOperatorClassesCommandLineInfo commandLineInfo = getGetOperatorClassesCommandLineInfo(newArgs);
- String parentName = commandLineInfo.parent != null ? commandLineInfo.parent : Operator.class.getName();
+ String parentName = commandLineInfo.parent != null ? commandLineInfo.parent : GenericOperator.class.getName();
String files = expandCommaSeparatedFiles(commandLineInfo.args[0]);
if (files == null) {
throw new CliException("File " + commandLineInfo.args[0] + " is not found");
http://git-wip-us.apache.org/repos/asf/incubator-apex-core/blob/41666de8/engine/src/main/java/com/datatorrent/stram/webapp/OperatorDiscoverer.java
----------------------------------------------------------------------
diff --git a/engine/src/main/java/com/datatorrent/stram/webapp/OperatorDiscoverer.java b/engine/src/main/java/com/datatorrent/stram/webapp/OperatorDiscoverer.java
index 8aa2c20..c388a19 100644
--- a/engine/src/main/java/com/datatorrent/stram/webapp/OperatorDiscoverer.java
+++ b/engine/src/main/java/com/datatorrent/stram/webapp/OperatorDiscoverer.java
@@ -68,6 +68,8 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
+import com.datatorrent.api.DAG.GenericOperator;
+import com.datatorrent.api.Module;
import com.datatorrent.api.Operator;
import com.datatorrent.stram.util.ObjectMapperFactory;
import com.datatorrent.stram.webapp.TypeDiscoverer.UI_TYPE;
@@ -116,6 +118,22 @@ public class OperatorDiscoverer
boolean omitFromUI;
}
+ enum GenericOperatorType
+ {
+ OPERATOR("operator"), MODULE("module");
+ private final String type;
+
+ private GenericOperatorType(String type)
+ {
+ this.type = type;
+ }
+
+ public String getType()
+ {
+ return type;
+ }
+ }
+
enum MethodTagType
{
USE_SCHEMA("@useSchema"),
@@ -301,9 +319,9 @@ public class OperatorDiscoverer
public void addDefaultValue(String className, JSONObject oper) throws Exception
{
ObjectMapper defaultValueMapper = ObjectMapperFactory.getOperatorValueSerializer();
- Class<? extends Operator> clazz = (Class<? extends Operator>)classLoader.loadClass(className);
+ Class<? extends GenericOperator> clazz = (Class<? extends GenericOperator>)classLoader.loadClass(className);
if (clazz != null) {
- Operator operIns = clazz.newInstance();
+ GenericOperator operIns = clazz.newInstance();
String s = defaultValueMapper.writeValueAsString(operIns);
oper.put("defaultValue", new JSONObject(s).get(className));
}
@@ -405,9 +423,9 @@ public class OperatorDiscoverer
loadOperatorClass();
}
if (parent == null) {
- parent = Operator.class.getName();
+ parent = GenericOperator.class.getName();
} else {
- if (!typeGraph.isAncestor(Operator.class.getName(), parent)) {
+ if (!typeGraph.isAncestor(GenericOperator.class.getName(), parent)) {
throw new IllegalArgumentException("Argument must be a subclass of Operator class");
}
}
@@ -422,7 +440,7 @@ public class OperatorDiscoverer
}
});
- if (searchTerm == null && parent.equals(Operator.class.getName())) {
+ if (searchTerm == null && parent.equals(GenericOperator.class.getName())) {
return filteredClass;
}
@@ -432,7 +450,7 @@ public class OperatorDiscoverer
Set<String> result = new HashSet<>();
for (String clazz : filteredClass) {
- if (parent.equals(Operator.class.getName()) || typeGraph.isAncestor(parent, clazz)) {
+ if (parent.equals(GenericOperator.class.getName()) || typeGraph.isAncestor(parent, clazz)) {
if (searchTerm == null) {
result.add(clazz);
} else {
@@ -526,6 +544,16 @@ public class OperatorDiscoverer
response.put(PORT_TYPE_INFO_KEY, portTypeInfo);
response.put("inputPorts", inputPorts);
response.put("outputPorts", outputPorts);
+ String type = null;
+ Class<?> genericOperator = classLoader.loadClass(clazz);
+ if (Module.class.isAssignableFrom(genericOperator)) {
+ type = GenericOperatorType.MODULE.getType();
+ } else if (Operator.class.isAssignableFrom(genericOperator)) {
+ type = GenericOperatorType.OPERATOR.getType();
+ }
+ if (type != null) {
+ response.put("type", type);
+ }
OperatorClassInfo oci = classInfo.get(clazz);
http://git-wip-us.apache.org/repos/asf/incubator-apex-core/blob/41666de8/engine/src/main/java/com/datatorrent/stram/webapp/TypeGraph.java
----------------------------------------------------------------------
diff --git a/engine/src/main/java/com/datatorrent/stram/webapp/TypeGraph.java b/engine/src/main/java/com/datatorrent/stram/webapp/TypeGraph.java
index 2f91b11..e50cb77 100644
--- a/engine/src/main/java/com/datatorrent/stram/webapp/TypeGraph.java
+++ b/engine/src/main/java/com/datatorrent/stram/webapp/TypeGraph.java
@@ -64,6 +64,7 @@ import com.google.common.collect.ImmutableSet;
import com.google.common.primitives.Primitives;
import com.datatorrent.api.Component;
+import com.datatorrent.api.DAG.GenericOperator;
import com.datatorrent.api.InputOperator;
import com.datatorrent.api.Operator;
import com.datatorrent.common.util.BaseOperator;
@@ -348,7 +349,7 @@ public class TypeGraph
public Set<String> getAllDTInstantiableOperators()
{
- TypeGraphVertex tgv = typeGraph.get(Operator.class.getName());
+ TypeGraphVertex tgv = typeGraph.get(GenericOperator.class.getName());
if (tgv == null) {
return null;
}
@@ -603,7 +604,7 @@ public class TypeGraph
this.classNode = ccn;
// update the port information if it is a Operator
- if (owner.isAncestor(Operator.class.getName(), typeName)) {
+ if (owner.isAncestor(GenericOperator.class.getName(), typeName)) {
// load ports if it is an Operator class
CompactUtil.updateCompactClassPortInfo(classN, ccn);
List<CompactFieldNode> prunedFields = new LinkedList<>();
[2/2] incubator-apex-core git commit: Merge branch 'APEXCORE-451' of
github.com:shubham-pathak22/incubator-apex-core
Posted by da...@apache.org.
Merge branch 'APEXCORE-451' of github.com:shubham-pathak22/incubator-apex-core
Project: http://git-wip-us.apache.org/repos/asf/incubator-apex-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-apex-core/commit/228c795d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-apex-core/tree/228c795d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-apex-core/diff/228c795d
Branch: refs/heads/master
Commit: 228c795d5bfd3670811c40a6a9475f2f76ec3da9
Parents: 2ad07ee 41666de
Author: David Yan <da...@datatorrent.com>
Authored: Tue May 10 10:44:52 2016 -0700
Committer: David Yan <da...@datatorrent.com>
Committed: Tue May 10 10:44:52 2016 -0700
----------------------------------------------------------------------
.../java/com/datatorrent/stram/cli/ApexCli.java | 3 +-
.../stram/webapp/OperatorDiscoverer.java | 40 +++++++++++++++++---
.../com/datatorrent/stram/webapp/TypeGraph.java | 5 ++-
3 files changed, 39 insertions(+), 9 deletions(-)
----------------------------------------------------------------------