You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@streams.apache.org by mf...@apache.org on 2016/10/12 18:59:59 UTC

[01/53] [abbrv] incubator-streams git commit: STREAMS-398 - streams-schemas

Repository: incubator-streams
Updated Branches:
  refs/heads/invalid_headers 2d8ff2439 -> b8f36f7b9


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/tag.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/tag.json b/streams-schemas/src/site/resources/verbs/tag.json
new file mode 100644
index 0000000..6208eae
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/tag.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Tag",
+    "description": "Indicates that the actor has associated the object with the target. For example, if the actor specifies that a particular user appears in a photo. the object is the user and the target is the photo.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "tag"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} tagged {object.displayName} as {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/terminate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/terminate.json b/streams-schemas/src/site/resources/verbs/terminate.json
new file mode 100644
index 0000000..280eb31
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/terminate.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Terminate",
+    "description": "Indicates that the actor has terminated the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "terminate"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} terminated {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/tie.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/tie.json b/streams-schemas/src/site/resources/verbs/tie.json
new file mode 100644
index 0000000..7530ed2
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/tie.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Tie",
+    "description": "Indicates that the actor has neither won or lost the object. This verb is generally only applicable when the object represents some form of competition, such as a game.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "tie"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} tied at {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/unfavorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/unfavorite.json b/streams-schemas/src/site/resources/verbs/unfavorite.json
new file mode 100644
index 0000000..bfa9c20
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/unfavorite.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "UnFavorite",
+    "description": "Indicates that the actor has removed the object from the collection of favorited items.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unfavorite"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} removed {object.displayName} as a favorite"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/unlike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/unlike.json b/streams-schemas/src/site/resources/verbs/unlike.json
new file mode 100644
index 0000000..4dc75f6
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/unlike.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "UnLike",
+    "description": "Indicates that the actor has removed the object from the collection of liked items.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unlike"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} no longer likes {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/unsatisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/unsatisfy.json b/streams-schemas/src/site/resources/verbs/unsatisfy.json
new file mode 100644
index 0000000..8ea075b
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/unsatisfy.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "UnSatisfy",
+    "description": "Indicates that the actor has not satisfied the object. If a target is specified, it indicates the context within which the object was not satisfied. For instance, if a person fails to satisfy the requirements of some particular challenge, the person is the actor; the requirement is the object and the challenge is the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unsatisfy"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} has not satisfied {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/unsave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/unsave.json b/streams-schemas/src/site/resources/verbs/unsave.json
new file mode 100644
index 0000000..e45a97f
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/unsave.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "UnSave",
+    "description": "Indicates that the actor has removed the object from the collection of saved items.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unsave"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} unsaved {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/unshare.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/unshare.json b/streams-schemas/src/site/resources/verbs/unshare.json
new file mode 100644
index 0000000..4ca924b
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/unshare.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "UnSave",
+    "description": "Indicates that the actor is no longer sharing the object. If a target is specified, it indicates the entity with whom the object is no longer being shared.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unshare"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} is no longer sharing {object.displayName} with {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/update.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/update.json b/streams-schemas/src/site/resources/verbs/update.json
new file mode 100644
index 0000000..4b143fc
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/update.json
@@ -0,0 +1,34 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Update",
+    "description": "The \"update\" verb indicates that the actor has modified the object. Use of the \"update\" verb is generally reserved to indicate modifications to existing objects or data such as changing an existing user's profile information.",
+    "notes": "The new property value can be a scalar value or an object. See the property object type",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "update"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} updated {target.displayName}'s {object.displayName} to {object.value}"
+        },
+        "object": {
+            "type": "object",
+            "$ref": "../object.json"
+        },
+        "target": {
+            "type": "object",
+            "optional": true,
+            "$ref": "../object.json"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/use.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/use.json b/streams-schemas/src/site/resources/verbs/use.json
new file mode 100644
index 0000000..d5a79fd
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/use.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Use",
+    "description": "Indicates that the actor has used the object in some manner.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "use"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} used {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/watch.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/watch.json b/streams-schemas/src/site/resources/verbs/watch.json
new file mode 100644
index 0000000..192d56e
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/watch.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Watch",
+    "description": "Indicates that the actor has watched the object. This verb is typically applicable only when the object represents dynamic, visible content such as a movie, a television show or a public performance.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "watch"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} watched {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/win.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/win.json b/streams-schemas/src/site/resources/verbs/win.json
new file mode 100644
index 0000000..a5bef2a
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/win.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Win",
+    "description": "Indicates that the actor has won the object.  For instance, if a person wins a game.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "win"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} won {object.displayName}"
+        }
+    }
+}


[53/53] [abbrv] incubator-streams git commit: Added license headers

Posted by mf...@apache.org.
Added license headers


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/b8f36f7b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/b8f36f7b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/b8f36f7b

Branch: refs/heads/invalid_headers
Commit: b8f36f7b9237442ccc79b3b4135a8713f21792ea
Parents: 2652ba3
Author: Matt Franklin <mf...@apache.org>
Authored: Wed Oct 12 14:59:29 2016 -0400
Committer: Matt Franklin <mf...@apache.org>
Committed: Wed Oct 12 14:59:29 2016 -0400

----------------------------------------------------------------------
 streams-plugins/pom.xml                            |  1 +
 streams-plugins/streams-plugin-cassandra/pom.xml   |  1 +
 .../StreamsCassandraGenerationConfig.java          |  1 +
 .../StreamsCassandraResourceGenerator.java         |  1 +
 .../StreamsCassandraResourceGeneratorMojo.java     |  1 +
 .../StreamsCassandraResourceGeneratorCLITest.java  |  1 +
 .../StreamsCassandraResourceGeneratorMojoTest.java |  1 +
 .../StreamsCassandraResourceGeneratorTest.java     |  1 +
 .../resources/streams-plugin-cassandra/pom.xml     |  1 +
 .../streams-plugin-elasticsearch/pom.xml           |  1 +
 .../StreamsElasticsearchGenerationConfig.java      |  1 +
 .../StreamsElasticsearchResourceGenerator.java     |  1 +
 .../StreamsElasticsearchResourceGeneratorMojo.java |  1 +
 ...reamsElasticsearchResourceGeneratorCLITest.java |  1 +
 ...eamsElasticsearchResourceGeneratorMojoTest.java |  1 +
 .../StreamsElasticsearchResourceGeneratorTest.java |  1 +
 .../resources/streams-plugin-elasticsearch/pom.xml |  1 +
 .../src/test/resources/Tweet.hql                   | 16 ++++++++++++++++
 .../src/test/resources/expected/activity.hql       | 16 ++++++++++++++++
 .../src/test/resources/expected/collection.hql     | 16 ++++++++++++++++
 .../src/test/resources/expected/media_link.hql     | 16 ++++++++++++++++
 .../src/test/resources/expected/object.hql         | 16 ++++++++++++++++
 .../test/resources/expected/objectTypes/place.hql  | 17 +++++++++++++++++
 .../src/test/resources/expected/verbs/purchase.hql | 17 +++++++++++++++++
 .../src/test/resources/expected/media_link.pig     | 16 ++++++++++++++++
 .../test/resources/expected/objectTypes/file.pig   | 16 ++++++++++++++++
 .../resources/expected/objectTypes/photo-album.pig | 16 ++++++++++++++++
 27 files changed, 179 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/pom.xml b/streams-plugins/pom.xml
index c79e5c2..44487a0 100644
--- a/streams-plugins/pom.xml
+++ b/streams-plugins/pom.xml
@@ -6,6 +6,7 @@
   ~ regarding copyright ownership.  The ASF licenses this file
   ~ to you under the Apache License, Version 2.0 (the
   ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
   ~
   ~   http://www.apache.org/licenses/LICENSE-2.0
   ~

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-cassandra/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/pom.xml b/streams-plugins/streams-plugin-cassandra/pom.xml
index c378a2b..e191e40 100644
--- a/streams-plugins/streams-plugin-cassandra/pom.xml
+++ b/streams-plugins/streams-plugin-cassandra/pom.xml
@@ -6,6 +6,7 @@
   ~ regarding copyright ownership.  The ASF licenses this file
   ~ to you under the Apache License, Version 2.0 (the
   ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
   ~
   ~   http://www.apache.org/licenses/LICENSE-2.0
   ~

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java
index 613cba2..964fff6 100644
--- a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java
+++ b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java
@@ -5,6 +5,7 @@
  * regarding copyright ownership.  The ASF licenses this file
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java
index 00416b1..7f8eb25 100644
--- a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java
+++ b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java
@@ -5,6 +5,7 @@
  * regarding copyright ownership.  The ASF licenses this file
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java
index 4320c5c..038e744 100644
--- a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java
@@ -5,6 +5,7 @@
  * regarding copyright ownership.  The ASF licenses this file
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java
index 5e26b06..ddb5a8b 100644
--- a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java
+++ b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java
@@ -5,6 +5,7 @@
  * regarding copyright ownership.  The ASF licenses this file
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java
index 13ec7e7..7f5aa39 100644
--- a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java
+++ b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java
@@ -5,6 +5,7 @@
  * regarding copyright ownership.  The ASF licenses this file
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java
index 4e886ce..91b92ca 100644
--- a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java
@@ -5,6 +5,7 @@
  * regarding copyright ownership.  The ASF licenses this file
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml b/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
index b6fa3de..2332447 100644
--- a/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
+++ b/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
@@ -5,6 +5,7 @@
   ~ regarding copyright ownership.  The ASF licenses this file
   ~ to you under the Apache License, Version 2.0 (the
   ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
   ~
   ~   http://www.apache.org/licenses/LICENSE-2.0
   ~

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-elasticsearch/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/pom.xml b/streams-plugins/streams-plugin-elasticsearch/pom.xml
index 691813a..ac08c86 100644
--- a/streams-plugins/streams-plugin-elasticsearch/pom.xml
+++ b/streams-plugins/streams-plugin-elasticsearch/pom.xml
@@ -6,6 +6,7 @@
   ~ regarding copyright ownership.  The ASF licenses this file
   ~ to you under the Apache License, Version 2.0 (the
   ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
   ~
   ~   http://www.apache.org/licenses/LICENSE-2.0
   ~

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java
index 42cd6f6..3e109a8 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java
@@ -5,6 +5,7 @@
  * regarding copyright ownership.  The ASF licenses this file
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java
index d8497dc..0b13639 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java
@@ -5,6 +5,7 @@
  * regarding copyright ownership.  The ASF licenses this file
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java
index dbb7b5d..1485023 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java
@@ -5,6 +5,7 @@
  * regarding copyright ownership.  The ASF licenses this file
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorCLITest.java
index 65dac76..09c19bb 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorCLITest.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorCLITest.java
@@ -5,6 +5,7 @@
  * regarding copyright ownership.  The ASF licenses this file
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorMojoTest.java
index 5a14d25..60f3002 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorMojoTest.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorMojoTest.java
@@ -5,6 +5,7 @@
  * regarding copyright ownership.  The ASF licenses this file
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java
index 6e039d7..0083dd6 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java
@@ -5,6 +5,7 @@
  * regarding copyright ownership.  The ASF licenses this file
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml b/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
index 2f49cad..cbdb8b3 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
+++ b/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
@@ -5,6 +5,7 @@
   ~ regarding copyright ownership.  The ASF licenses this file
   ~ to you under the Apache License, Version 2.0 (the
   ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
   ~
   ~   http://www.apache.org/licenses/LICENSE-2.0
   ~

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-hive/src/test/resources/Tweet.hql
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/resources/Tweet.hql b/streams-plugins/streams-plugin-hive/src/test/resources/Tweet.hql
index dfd3a72..4cec1ac 100644
--- a/streams-plugins/streams-plugin-hive/src/test/resources/Tweet.hql
+++ b/streams-plugins/streams-plugin-hive/src/test/resources/Tweet.hql
@@ -1,3 +1,19 @@
+-- Licensed to the Apache Software Foundation (ASF) under one
+-- or more contributor license agreements.  See the NOTICE file
+-- distributed with this work for additional information
+-- regarding copyright ownership.  The ASF licenses this file
+-- to you under the Apache License, Version 2.0 (the
+-- "License"); you may not use this file except in compliance
+-- with the License.  You may obtain a copy of the License at
+--
+--   http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing,
+-- software distributed under the License is distributed on an
+-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+-- KIND, either express or implied.  See the License for the
+-- specific language governing permissions and limitations
+-- under the License.
 /*
 root
  |-- contributors: string (nullable = true)

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-hive/src/test/resources/expected/activity.hql
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/resources/expected/activity.hql b/streams-plugins/streams-plugin-hive/src/test/resources/expected/activity.hql
index 49d0f41..9c7638c 100644
--- a/streams-plugins/streams-plugin-hive/src/test/resources/expected/activity.hql
+++ b/streams-plugins/streams-plugin-hive/src/test/resources/expected/activity.hql
@@ -1,3 +1,19 @@
+-- Licensed to the Apache Software Foundation (ASF) under one
+-- or more contributor license agreements.  See the NOTICE file
+-- distributed with this work for additional information
+-- regarding copyright ownership.  The ASF licenses this file
+-- to you under the Apache License, Version 2.0 (the
+-- "License"); you may not use this file except in compliance
+-- with the License.  You may obtain a copy of the License at
+--
+--   http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing,
+-- software distributed under the License is distributed on an
+-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+-- KIND, either express or implied.  See the License for the
+-- specific language governing permissions and limitations
+-- under the License.
 CREATE TABLE `activity`
 (
 `id` STRING,

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-hive/src/test/resources/expected/collection.hql
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/resources/expected/collection.hql b/streams-plugins/streams-plugin-hive/src/test/resources/expected/collection.hql
index 94b986f..01fcb4a 100644
--- a/streams-plugins/streams-plugin-hive/src/test/resources/expected/collection.hql
+++ b/streams-plugins/streams-plugin-hive/src/test/resources/expected/collection.hql
@@ -1,3 +1,19 @@
+-- Licensed to the Apache Software Foundation (ASF) under one
+-- or more contributor license agreements.  See the NOTICE file
+-- distributed with this work for additional information
+-- regarding copyright ownership.  The ASF licenses this file
+-- to you under the Apache License, Version 2.0 (the
+-- "License"); you may not use this file except in compliance
+-- with the License.  You may obtain a copy of the License at
+--
+--   http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing,
+-- software distributed under the License is distributed on an
+-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+-- KIND, either express or implied.  See the License for the
+-- specific language governing permissions and limitations
+-- under the License.
 CREATE TABLE `collection`
 (
 `url` STRING,

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-hive/src/test/resources/expected/media_link.hql
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/resources/expected/media_link.hql b/streams-plugins/streams-plugin-hive/src/test/resources/expected/media_link.hql
index d0afe0f..aa604ec 100644
--- a/streams-plugins/streams-plugin-hive/src/test/resources/expected/media_link.hql
+++ b/streams-plugins/streams-plugin-hive/src/test/resources/expected/media_link.hql
@@ -1,3 +1,19 @@
+-- Licensed to the Apache Software Foundation (ASF) under one
+-- or more contributor license agreements.  See the NOTICE file
+-- distributed with this work for additional information
+-- regarding copyright ownership.  The ASF licenses this file
+-- to you under the Apache License, Version 2.0 (the
+-- "License"); you may not use this file except in compliance
+-- with the License.  You may obtain a copy of the License at
+--
+--   http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing,
+-- software distributed under the License is distributed on an
+-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+-- KIND, either express or implied.  See the License for the
+-- specific language governing permissions and limitations
+-- under the License.
 CREATE TABLE `media_link`
 (
 `duration` FLOAT,

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-hive/src/test/resources/expected/object.hql
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/resources/expected/object.hql b/streams-plugins/streams-plugin-hive/src/test/resources/expected/object.hql
index fb44767..72ccc82 100644
--- a/streams-plugins/streams-plugin-hive/src/test/resources/expected/object.hql
+++ b/streams-plugins/streams-plugin-hive/src/test/resources/expected/object.hql
@@ -1,3 +1,19 @@
+-- Licensed to the Apache Software Foundation (ASF) under one
+-- or more contributor license agreements.  See the NOTICE file
+-- distributed with this work for additional information
+-- regarding copyright ownership.  The ASF licenses this file
+-- to you under the Apache License, Version 2.0 (the
+-- "License"); you may not use this file except in compliance
+-- with the License.  You may obtain a copy of the License at
+--
+--   http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing,
+-- software distributed under the License is distributed on an
+-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+-- KIND, either express or implied.  See the License for the
+-- specific language governing permissions and limitations
+-- under the License.
 CREATE TABLE `object`
 (
 `id` STRING,

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-hive/src/test/resources/expected/objectTypes/place.hql
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/resources/expected/objectTypes/place.hql b/streams-plugins/streams-plugin-hive/src/test/resources/expected/objectTypes/place.hql
index b861fad..3846304 100644
--- a/streams-plugins/streams-plugin-hive/src/test/resources/expected/objectTypes/place.hql
+++ b/streams-plugins/streams-plugin-hive/src/test/resources/expected/objectTypes/place.hql
@@ -1,3 +1,20 @@
+-- Licensed to the Apache Software Foundation (ASF) under one
+-- or more contributor license agreements.  See the NOTICE file
+-- distributed with this work for additional information
+-- regarding copyright ownership.  The ASF licenses this file
+-- to you under the Apache License, Version 2.0 (the
+-- "License"); you may not use this file except in compliance
+-- with the License.  You may obtain a copy of the License at
+--
+--   http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing,
+-- software distributed under the License is distributed on an
+-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+-- KIND, either express or implied.  See the License for the
+-- specific language governing permissions and limitations
+-- under the License.
+
 CREATE TABLE `objectTypes_place`
 (
 `id` STRING,

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-hive/src/test/resources/expected/verbs/purchase.hql
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/resources/expected/verbs/purchase.hql b/streams-plugins/streams-plugin-hive/src/test/resources/expected/verbs/purchase.hql
index 4a05269..3f3db77 100644
--- a/streams-plugins/streams-plugin-hive/src/test/resources/expected/verbs/purchase.hql
+++ b/streams-plugins/streams-plugin-hive/src/test/resources/expected/verbs/purchase.hql
@@ -1,3 +1,20 @@
+-- Licensed to the Apache Software Foundation (ASF) under one
+-- or more contributor license agreements.  See the NOTICE file
+-- distributed with this work for additional information
+-- regarding copyright ownership.  The ASF licenses this file
+-- to you under the Apache License, Version 2.0 (the
+-- "License"); you may not use this file except in compliance
+-- with the License.  You may obtain a copy of the License at
+--
+--   http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing,
+-- software distributed under the License is distributed on an
+-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+-- KIND, either express or implied.  See the License for the
+-- specific language governing permissions and limitations
+-- under the License.
+
 CREATE TABLE `verbs_purchase`
 (
 `id` STRING,

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-pig/src/test/resources/expected/media_link.pig
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/resources/expected/media_link.pig b/streams-plugins/streams-plugin-pig/src/test/resources/expected/media_link.pig
index 643686e..94db813 100644
--- a/streams-plugins/streams-plugin-pig/src/test/resources/expected/media_link.pig
+++ b/streams-plugins/streams-plugin-pig/src/test/resources/expected/media_link.pig
@@ -1 +1,17 @@
+-- Licensed to the Apache Software Foundation (ASF) under one
+-- or more contributor license agreements.  See the NOTICE file
+-- distributed with this work for additional information
+-- regarding copyright ownership.  The ASF licenses this file
+-- to you under the Apache License, Version 2.0 (the
+-- "License"); you may not use this file except in compliance
+-- with the License.  You may obtain a copy of the License at
+--
+--   http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing,
+-- software distributed under the License is distributed on an
+-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+-- KIND, either express or implied.  See the License for the
+-- specific language governing permissions and limitations
+-- under the License.
 media_link = LOAD '' USING JsonLoader('duration:double, height:int, width:int, url:chararray');
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/file.pig
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/file.pig b/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/file.pig
index 9aa8d63..b05a55f 100644
--- a/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/file.pig
+++ b/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/file.pig
@@ -1 +1,17 @@
+-- Licensed to the Apache Software Foundation (ASF) under one
+-- or more contributor license agreements.  See the NOTICE file
+-- distributed with this work for additional information
+-- regarding copyright ownership.  The ASF licenses this file
+-- to you under the Apache License, Version 2.0 (the
+-- "License"); you may not use this file except in compliance
+-- with the License.  You may obtain a copy of the License at
+--
+--   http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing,
+-- software distributed under the License is distributed on an
+-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+-- KIND, either express or implied.  See the License for the
+-- specific language governing permissions and limitations
+-- under the License.
 objectTypes_file = LOAD '' USING JsonLoader('id:chararray, image:(duration:double, height:int, width:int, url:chararray), displayName:chararray, summary:chararray, content:chararray, url:chararray, objectType:chararray, author:(id:chararray, image:(duration:double, height:int, width:int, url:chararray), displayName:chararray, summary:chararray, content:chararray, url:chararray, objectType:chararray, author:(id:chararray, displayName:chararray, summary:chararray, content:chararray, url:chararray, objectType:chararray, published:chararray, updated:chararray, {t: (upstreamDuplicates:chararray)}, {t: (downstreamDuplicates:chararray)}), published:chararray, updated:chararray, {t: (upstreamDuplicates:chararray)}, {t: (downstreamDuplicates:chararray)}), published:chararray, updated:chararray, {t: (upstreamDuplicates:chararray)}, {t: (downstreamDuplicates:chararray)}, fileUrl:chararray, mimeType:chararray');
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b8f36f7b/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/photo-album.pig
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/photo-album.pig b/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/photo-album.pig
index 83b150f..e4f075f 100644
--- a/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/photo-album.pig
+++ b/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/photo-album.pig
@@ -1 +1,17 @@
+-- Licensed to the Apache Software Foundation (ASF) under one
+-- or more contributor license agreements.  See the NOTICE file
+-- distributed with this work for additional information
+-- regarding copyright ownership.  The ASF licenses this file
+-- to you under the Apache License, Version 2.0 (the
+-- "License"); you may not use this file except in compliance
+-- with the License.  You may obtain a copy of the License at
+--
+--   http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing,
+-- software distributed under the License is distributed on an
+-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+-- KIND, either express or implied.  See the License for the
+-- specific language governing permissions and limitations
+-- under the License.
 objectTypes_photoalbum = LOAD '' USING JsonLoader('objectType:chararray, {t: ()}');
\ No newline at end of file


[25/53] [abbrv] incubator-streams git commit: refactoring, testing, documentation, CLI modes

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaOrderingTests.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaOrderingTests.java b/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaOrderingTests.java
deleted file mode 100644
index 9979250..0000000
--- a/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaOrderingTests.java
+++ /dev/null
@@ -1,146 +0,0 @@
-package org.apache.streams.schema.test;
-
-import com.google.common.base.Optional;
-import com.google.common.base.Predicate;
-import com.google.common.collect.Iterators;
-import com.google.common.collect.Lists;
-import org.apache.streams.schema.Schema;
-import org.apache.streams.schema.SchemaStore;
-import org.junit.Test;
-
-import java.io.File;
-import java.util.Iterator;
-import java.util.List;
-
-/**
- * Created by sblackmon on 5/3/16.
- */
-public class SchemaOrderingTests {
-
-    @Test
-    public void compareVerbParent() {
-        SchemaStore schemaStore = new SchemaStore();
-        File update = new File("target/classes/verbs/update.json");
-        schemaStore.create(update.toURI());
-        File activity = new File("target/classes/activity.json");
-        schemaStore.create(activity.toURI());
-        assert( schemaStore.compare( schemaStore.getByUri(update.toURI()).get(), schemaStore.getByUri(activity.toURI()).get()) == 1);
-        Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator();
-        assertContainsItemsEndingWithInOrder(
-                schemaIterator,
-                Lists.newArrayList(
-                        "activity.json",
-                        "update.json"
-                )
-        );
-    }
-
-    @Test
-    public void compareObjectTypeParent() {
-        SchemaStore schemaStore = new SchemaStore();
-        File alert = new File("target/classes/objectTypes/alert.json");
-        schemaStore.create(alert.toURI());
-        File object = new File("target/classes/object.json");
-        schemaStore.create(object.toURI());
-        assert( schemaStore.compare( schemaStore.getByUri(object.toURI()).get(), schemaStore.getByUri(alert.toURI()).get()) == -1);
-        Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator();
-        assertContainsItemsEndingWithInOrder(
-                schemaIterator,
-                Lists.newArrayList(
-                        "object.json",
-                        "alert.json"
-                )
-        );
-    }
-
-    @Test
-    public void compareUnrelated() {
-        SchemaStore schemaStore = new SchemaStore();
-        File alert = new File("target/classes/objectTypes/alert.json");
-        schemaStore.create(alert.toURI());
-        File update = new File("target/classes/verbs/update.json");
-        schemaStore.create(update.toURI());
-        assert( schemaStore.compare( schemaStore.getByUri(alert.toURI()).get(), schemaStore.getByUri(update.toURI()).get()) == 0);
-    }
-
-    @Test
-    public void compareVerbFieldRef() {
-        SchemaStore schemaStore = new SchemaStore();
-        File update = new File("target/classes/verbs/update.json");
-        schemaStore.create(update.toURI());
-        File object = new File("target/classes/object.json");
-        schemaStore.create(object.toURI());
-        assert( schemaStore.compare( schemaStore.getByUri(update.toURI()).get(), schemaStore.getByUri(object.toURI()).get()) == 1);
-        Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator();
-        assertContainsItemsEndingWithInOrder(
-                schemaIterator,
-                Lists.newArrayList(
-                        "object.json",
-                        "update.json"
-                )
-        );
-    }
-
-    @Test
-    public void compareObjectTypeFieldRef() {
-        SchemaStore schemaStore = new SchemaStore();
-        File alert = new File("target/classes/objectTypes/alert.json");
-        schemaStore.create(alert.toURI());
-        File media_link = new File("target/classes/media_link.json");
-        schemaStore.create(media_link.toURI());
-        assert( schemaStore.compare( schemaStore.getByUri(media_link.toURI()).get(), schemaStore.getByUri(alert.toURI()).get()) == -1);
-        Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator();
-        assertContainsItemsEndingWithInOrder(
-                schemaIterator,
-                Lists.newArrayList(
-                        "media_link.json",
-                        "object.json",
-                        "alert.json"
-                )
-        );
-    }
-
-    @Test
-    public void compareVerbAncestorIndirect() {
-        SchemaStore schemaStore = new SchemaStore();
-        File update = new File("target/classes/verbs/update.json");
-        schemaStore.create(update.toURI());
-        File media_link = new File("target/classes/media_link.json");
-        assert( schemaStore.compare( schemaStore.getByUri(media_link.toURI()).get(), schemaStore.getByUri(update.toURI()).get()) == -1);
-        Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator();
-        assertContainsItemsEndingWithInOrder(
-                schemaIterator,
-                Lists.newArrayList(
-                        "media_link.json",
-                        "update.json"
-                )
-        );
-    }
-
-
-    public void assertContainsItemsEndingWithInOrder(Iterator<Schema> iterator, List<String> items) {
-        for( String item : items ) {
-            Optional<Schema> tryFind = Iterators.tryFind( iterator, new SchemaUriEndsWithPredicate(item) );
-            assert( tryFind.isPresent() );
-        }
-    }
-
-    public class SchemaUriEndsWithPredicate implements Predicate<Schema> {
-
-        private String endsWith;
-
-        public SchemaUriEndsWithPredicate(String endsWith) {
-            this.endsWith = endsWith;
-        }
-
-        @Override
-        public boolean apply(Schema input) {
-            return input.getURI().getPath().endsWith(endsWith);
-        }
-
-        @Override
-        public boolean equals(Object object) {
-            return false;
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaStoreTests.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaStoreTests.java b/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaStoreTests.java
deleted file mode 100644
index 9e354fe..0000000
--- a/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaStoreTests.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package org.apache.streams.schema.test;
-
-import com.google.common.base.Optional;
-import com.google.common.base.Predicate;
-import com.google.common.collect.Iterators;
-import com.google.common.collect.Lists;
-import org.apache.streams.schema.Schema;
-import org.apache.streams.schema.SchemaStore;
-import org.junit.Test;
-
-import java.io.File;
-import java.net.URI;
-import java.util.Iterator;
-import java.util.List;
-
-/**
- * Created by sblackmon on 5/2/16.
- */
-public class SchemaStoreTests {
-
-    @Test
-    public void indexMediaLink() {
-        SchemaStore schemaStore = new SchemaStore();
-        File file = new File("target/classes/media_link.json");
-        schemaStore.create(file.toURI());
-        assert( schemaStore.getFileUriCount() == 1);
-        assert( schemaStore.getByUri(file.toURI()).isPresent());
-        assert( schemaStore.getById(schemaStore.getByUri(file.toURI()).get().getId()).isPresent());
-    }
-
-    @Test
-    public void indexApprove() {
-        SchemaStore schemaStore = new SchemaStore();
-        File file = new File("target/classes/verbs/approve.json");
-        schemaStore.create(file.toURI());
-        assert( schemaStore.getFileUriCount() == 4);
-        assert( schemaStore.getByUri(file.toURI()).isPresent());
-        assert( schemaStore.getById(schemaStore.getByUri(file.toURI()).get().getId()).isPresent());
-    }
-
-    @Test
-    public void indexCollection() {
-        SchemaStore schemaStore = new SchemaStore();
-        File file = new File("target/classes/collection.json");
-        schemaStore.create(file.toURI());
-        assert( schemaStore.getFileUriCount() == 3);
-        assert( schemaStore.getByUri(file.toURI()).isPresent());
-        assert( schemaStore.getById(schemaStore.getByUri(file.toURI()).get().getId()).isPresent());
-        Schema collection = schemaStore.getByUri(file.toURI()).get();
-        assert( collection.getParent() == null );
-        assert( schemaStore.getById(
-                URI.create("http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/object.json#"
-                )).isPresent());
-    }
-
-    @Test
-    public void indexUpdate() {
-        SchemaStore schemaStore = new SchemaStore();
-        File file = new File("target/classes/verbs/update.json");
-        schemaStore.create(file.toURI());
-        assert( schemaStore.getFileUriCount() == 4);
-        assert( schemaStore.getByUri(file.toURI()).isPresent());
-        assert( schemaStore.getById(schemaStore.getByUri(file.toURI()).get().getId()).isPresent());
-        Schema update = schemaStore.getByUri(file.toURI()).get();
-        assert( update.getParent() != null );
-        assert( update.getParent().getId().getScheme().equals("http"));
-        assert( update.getParent().getId().getHost().equals("streams.incubator.apache.org"));
-        assert( update.getParent().getId().getPath().startsWith("/site/0.3-incubating-SNAPSHOT/streams-schemas"));
-        assert( update.getParent().getId().getPath().endsWith("activity.json"));
-    }
-
-    // test create from messed up URI
-
-    // test create from URI with messed up reference
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/accept.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/accept.json b/streams-schemas/src/test/resources/activities/accept.json
deleted file mode 100644
index c1dfd5f..0000000
--- a/streams-schemas/src/test/resources/activities/accept.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally"
-  },
-  "verb": "accept",
-  "object": {
-    "objectType": "job",
-    "displayName": "Director of Marketing"
-  },
-  "title": "Sally accepted the Director of Marketing job."
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/access.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/access.json b/streams-schemas/src/test/resources/activities/access.json
deleted file mode 100644
index 93bc6e2..0000000
--- a/streams-schemas/src/test/resources/activities/access.json
+++ /dev/null
@@ -1,17 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "access",
-  "object": {
-    "objectType": "file",
-    "displayName": "4Q2012 Sales Forecast.xls"
-  },
-  "published": "2012-12-12T12:12:12Z",
-  "title": "Joe accessed the file \"4Q2012 Sales Forecast.xls\""
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/acknowledge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/acknowledge.json b/streams-schemas/src/test/resources/activities/acknowledge.json
deleted file mode 100644
index 2b69fa7..0000000
--- a/streams-schemas/src/test/resources/activities/acknowledge.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally"
-  },
-  "verb": "acknowledge",
-  "object": {
-    "objectType": "issue",
-    "displayName": "#123: There is a problem with the build"
-  },
-  "content": "Sally acknowledged Issue #123"
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/add.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/add.json b/streams-schemas/src/test/resources/activities/add.json
deleted file mode 100644
index b4e8151..0000000
--- a/streams-schemas/src/test/resources/activities/add.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "add",
-  "object": {
-    "objectType": "image",
-    "displayName": "My cat",
-    "fullImage": {"url": "http://example.org/cat.jpg"}
-  },
-  "target": {
-    "objectType": "collection",
-    "displayName": "Joe's Photo Album",
-    "objectTypes": ["image"]
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/agree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/agree.json b/streams-schemas/src/test/resources/activities/agree.json
deleted file mode 100644
index 3034cd8..0000000
--- a/streams-schemas/src/test/resources/activities/agree.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally"
-  },
-  "verb": "agree",
-  "object": {
-    "objectType": "article",
-    "displayName": "Some Random Article Online"
-  }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/append.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/append.json b/streams-schemas/src/test/resources/activities/append.json
deleted file mode 100644
index d8fb3be..0000000
--- a/streams-schemas/src/test/resources/activities/append.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "append",
-  "object": {"content": "This is some text"},
-  "target": {
-    "objectType": "file",
-    "displayName": "log.txt"
-  }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/approve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/approve.json b/streams-schemas/src/test/resources/activities/approve.json
deleted file mode 100644
index b6f378e..0000000
--- a/streams-schemas/src/test/resources/activities/approve.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally"
-  },
-  "verb": "approve",
-  "object": {
-    "objectType": "task",
-    "actor": {"displayName": "Joe"},
-    "verb": "join",
-    "object": {
-      "objectType": "group",
-      "displayName": "Administrators"
-    }
-  }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/archive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/archive.json b/streams-schemas/src/test/resources/activities/archive.json
deleted file mode 100644
index 557dcdf..0000000
--- a/streams-schemas/src/test/resources/activities/archive.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "archive",
-  "object": {
-    "objectType": "file",
-    "displayName": "4Q2012 Sales Forecast.xls"
-  }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/assign.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/assign.json b/streams-schemas/src/test/resources/activities/assign.json
deleted file mode 100644
index 51b8a51..0000000
--- a/streams-schemas/src/test/resources/activities/assign.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally"
-  },
-  "verb": "assign",
-  "object": {
-    "objectType": "issue",
-    "displayName": "Issue #123: Some Issue"
-  },
-  "target": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "title": "Sally assigned Issue #123 to Joe"
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/at.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/at.json b/streams-schemas/src/test/resources/activities/at.json
deleted file mode 100644
index 64a77f9..0000000
--- a/streams-schemas/src/test/resources/activities/at.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "at",
-  "object": {
-    "objectType": "place",
-    "displayName": "Acme, Co."
-  }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/attach.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/attach.json b/streams-schemas/src/test/resources/activities/attach.json
deleted file mode 100644
index 716616b..0000000
--- a/streams-schemas/src/test/resources/activities/attach.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally"
-  },
-  "verb": "attach",
-  "object": {
-    "objectType": "binary",
-    "data": "dGhpcyBpcyB1bmNvbXByZXNzZWQgZGF0YQo="
-  },
-  "target": {
-    "objectType": "issue",
-    "displayName": "Issue #123"
-  },
-  "title": "Sally added an attachment to Issue #123"
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/attend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/attend.json b/streams-schemas/src/test/resources/activities/attend.json
deleted file mode 100644
index f8c0838..0000000
--- a/streams-schemas/src/test/resources/activities/attend.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "attend",
-  "object": {
-    "objectType": "event",
-    "displayName": "Sally's Meeting"
-  }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/author.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/author.json b/streams-schemas/src/test/resources/activities/author.json
deleted file mode 100644
index 1903700..0000000
--- a/streams-schemas/src/test/resources/activities/author.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally"
-  },
-  "verb": "author",
-  "object": {
-    "objectType": "file",
-    "displayName": "4Q2012 Sales Forecast.xls"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/authorize.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/authorize.json b/streams-schemas/src/test/resources/activities/authorize.json
deleted file mode 100644
index 2d9d1b3..0000000
--- a/streams-schemas/src/test/resources/activities/authorize.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "authorize",
-  "object": {
-    "objectType": "task",
-    "actor": {
-      "objectType": "person",
-      "displayName": "Sally"
-    },
-    "verb": "access",
-    "object": {
-      "objectType": "place",
-      "displayName": "Joe's Home"
-    }
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/borrow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/borrow.json b/streams-schemas/src/test/resources/activities/borrow.json
deleted file mode 100644
index e21809a..0000000
--- a/streams-schemas/src/test/resources/activities/borrow.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally"
-  },
-  "verb": "borrow",
-  "object": {
-    "objectType": "book",
-    "displayName": "Cloud Atlas"
-  },
-  "target": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "title": "Sally borrowed the book 'Cloud Atlas' from Joe"
-}
-    

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/build.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/build.json b/streams-schemas/src/test/resources/activities/build.json
deleted file mode 100644
index 78878e1..0000000
--- a/streams-schemas/src/test/resources/activities/build.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "build",
-  "object": {
-    "objectType": "application",
-    "displayName": "MyApp Builder 12345"
-  }
-}
-   

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/cancel.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/cancel.json b/streams-schemas/src/test/resources/activities/cancel.json
deleted file mode 100644
index b7aba81..0000000
--- a/streams-schemas/src/test/resources/activities/cancel.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally"
-  },
-  "verb": "cancel",
-  "object": {
-    "objectType": "offer",
-    "displayName": "Free Money!"
-  },
-  "title": "Sally cancelled the offer for free money."
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/checkin.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/checkin.json b/streams-schemas/src/test/resources/activities/checkin.json
deleted file mode 100644
index 97216b9..0000000
--- a/streams-schemas/src/test/resources/activities/checkin.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "checkin",
-  "object": {
-    "objectType": "place",
-    "displayName": "Acme, Co"
-  },
-  "title": "Joe checked in at Acme, Co"
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/close.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/close.json b/streams-schemas/src/test/resources/activities/close.json
deleted file mode 100644
index 362e3f6..0000000
--- a/streams-schemas/src/test/resources/activities/close.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "close",
-  "object": {
-    "objectType": "issue",
-    "displayName": "Issue #123"
-  },
-  "title": "Joe closed issue #123"
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/complete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/complete.json b/streams-schemas/src/test/resources/activities/complete.json
deleted file mode 100644
index 06694a7..0000000
--- a/streams-schemas/src/test/resources/activities/complete.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally"
-  },
-  "verb": "complete",
-  "object": {
-    "objectType": "process",
-    "displayName": "Some long process"
-  }
-}
-    

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/confirm.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/confirm.json b/streams-schemas/src/test/resources/activities/confirm.json
deleted file mode 100644
index 9307c38..0000000
--- a/streams-schemas/src/test/resources/activities/confirm.json
+++ /dev/null
@@ -1,17 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "confirm",
-  "object": {
-    "objectType": "issue",
-    "displayName": "Issue #123"
-  },
-  "title": "Joe confirmed issue #123"
-}
-

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/consume.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/consume.json b/streams-schemas/src/test/resources/activities/consume.json
deleted file mode 100644
index ed907e3..0000000
--- a/streams-schemas/src/test/resources/activities/consume.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally"
-  },
-  "verb": "consume",
-  "object": {
-    "objectType": "product",
-    "displayName": "Some amazing product"
-  }
-}
-    

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/create.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/create.json b/streams-schemas/src/test/resources/activities/create.json
deleted file mode 100644
index 5d8afb3..0000000
--- a/streams-schemas/src/test/resources/activities/create.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally"
-  },
-  "verb": "create",
-  "object": {
-    "objectType": "product",
-    "displayName": "Some amazing product"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/delete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/delete.json b/streams-schemas/src/test/resources/activities/delete.json
deleted file mode 100644
index 6943046..0000000
--- a/streams-schemas/src/test/resources/activities/delete.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "delete",
-  "object": {
-    "objectType": "file",
-    "displayName": "4Q2012 Sales Forecast.xls"
-  },
-  "title": "Joe is probably going to get fired."
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/deliver.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/deliver.json b/streams-schemas/src/test/resources/activities/deliver.json
deleted file mode 100644
index 620f0b5..0000000
--- a/streams-schemas/src/test/resources/activities/deliver.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally"
-  },
-  "verb": "deliver",
-  "object": {
-    "objectType": "note",
-    "displayName": "Bad News",
-    "content": "Joe deleted the sales forecast"
-  },
-  "target": {
-    "objectType": "person",
-    "displayName": "Joe's Boss"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/deny.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/deny.json b/streams-schemas/src/test/resources/activities/deny.json
deleted file mode 100644
index b83ca60..0000000
--- a/streams-schemas/src/test/resources/activities/deny.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "deny",
-  "object": {
-    "objectType": "task",
-    "actor": {
-      "objectType": "person",
-      "displayName": "Joe"
-    },
-    "verb": "delete",
-    "object": {
-      "objectType": "file",
-      "displayName": "4Q2012 Sales Forecast.xls"
-    }
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/disagree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/disagree.json b/streams-schemas/src/test/resources/activities/disagree.json
deleted file mode 100644
index 8614e88..0000000
--- a/streams-schemas/src/test/resources/activities/disagree.json
+++ /dev/null
@@ -1,30 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally"
-  },
-  "verb": "disagree",
-  "object": {
-    "actor": {
-      "objectType": "person",
-      "displayName": "Joe"
-    },
-    "verb": "deny",
-    "object": {
-      "objectType": "task",
-      "actor": {
-        "objectType": "person",
-        "displayName": "Joe"
-      },
-      "verb": "delete",
-      "object": {
-        "objectType": "file",
-        "displayName": "4Q2012 Sales Forecast.xls"
-      }
-    }
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/dislike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/dislike.json b/streams-schemas/src/test/resources/activities/dislike.json
deleted file mode 100644
index 16c2148..0000000
--- a/streams-schemas/src/test/resources/activities/dislike.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "dislike",
-  "object": {
-    "objectType": "person",
-    "displayName": "Sally"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/experience.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/experience.json b/streams-schemas/src/test/resources/activities/experience.json
deleted file mode 100644
index d81d024..0000000
--- a/streams-schemas/src/test/resources/activities/experience.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally"
-  },
-  "verb": "experience",
-  "object": {
-    "objectType": "event",
-    "displayName": "Disciplinary Action for Joe"
-  }
-}
-

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/favorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/favorite.json b/streams-schemas/src/test/resources/activities/favorite.json
deleted file mode 100644
index 3df99bf..0000000
--- a/streams-schemas/src/test/resources/activities/favorite.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe's Boss"
-  },
-  "verb": "favorite",
-  "object": {
-    "objectType": "person",
-    "displayName": "Sally"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/find.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/find.json b/streams-schemas/src/test/resources/activities/find.json
deleted file mode 100644
index 9c25c59..0000000
--- a/streams-schemas/src/test/resources/activities/find.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "find",
-  "object": {
-    "objectType": "application",
-    "displayName": "Unapproved Software Application"
-  },
-  "location": {
-    "objectType": "place",
-    "displayName": "Sally's Computer"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/flag-as-inappropriate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/flag-as-inappropriate.json b/streams-schemas/src/test/resources/activities/flag-as-inappropriate.json
deleted file mode 100644
index 6f4d202..0000000
--- a/streams-schemas/src/test/resources/activities/flag-as-inappropriate.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Sally's Boss"
-  },
-  "verb": "flag-as-inappropriate",
-  "object": {
-    "objectType": "application",
-    "displayName": "Unapproved Software Application",
-    "location": {
-      "displayName": "Sally's Computer"
-    }
-  },
-  "context": {
-    "objectType": "issue",
-    "displayName": "Issue #125",
-    "types": ["http://example.org/violation-of-corporate-policy"]
-  }
-}
-

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/follow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/follow.json b/streams-schemas/src/test/resources/activities/follow.json
deleted file mode 100644
index fc8c992..0000000
--- a/streams-schemas/src/test/resources/activities/follow.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe"
-  },
-  "verb": "follow",
-  "object": {
-    "objectType": "issue",
-    "displayName": "Issue #125"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/give.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/give.json b/streams-schemas/src/test/resources/activities/give.json
deleted file mode 100644
index f145296..0000000
--- a/streams-schemas/src/test/resources/activities/give.json
+++ /dev/null
@@ -1,28 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Joe's Boss"
-  },
-  "verb": "give",
-  "object": {
-    "objectType": "note",
-    "displayName": "Notice of Employment Termination"
-  },
-  "target": {
-    "objectType": "collection",
-    "items": [
-      {
-        "objectType": "person",
-        "displayName": "Joe"
-      },
-      {
-        "objectType": "person",
-        "displayName": "Sally"
-      }
-    ]
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/host.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/host.json b/streams-schemas/src/test/resources/activities/host.json
deleted file mode 100644
index 3331353..0000000
--- a/streams-schemas/src/test/resources/activities/host.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Bob"
-  },
-  "verb": "host",
-  "object": {
-    "objectType": "event",
-    "displayName": "Job Interview"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/ignore.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/ignore.json b/streams-schemas/src/test/resources/activities/ignore.json
deleted file mode 100644
index 012013a..0000000
--- a/streams-schemas/src/test/resources/activities/ignore.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "ignore",
-  "object": {
-    "objectType": "note",
-    "displayName": "Joe's request for his job back."
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/insert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/insert.json b/streams-schemas/src/test/resources/activities/insert.json
deleted file mode 100644
index 57bda66..0000000
--- a/streams-schemas/src/test/resources/activities/insert.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Bob"
-  },
-  "verb": "insert",
-  "object": {
-    "objectType": "note",
-    "displayName": "Notes about Employee Disciplinary Actions"
-  },
-  "target": {
-    "objectType": "file",
-    "displayName": "2013 Corporate Policy Updates.doc"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/install.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/install.json b/streams-schemas/src/test/resources/activities/install.json
deleted file mode 100644
index 1ecdecd..0000000
--- a/streams-schemas/src/test/resources/activities/install.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "install",
-  "object": {
-    "objectType": "application",
-    "displayName": "Approved Software Scanning Tool",
-    "location": {
-      "displayName": "All computers in Building A"
-    }
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/interact.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/interact.json b/streams-schemas/src/test/resources/activities/interact.json
deleted file mode 100644
index f427513..0000000
--- a/streams-schemas/src/test/resources/activities/interact.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Bob"
-  },
-  "verb": "interact",
-  "object": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "title": "Bob called Laura."
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/invite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/invite.json b/streams-schemas/src/test/resources/activities/invite.json
deleted file mode 100644
index 7c84b78..0000000
--- a/streams-schemas/src/test/resources/activities/invite.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "invite",
-  "object": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "target": {
-    "objectType": "event",
-    "displayName": "Job Interview"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/join.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/join.json b/streams-schemas/src/test/resources/activities/join.json
deleted file mode 100644
index 7996a9b..0000000
--- a/streams-schemas/src/test/resources/activities/join.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "join",
-  "object": {
-    "objectType": "organization",
-    "displayName": "Acme, Co"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/leave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/leave.json b/streams-schemas/src/test/resources/activities/leave.json
deleted file mode 100644
index 08516c5..0000000
--- a/streams-schemas/src/test/resources/activities/leave.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "leave",
-  "object": {
-    "objectType": "organization",
-    "displayName": "Other, Co"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/like.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/like.json b/streams-schemas/src/test/resources/activities/like.json
deleted file mode 100644
index 853676f..0000000
--- a/streams-schemas/src/test/resources/activities/like.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "like",
-  "object": {
-    "actor": {
-      "objectType": "person",
-      "displayName": "Mark"
-    },
-    "verb": "join",
-    "object": {
-      "objectType": "organization",
-      "displayName": "Acme, Co"
-    }
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/listen.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/listen.json b/streams-schemas/src/test/resources/activities/listen.json
deleted file mode 100644
index 1268060..0000000
--- a/streams-schemas/src/test/resources/activities/listen.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "listen",
-  "object": {
-    "objectType": "audio",
-    "displayName": "Welcome to the Company (Podcast).mp3"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/lose.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/lose.json b/streams-schemas/src/test/resources/activities/lose.json
deleted file mode 100644
index 073e914..0000000
--- a/streams-schemas/src/test/resources/activities/lose.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "organization",
-    "displayName": "New York Yankees"
-  },
-  "verb": "lose",
-  "object": {
-    "objectType": "game",
-    "displayName": "World Series"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/make-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/make-friend.json b/streams-schemas/src/test/resources/activities/make-friend.json
deleted file mode 100644
index 1acf539..0000000
--- a/streams-schemas/src/test/resources/activities/make-friend.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "make-friend",
-  "object": {
-    "objectType": "person",
-    "displayName": "Laura"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/open.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/open.json b/streams-schemas/src/test/resources/activities/open.json
deleted file mode 100644
index 4bf47cd..0000000
--- a/streams-schemas/src/test/resources/activities/open.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "open",
-  "object": {
-    "objectType": "issue",
-    "displayName": "Issue #126"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/play.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/play.json b/streams-schemas/src/test/resources/activities/play.json
deleted file mode 100644
index 0605662..0000000
--- a/streams-schemas/src/test/resources/activities/play.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "play",
-  "object": {
-    "objectType": "audio",
-    "displayName": "Call Me Maybe"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/post.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/post.json b/streams-schemas/src/test/resources/activities/post.json
deleted file mode 100644
index 73cfff7..0000000
--- a/streams-schemas/src/test/resources/activities/post.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
-  "published": "2011-02-10T15:04:55Z",
-  "actor": {
-    "url": "http://example.org/martin",
-    "objectType" : "person",
-    "id": "tag:example.org,2011:martin",
-    "image": {
-      "url": "http://example.org/martin/image",
-      "width": 250,
-      "height": 250
-    },
-    "displayName": "Martin Smith"
-  },
-  "verb": "post",
-  "object" : {
-    "url": "http://example.org/blog/2011/02/entry",
-    "id": "tag:example.org,2011:abc123/xyz"
-  },
-  "target" : {
-    "url": "http://example.org/blog/",
-    "objectType": "blog",
-    "id": "tag:example.org,2011:abc123",
-    "displayName": "Martin's Blog"
-  }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/present.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/present.json b/streams-schemas/src/test/resources/activities/present.json
deleted file mode 100644
index 8f4df12..0000000
--- a/streams-schemas/src/test/resources/activities/present.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "present",
-  "object": {
-    "objectType": "file",
-    "displayName": "1Q2013 Sales Forecast.ppt"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/purchase.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/purchase.json b/streams-schemas/src/test/resources/activities/purchase.json
deleted file mode 100644
index 3354597..0000000
--- a/streams-schemas/src/test/resources/activities/purchase.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "purchase",
-  "object": {
-    "objectType": "video",
-    "displayName": "The Avengers"
-  },
-  "title": "Mark purchased the movie, The Avengers"
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/qualify.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/qualify.json b/streams-schemas/src/test/resources/activities/qualify.json
deleted file mode 100644
index 630bda0..0000000
--- a/streams-schemas/src/test/resources/activities/qualify.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "qualify",
-  "object": {
-    "objectType": "offer",
-    "displayName": "Free Money!"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/read.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/read.json b/streams-schemas/src/test/resources/activities/read.json
deleted file mode 100644
index 3509886..0000000
--- a/streams-schemas/src/test/resources/activities/read.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "read",
-  "object": {
-    "objectType": "book",
-    "displayName": "Cloud Atlas"
-  }
-}
-      

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/receive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/receive.json b/streams-schemas/src/test/resources/activities/receive.json
deleted file mode 100644
index d61245e..0000000
--- a/streams-schemas/src/test/resources/activities/receive.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "receive",
-  "object": {
-    "objectType": "badge",
-    "displayName": "Most Checkins in 24 hours"
-  },
-  "title": "Laura was awarded a badge for \"Most Checkins in 24 hours\""
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/reject.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/reject.json b/streams-schemas/src/test/resources/activities/reject.json
deleted file mode 100644
index 84d1ab1..0000000
--- a/streams-schemas/src/test/resources/activities/reject.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "reject",
-  "object": {
-    "objectType": "issue",
-    "displayName": "Issue #126"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/remove-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/remove-friend.json b/streams-schemas/src/test/resources/activities/remove-friend.json
deleted file mode 100644
index 0a593e9..0000000
--- a/streams-schemas/src/test/resources/activities/remove-friend.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "remove-friend",
-  "object": {
-    "objectType": "person",
-    "displayName": "Laura"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/remove.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/remove.json b/streams-schemas/src/test/resources/activities/remove.json
deleted file mode 100644
index 1f386e9..0000000
--- a/streams-schemas/src/test/resources/activities/remove.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "remove",
-  "object": {
-    "objectType": "image",
-    "displayName": "Cat Photo",
-    "fullImage": {
-      "url": "http://example.org/cats.jpg"
-    }
-  },
-  "target": {
-    "objectType": "collection",
-    "displayName": "Cat Photo Album",
-    "objectTypes": ["image"]
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/replace.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/replace.json b/streams-schemas/src/test/resources/activities/replace.json
deleted file mode 100644
index f19a35c..0000000
--- a/streams-schemas/src/test/resources/activities/replace.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "replace",
-  "object": {
-    "objectType": "file",
-    "displayName": "Updated 1Q2014 Sales Forecast.xls"
-  },
-  "target": {
-    "objectType": "file",
-    "displayName": "1Q2014 Sales Forecast.xls"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/request-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/request-friend.json b/streams-schemas/src/test/resources/activities/request-friend.json
deleted file mode 100644
index 3e571ee..0000000
--- a/streams-schemas/src/test/resources/activities/request-friend.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "request-friend",
-  "object": {
-    "objectType": "person",
-    "displayName": "Laura"
-  }
-}
-

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/request.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/request.json b/streams-schemas/src/test/resources/activities/request.json
deleted file mode 100644
index 3e7c285..0000000
--- a/streams-schemas/src/test/resources/activities/request.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "request",
-  "object": {
-    "objectType": "task",
-    "actor": {
-      "objectType": "person",
-      "displayName": "Mark"
-    },
-    "verb": "join",
-    "object": {
-      "objectType": "event",
-      "displayName": "The Big Meeting"
-    }
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/resolve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/resolve.json b/streams-schemas/src/test/resources/activities/resolve.json
deleted file mode 100644
index 14998cf..0000000
--- a/streams-schemas/src/test/resources/activities/resolve.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "resolve",
-  "object": {
-    "objectType": "issue",
-    "displayName": "Issue #126"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/retract.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/retract.json b/streams-schemas/src/test/resources/activities/retract.json
deleted file mode 100644
index 9229868..0000000
--- a/streams-schemas/src/test/resources/activities/retract.json
+++ /dev/null
@@ -1,26 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "retract",
-  "object": {
-    "actor": {
-      "objectType": "person",
-      "displayName": "Mark"
-    },
-    "verb": "return",
-    "object": {
-      "objectType": "book",
-      "displayName": "Cloud Atlas"
-    },
-    "target": {
-      "objectType": "person",
-      "displayName": "Laura"
-    }
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/return.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/return.json b/streams-schemas/src/test/resources/activities/return.json
deleted file mode 100644
index d6b8861..0000000
--- a/streams-schemas/src/test/resources/activities/return.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "return",
-  "object": {
-    "objectType": "book",
-    "displayName": "Cloud Atlas"
-  },
-  "target": {
-    "objectType": "person",
-    "displayName": "Laura"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/rsvp-maybe.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/rsvp-maybe.json b/streams-schemas/src/test/resources/activities/rsvp-maybe.json
deleted file mode 100644
index b1ec1b5..0000000
--- a/streams-schemas/src/test/resources/activities/rsvp-maybe.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "rsvp-maybe",
-  "object": {
-    "objectType": "event",
-    "displayName": "The Big Meeting"
-  },
-  "title": "Laura might attend The Big Meeting"
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/rsvp-no.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/rsvp-no.json b/streams-schemas/src/test/resources/activities/rsvp-no.json
deleted file mode 100644
index 532b096..0000000
--- a/streams-schemas/src/test/resources/activities/rsvp-no.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "rsvp-no",
-  "object": {
-    "objectType": "event",
-    "displayName": "The Big Meeting"
-  },
-  "title": "Mark will not attend the Big Meeting"
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/rsvp-yes.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/rsvp-yes.json b/streams-schemas/src/test/resources/activities/rsvp-yes.json
deleted file mode 100644
index 170a5c4..0000000
--- a/streams-schemas/src/test/resources/activities/rsvp-yes.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "rsvp-yes",
-  "object": {
-    "objectType": "event",
-    "displayName": "The Big Meeting"
-  },
-  "title": "Laura will attend the Big Meeting"
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/satisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/satisfy.json b/streams-schemas/src/test/resources/activities/satisfy.json
deleted file mode 100644
index 16151fa..0000000
--- a/streams-schemas/src/test/resources/activities/satisfy.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "satisfy",
-  "object": {
-    "objectType": "http://example.org/condition",
-    "displayName": "Some Condition"
-  },
-  "target": {
-    "objectType": "http://example.org/parole",
-    "displayName": "Terms of Parole"
-  },
-  "title": "Mark has satisfied a condition of his parole."
-}
-      

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/save.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/save.json b/streams-schemas/src/test/resources/activities/save.json
deleted file mode 100644
index 70c0f5f..0000000
--- a/streams-schemas/src/test/resources/activities/save.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "save",
-  "object": {
-    "objectType": "note",
-    "displayName": "A note about something important"
-  },
-  "target": {
-    "objectType": "collection",
-    "displayName": "Laura's Reading List"
-  },
-  "title": "Laura saved the note to her reading list"
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/schedule.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/schedule.json b/streams-schemas/src/test/resources/activities/schedule.json
deleted file mode 100644
index f214290..0000000
--- a/streams-schemas/src/test/resources/activities/schedule.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "schedule",
-  "object": {
-    "objectType": "event",
-    "displayName": "The Big Meeting"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/search.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/search.json b/streams-schemas/src/test/resources/activities/search.json
deleted file mode 100644
index 511b612..0000000
--- a/streams-schemas/src/test/resources/activities/search.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "search",
-  "object": {
-    "objectType": "place",
-    "displayName": "Big Hotel",
-    "address": {
-      "locality": "New York",
-      "region": "NY"
-    }
-  },
-  "title": "Laura searched for a hotel in New York City, NY"
-}
-      

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/sell.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/sell.json b/streams-schemas/src/test/resources/activities/sell.json
deleted file mode 100644
index ab07fb0..0000000
--- a/streams-schemas/src/test/resources/activities/sell.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "sell",
-  "object": {
-    "objectType": "product",
-    "displayName": "A cool product"
-  },
-  "target": {
-    "objectType": "person",
-    "displayName": "Laura"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/send.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/send.json b/streams-schemas/src/test/resources/activities/send.json
deleted file mode 100644
index b392ce8..0000000
--- a/streams-schemas/src/test/resources/activities/send.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "send",
-  "object": {
-    "objectType": "note",
-    "content": "Thank you for the cool product."
-  },
-  "target": {
-    "objectType": "person",
-    "displayName": "Mark"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/share.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/share.json b/streams-schemas/src/test/resources/activities/share.json
deleted file mode 100644
index dc7b9f1..0000000
--- a/streams-schemas/src/test/resources/activities/share.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "share",
-  "object": {
-    "objectType": "note",
-    "displayName": "An important note"
-  },
-  "title": "Mark shared an important note."
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/sponsor.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/sponsor.json b/streams-schemas/src/test/resources/activities/sponsor.json
deleted file mode 100644
index 156c322..0000000
--- a/streams-schemas/src/test/resources/activities/sponsor.json
+++ /dev/null
@@ -1,17 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "organization",
-    "displayName": "Acme, Co"
-  },
-  "verb": "sponsor",
-  "object": {
-    "objectType": "game",
-    "displayName": "World Series"
-  },
-  "title": "Acme, Co sponsored the World Series"
-}
-      

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/start.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/start.json b/streams-schemas/src/test/resources/activities/start.json
deleted file mode 100644
index b9aede2..0000000
--- a/streams-schemas/src/test/resources/activities/start.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "start",
-  "object": {
-    "objectType": "process",
-    "displayName": "A Long Running Process"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/stop-following.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/stop-following.json b/streams-schemas/src/test/resources/activities/stop-following.json
deleted file mode 100644
index 04b83e7..0000000
--- a/streams-schemas/src/test/resources/activities/stop-following.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "stop-following",
-  "object": {
-    "objectType": "person",
-    "displayName": "Mark"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/submit.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/submit.json b/streams-schemas/src/test/resources/activities/submit.json
deleted file mode 100644
index 0fd3c34..0000000
--- a/streams-schemas/src/test/resources/activities/submit.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "submit",
-  "object": {
-    "objectType": "issue",
-    "displayName": "Issue #127"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/tag.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/tag.json b/streams-schemas/src/test/resources/activities/tag.json
deleted file mode 100644
index dba6112..0000000
--- a/streams-schemas/src/test/resources/activities/tag.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "tag",
-  "object": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "target": {
-    "objectType": "image",
-    "displayName": "Pictures of my cats"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/terminate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/terminate.json b/streams-schemas/src/test/resources/activities/terminate.json
deleted file mode 100644
index f4d886e..0000000
--- a/streams-schemas/src/test/resources/activities/terminate.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "terminate",
-  "object": {
-    "objectType": "process",
-    "displayName": "A long running process"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/tie.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/tie.json b/streams-schemas/src/test/resources/activities/tie.json
deleted file mode 100644
index 71a3c39..0000000
--- a/streams-schemas/src/test/resources/activities/tie.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "collection",
-    "items": [
-      {
-        "objectType": "organization",
-        "displayName": "New York Giants"
-      },
-      {
-        "objectType": "organization",
-        "displayName": "Oakland Raiders"
-      }
-    ]
-  },
-  "verb": "tie",
-  "object": {
-    "objectType": "game",
-    "displayName": "Super Bowl"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/unfavorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/unfavorite.json b/streams-schemas/src/test/resources/activities/unfavorite.json
deleted file mode 100644
index b1e7bcd..0000000
--- a/streams-schemas/src/test/resources/activities/unfavorite.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "unfavorite",
-  "object": {
-    "objectType": "article",
-    "displayName": "Some article"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/unlike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/unlike.json b/streams-schemas/src/test/resources/activities/unlike.json
deleted file mode 100644
index 9bc583f..0000000
--- a/streams-schemas/src/test/resources/activities/unlike.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "unlike",
-  "object": {
-    "objectType": "article",
-    "displayName": "Some article"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/unsatisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/unsatisfy.json b/streams-schemas/src/test/resources/activities/unsatisfy.json
deleted file mode 100644
index 739823c..0000000
--- a/streams-schemas/src/test/resources/activities/unsatisfy.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "unsatisfy",
-  "object": {
-    "objectType": "http://example.org/condition",
-    "displayName": "Some Condition"
-  },
-  "target": {
-    "objectType": "http://example.org/parole",
-    "displayName": "Terms of Parole"
-  },
-  "title": "Mark has not satisfied a condition of his parole."
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/unsave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/unsave.json b/streams-schemas/src/test/resources/activities/unsave.json
deleted file mode 100644
index a9a21f0..0000000
--- a/streams-schemas/src/test/resources/activities/unsave.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "unsave",
-  "object": {
-    "objectType": "article",
-    "displayName": "Some article"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/unshare.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/unshare.json b/streams-schemas/src/test/resources/activities/unshare.json
deleted file mode 100644
index 4d45a6d..0000000
--- a/streams-schemas/src/test/resources/activities/unshare.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "unshare",
-  "object": {
-    "objectType": "article",
-    "displayName": "Some article"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/update.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/update.json b/streams-schemas/src/test/resources/activities/update.json
deleted file mode 100644
index 7dbed20..0000000
--- a/streams-schemas/src/test/resources/activities/update.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "update",
-  "object": {
-    "objectType": "article",
-    "displayName": "Some article"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/use.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/use.json b/streams-schemas/src/test/resources/activities/use.json
deleted file mode 100644
index 699c4b8..0000000
--- a/streams-schemas/src/test/resources/activities/use.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Laura"
-  },
-  "verb": "use",
-  "object": {
-    "objectType": "product",
-    "displayName": "A cool product"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/watch.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/watch.json b/streams-schemas/src/test/resources/activities/watch.json
deleted file mode 100644
index 2052f06..0000000
--- a/streams-schemas/src/test/resources/activities/watch.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "person",
-    "displayName": "Mark"
-  },
-  "verb": "watch",
-  "object": {
-    "objectType": "video",
-    "displayName": "Some random movie"
-  }
-}
-      

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/activities/win.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/win.json b/streams-schemas/src/test/resources/activities/win.json
deleted file mode 100644
index 2cf9d5a..0000000
--- a/streams-schemas/src/test/resources/activities/win.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  "$license": [
-    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "actor": {
-    "objectType": "organization",
-    "displayName": "Arizona Diamond Backs"
-  },
-  "verb": "win",
-  "object": {
-    "objectType": "game",
-    "displayName": "World Series"
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/media_link.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/media_link.json b/streams-schemas/src/test/resources/media_link.json
deleted file mode 100644
index 0bed6f0..0000000
--- a/streams-schemas/src/test/resources/media_link.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
-    "$schema": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/media_link.json#",
-    "duration": 30000,
-    "height": 480,
-    "width": 640,
-    "url": "http://youtube.com/s7hc30sb"
-}



[45/53] [abbrv] incubator-streams git commit: Fixed license headers on new merge

Posted by mf...@apache.org.
Fixed license headers on new merge


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/94f7ea06
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/94f7ea06
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/94f7ea06

Branch: refs/heads/invalid_headers
Commit: 94f7ea06253c5e3fc9bdd0bceafbf0d65ec42618
Parents: b569cd4
Author: Matt Franklin <mf...@apache.org>
Authored: Wed Oct 12 14:12:28 2016 -0400
Committer: Matt Franklin <mf...@apache.org>
Committed: Wed Oct 12 14:12:28 2016 -0400

----------------------------------------------------------------------
 .../org/apache/streams/util/ComponentUtils.java |  1 -
 .../apache/streams/util/schema/FieldType.java   | 17 +++++++++
 .../apache/streams/util/schema/FieldUtil.java   | 17 +++++++++
 .../apache/streams/util/schema/FileUtil.java    | 17 +++++++++
 .../streams/util/schema/GenerationConfig.java   | 17 +++++++++
 .../org/apache/streams/util/schema/Schema.java  | 17 +++++++++
 .../apache/streams/util/schema/SchemaStore.java | 17 +++++++++
 .../streams/util/schema/SchemaStoreImpl.java    | 17 +++++++++
 .../apache/streams/util/schema/SchemaUtil.java  | 17 +++++++++
 .../org/apache/streams/util/schema/URIUtil.java | 17 +++++++++
 .../util/schema/test/SchemaOrderingTest.java    | 17 +++++++++
 .../util/schema/test/SchemaStoreTest.java       | 17 +++++++++
 .../src/test/resources/activities/post.json     | 10 +++--
 streams-util/src/test/resources/media_link.json | 14 ++++---
 .../src/test/resources/objects/event.json       | 40 ++++++++++++--------
 .../src/test/resources/objects/group.json       | 24 +++++++-----
 .../src/test/resources/objects/issue.json       | 18 +++++----
 .../src/test/resources/objects/note.json        | 16 +++++---
 .../src/test/resources/objects/permission.json  | 22 +++++++----
 .../src/test/resources/objects/place.json       | 10 +++--
 .../src/test/resources/objects/task.json        | 32 +++++++++-------
 .../src/test/resources/objects/video.json       | 16 +++++---
 22 files changed, 312 insertions(+), 78 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/main/java/org/apache/streams/util/ComponentUtils.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/ComponentUtils.java b/streams-util/src/main/java/org/apache/streams/util/ComponentUtils.java
index d62182f..6037f28 100644
--- a/streams-util/src/main/java/org/apache/streams/util/ComponentUtils.java
+++ b/streams-util/src/main/java/org/apache/streams/util/ComponentUtils.java
@@ -15,7 +15,6 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-
 package org.apache.streams.util;
 
 import org.apache.commons.lang3.StringUtils;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/main/java/org/apache/streams/util/schema/FieldType.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/FieldType.java b/streams-util/src/main/java/org/apache/streams/util/schema/FieldType.java
index 6a2290c..450851e 100644
--- a/streams-util/src/main/java/org/apache/streams/util/schema/FieldType.java
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/FieldType.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.util.schema;
 
 /**

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/main/java/org/apache/streams/util/schema/FieldUtil.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/FieldUtil.java b/streams-util/src/main/java/org/apache/streams/util/schema/FieldUtil.java
index 20435c9..6582565 100644
--- a/streams-util/src/main/java/org/apache/streams/util/schema/FieldUtil.java
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/FieldUtil.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.util.schema;
 
 import com.fasterxml.jackson.databind.JsonNode;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/main/java/org/apache/streams/util/schema/FileUtil.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/FileUtil.java b/streams-util/src/main/java/org/apache/streams/util/schema/FileUtil.java
index c025513..c51339a 100644
--- a/streams-util/src/main/java/org/apache/streams/util/schema/FileUtil.java
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/FileUtil.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.util.schema;
 
 import com.google.common.base.Preconditions;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/main/java/org/apache/streams/util/schema/GenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/GenerationConfig.java b/streams-util/src/main/java/org/apache/streams/util/schema/GenerationConfig.java
index d4b2c3f..c48d186 100644
--- a/streams-util/src/main/java/org/apache/streams/util/schema/GenerationConfig.java
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/GenerationConfig.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.util.schema;
 
 import java.io.File;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/main/java/org/apache/streams/util/schema/Schema.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/Schema.java b/streams-util/src/main/java/org/apache/streams/util/schema/Schema.java
index fc0a3f2..795bf98 100644
--- a/streams-util/src/main/java/org/apache/streams/util/schema/Schema.java
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/Schema.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.util.schema;
 
 import com.fasterxml.jackson.databind.JsonNode;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStore.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStore.java b/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStore.java
index 07e9bef..779df41 100644
--- a/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStore.java
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStore.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.util.schema;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStoreImpl.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStoreImpl.java b/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStoreImpl.java
index 9585742..7126c82 100644
--- a/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStoreImpl.java
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStoreImpl.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.util.schema;
 
 import com.fasterxml.jackson.databind.JsonNode;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/main/java/org/apache/streams/util/schema/SchemaUtil.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/SchemaUtil.java b/streams-util/src/main/java/org/apache/streams/util/schema/SchemaUtil.java
index f8b0070..785ec58 100644
--- a/streams-util/src/main/java/org/apache/streams/util/schema/SchemaUtil.java
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/SchemaUtil.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.util.schema;
 
 import com.fasterxml.jackson.databind.JsonNode;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/main/java/org/apache/streams/util/schema/URIUtil.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/URIUtil.java b/streams-util/src/main/java/org/apache/streams/util/schema/URIUtil.java
index af468e3..d645675 100644
--- a/streams-util/src/main/java/org/apache/streams/util/schema/URIUtil.java
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/URIUtil.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.util.schema;
 
 import com.google.common.base.Optional;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaOrderingTest.java
----------------------------------------------------------------------
diff --git a/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaOrderingTest.java b/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaOrderingTest.java
index 6deaa98..7f20024 100644
--- a/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaOrderingTest.java
+++ b/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaOrderingTest.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.util.schema.test;
 
 import com.google.common.base.Optional;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaStoreTest.java
----------------------------------------------------------------------
diff --git a/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaStoreTest.java b/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaStoreTest.java
index 6b5e598..1d28350 100644
--- a/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaStoreTest.java
+++ b/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaStoreTest.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.util.schema.test;
 
 import org.apache.streams.util.schema.Schema;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/test/resources/activities/post.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/post.json b/streams-util/src/test/resources/activities/post.json
index 73cfff7..fbf2fa8 100644
--- a/streams-util/src/test/resources/activities/post.json
+++ b/streams-util/src/test/resources/activities/post.json
@@ -1,8 +1,12 @@
 {
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
   "published": "2011-02-10T15:04:55Z",
   "actor": {
     "url": "http://example.org/martin",
-    "objectType" : "person",
+    "objectType": "person",
     "id": "tag:example.org,2011:martin",
     "image": {
       "url": "http://example.org/martin/image",
@@ -12,11 +16,11 @@
     "displayName": "Martin Smith"
   },
   "verb": "post",
-  "object" : {
+  "object": {
     "url": "http://example.org/blog/2011/02/entry",
     "id": "tag:example.org,2011:abc123/xyz"
   },
-  "target" : {
+  "target": {
     "url": "http://example.org/blog/",
     "objectType": "blog",
     "id": "tag:example.org,2011:abc123",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/test/resources/media_link.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/media_link.json b/streams-util/src/test/resources/media_link.json
index 739c66b..614be0d 100644
--- a/streams-util/src/test/resources/media_link.json
+++ b/streams-util/src/test/resources/media_link.json
@@ -1,7 +1,11 @@
 {
-    "$schema": "http://streams.incubator.apache.org/site/latest/streams-project/streams-schemas/media_link.json#",
-    "duration": 30000,
-    "height": 480,
-    "width": 640,
-    "url": "http://youtube.com/s7hc30sb"
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "$schema": "http://streams.incubator.apache.org/site/latest/streams-project/streams-schemas/media_link.json#",
+  "duration": 30000,
+  "height": 480,
+  "width": 640,
+  "url": "http://youtube.com/s7hc30sb"
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/test/resources/objects/event.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/event.json b/streams-util/src/test/resources/objects/event.json
index ae1108e..3a90ca2 100644
--- a/streams-util/src/test/resources/objects/event.json
+++ b/streams-util/src/test/resources/objects/event.json
@@ -1,18 +1,26 @@
 {
-    "objectType": "event",
-    "displayName": "Meeting with Joe",
-    "startTime": "2012-12-12T12:00:00Z",
-    "endTime: "2012-12-12T13:00:00Z",
-    "invited": {
-      "items": [
-        {"objectType": "person",
-         "displayName": "Joe"}
-      ]
-    },
-    "attending": {
-      "items": [
-        {"objectType": "person",
-         "displayName": "Joe"}
-      ]
-    }
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "objectType": "event",
+  "displayName": "Meeting with Joe",
+  "startTime": "2012-12-12T12:00:00Z",
+  "endTime": "2012-12-12T13:00:00Z",
+  "invited": {
+    "items": [
+      {
+        "objectType": "person",
+        "displayName": "Joe"
+      }
+    ]
+  },
+  "attending": {
+    "items": [
+      {
+        "objectType": "person",
+        "displayName": "Joe"
+      }
+    ]
+  }
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/test/resources/objects/group.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/group.json b/streams-util/src/test/resources/objects/group.json
index 9721874..e25867b 100644
--- a/streams-util/src/test/resources/objects/group.json
+++ b/streams-util/src/test/resources/objects/group.json
@@ -1,16 +1,20 @@
 {
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
   "objectType": "group",
   "displayName": "My Work Group",
   "members": {
-	"items": [
-	  {
-		"objectType": "person",
-		"displayName": "Laura"
-	  },
-	  {
-		"objectType": "person",
-		"displayName": "Mark"
-	  }
-	]
+    "items": [
+      {
+        "objectType": "person",
+        "displayName": "Laura"
+      },
+      {
+        "objectType": "person",
+        "displayName": "Mark"
+      }
+    ]
   }
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/test/resources/objects/issue.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/issue.json b/streams-util/src/test/resources/objects/issue.json
index 86bc6d2..4dd0226 100644
--- a/streams-util/src/test/resources/objects/issue.json
+++ b/streams-util/src/test/resources/objects/issue.json
@@ -1,9 +1,13 @@
 {
-   "objectType": "issue",
-   "displayName": "Terms of Use Violation",
-   "url": "http://.../terms-of-use",
-   "types": [
-	 "http://example.org/codes/inappropriateMaterial",
-	 "http://example.org/codes/copyrightViolation"
-   ]
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "objectType": "issue",
+  "displayName": "Terms of Use Violation",
+  "url": "http://.../terms-of-use",
+  "types": [
+    "http://example.org/codes/inappropriateMaterial",
+    "http://example.org/codes/copyrightViolation"
+  ]
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/test/resources/objects/note.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/note.json b/streams-util/src/test/resources/objects/note.json
index 15a4495..1cca229 100644
--- a/streams-util/src/test/resources/objects/note.json
+++ b/streams-util/src/test/resources/objects/note.json
@@ -1,12 +1,16 @@
 {
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
   "objectType": "note",
   "displayName": "A note with a binary attachment",
   "attachments": [
-	{
-	  "objectType": "binary",
-	  "data": "dGhpcyBpcyB1bmNvbXByZXNzZWQgZGF0YQo=",
-	  "md5": "827ae7e1ab45e4dd591d087c741e5770",
-	  "length": 25
-	}
+    {
+      "objectType": "binary",
+      "data": "dGhpcyBpcyB1bmNvbXByZXNzZWQgZGF0YQo=",
+      "md5": "827ae7e1ab45e4dd591d087c741e5770",
+      "length": 25
+    }
   ]
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/test/resources/objects/permission.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/permission.json b/streams-util/src/test/resources/objects/permission.json
index 24b6fa2..cb1aab2 100644
--- a/streams-util/src/test/resources/objects/permission.json
+++ b/streams-util/src/test/resources/objects/permission.json
@@ -1,9 +1,17 @@
 {
-    "objectType": "permission",
-    "displayName": "Permission to Edit File: 2Q2014 Sales Forecast.xls",
-    "scope": {
-      "objectType": "file",
-      "displayName": "2Q2014 Sales Forecast.xls"
-    },
-    "actions": ["modify", "delete", "create"]
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "objectType": "permission",
+  "displayName": "Permission to Edit File: 2Q2014 Sales Forecast.xls",
+  "scope": {
+    "objectType": "file",
+    "displayName": "2Q2014 Sales Forecast.xls"
+  },
+  "actions": [
+    "modify",
+    "delete",
+    "create"
+  ]
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/test/resources/objects/place.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/place.json b/streams-util/src/test/resources/objects/place.json
index 8e454be..ea1ca56 100644
--- a/streams-util/src/test/resources/objects/place.json
+++ b/streams-util/src/test/resources/objects/place.json
@@ -1,9 +1,13 @@
 {
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
   "objectType": "place",
   "displayName": "Some Random Location on Earth",
   "position": {
-	"latitude": 34.34,
-	"longitude": -127.23,
-	"altitude": 100.05
+    "latitude": 34.34,
+    "longitude": -127.23,
+    "altitude": 100.05
   }
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/test/resources/objects/task.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/task.json b/streams-util/src/test/resources/objects/task.json
index f4878dc..09adf70 100644
--- a/streams-util/src/test/resources/objects/task.json
+++ b/streams-util/src/test/resources/objects/task.json
@@ -1,16 +1,20 @@
 {
-    "objectType": "task",
-    "displayName": "James needs to read the spec",
-    "by": "2012-12-12T12:12:12Z",
-    "verb": "read",
-    "actor": {
-      "objectType": "person",
-      "displayName": "James"
-    },
-    "object": {
-      "objectType": "file",
-      "displayName": "A specification",
-      "url": "http://example.org/spec.html"
-    },
-    "required": true
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "objectType": "task",
+  "displayName": "James needs to read the spec",
+  "by": "2012-12-12T12:12:12Z",
+  "verb": "read",
+  "actor": {
+    "objectType": "person",
+    "displayName": "James"
+  },
+  "object": {
+    "objectType": "file",
+    "displayName": "A specification",
+    "url": "http://example.org/spec.html"
+  },
+  "required": true
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/94f7ea06/streams-util/src/test/resources/objects/video.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/video.json b/streams-util/src/test/resources/objects/video.json
index bc19e89..936c316 100644
--- a/streams-util/src/test/resources/objects/video.json
+++ b/streams-util/src/test/resources/objects/video.json
@@ -1,8 +1,12 @@
 {
-    "objectType": "video",
-    "displayName": "Cute little kittens",
-    "embedCode": "<video width="320" height="240" controls="controls">...</video>",
-    "stream": {
-      "url": "http://example.org/my_video.mpg"
-    }
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "objectType": "video",
+  "displayName": "Cute little kittens",
+  "embedCode": "<video width=\"320\" height=\"240\" controls=\"controls\">...</video>",
+  "stream": {
+    "url": "http://example.org/my_video.mpg"
+  }
 }


[14/53] [abbrv] incubator-streams git commit: WIP for apachecon

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/read.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/read.json b/streams-schemas/src/site/resources/verbs/read.json
deleted file mode 100644
index e797f41..0000000
--- a/streams-schemas/src/site/resources/verbs/read.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Read",
-    "description": "Indicates that the actor read the object. This is typically only applicable for objects representing printed or written content, such as a book, a message or a comment.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "read"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} read {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/receive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/receive.json b/streams-schemas/src/site/resources/verbs/receive.json
deleted file mode 100644
index 0d44aef..0000000
--- a/streams-schemas/src/site/resources/verbs/receive.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Receive",
-    "description": "Indicates that the actor is receiving an object. Examples include a person receiving a badge object. The object identifies the object being received.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "receive"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} received {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/reject.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/reject.json b/streams-schemas/src/site/resources/verbs/reject.json
deleted file mode 100644
index b82fac7..0000000
--- a/streams-schemas/src/site/resources/verbs/reject.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Reject",
-    "description": "Indicates that the actor has rejected the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "reject"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} rejected {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/remove-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/remove-friend.json b/streams-schemas/src/site/resources/verbs/remove-friend.json
deleted file mode 100644
index 073441d..0000000
--- a/streams-schemas/src/site/resources/verbs/remove-friend.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "UnFriend",
-    "description": "Indicates that the actor has removed the object from the collection of friends.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "remove-friend"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} removed friend {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/remove.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/remove.json b/streams-schemas/src/site/resources/verbs/remove.json
deleted file mode 100644
index 5b694db..0000000
--- a/streams-schemas/src/site/resources/verbs/remove.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Remove",
-    "description": "Indicates that the actor has removed the object from the target.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "remove"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} removed {object.displayName} from {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/replace.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/replace.json b/streams-schemas/src/site/resources/verbs/replace.json
deleted file mode 100644
index 198c8c5..0000000
--- a/streams-schemas/src/site/resources/verbs/replace.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Replace",
-    "description": "Indicates that the actor has replaced the target with the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "replace"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} replaced {target.displayName} with {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/request-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/request-friend.json b/streams-schemas/src/site/resources/verbs/request-friend.json
deleted file mode 100644
index 9e246ca..0000000
--- a/streams-schemas/src/site/resources/verbs/request-friend.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "RequestFriend",
-    "description": "Indicates the creation of a friendship that has not yet been reciprocated by the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "request-friend"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} sent a friend request to {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/request.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/request.json b/streams-schemas/src/site/resources/verbs/request.json
deleted file mode 100644
index 35807f5..0000000
--- a/streams-schemas/src/site/resources/verbs/request.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Request",
-    "description": "Indicates that the actor has requested the object. If a target is specified, it indicates the entity from which the object is being requested.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "request"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} requested {object.displayName} from {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/resolve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/resolve.json b/streams-schemas/src/site/resources/verbs/resolve.json
deleted file mode 100644
index 0b71ce3..0000000
--- a/streams-schemas/src/site/resources/verbs/resolve.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Resolve",
-    "description": "Indicates that the actor has resolved the object. For instance, the object could represent a ticket being tracked in an issue management system.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "resolve"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} resolved {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/retract.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/retract.json b/streams-schemas/src/site/resources/verbs/retract.json
deleted file mode 100644
index ff7cbe7..0000000
--- a/streams-schemas/src/site/resources/verbs/retract.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Retract",
-    "description": "Indicates that the actor has retracted the object. For instance, if an actor wishes to retract a previously published activity, the object would be the previously published activity that is being retracted.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "retract"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} retracted {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/return.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/return.json b/streams-schemas/src/site/resources/verbs/return.json
deleted file mode 100644
index 14a8cfb..0000000
--- a/streams-schemas/src/site/resources/verbs/return.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Return",
-    "description": "Indicates that the actor has returned the object. If a target is specified, it indicates the entity to which the object was returned.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "return"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} returned {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/rsvp-maybe.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/rsvp-maybe.json b/streams-schemas/src/site/resources/verbs/rsvp-maybe.json
deleted file mode 100644
index 4838406..0000000
--- a/streams-schemas/src/site/resources/verbs/rsvp-maybe.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Rsvp Maybe",
-    "description": "To indicate that the actor may attend an event",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "rsvp-maybe"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} might attend {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/rsvp-no.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/rsvp-no.json b/streams-schemas/src/site/resources/verbs/rsvp-no.json
deleted file mode 100644
index dc36ee3..0000000
--- a/streams-schemas/src/site/resources/verbs/rsvp-no.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Rsvp No",
-    "description": "To indicate that the actor will not attend an event",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "rsvp-no"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} will not attend {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/rsvp-yes.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/rsvp-yes.json b/streams-schemas/src/site/resources/verbs/rsvp-yes.json
deleted file mode 100644
index f62141e..0000000
--- a/streams-schemas/src/site/resources/verbs/rsvp-yes.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Rsvp Yes",
-    "description": "To indicate that the actor will attend an event",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "rsvp-yes"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} is attending {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/satisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/satisfy.json b/streams-schemas/src/site/resources/verbs/satisfy.json
deleted file mode 100644
index a719680..0000000
--- a/streams-schemas/src/site/resources/verbs/satisfy.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Satisfy",
-    "description": "Indicates that the actor has satisfied the object. If a target is specified, it indicate the context within which the object was satisfied. For instance, if a person satisfies the requirements for a particular challenge, the person is the actor; the requirement is the object; and the challenge is the target.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "satisfy"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} has satisfied {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/save.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/save.json b/streams-schemas/src/site/resources/verbs/save.json
deleted file mode 100644
index 1bdbc4b..0000000
--- a/streams-schemas/src/site/resources/verbs/save.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Save",
-    "description": "Indicates that the actor has called out the object as being of interest primarily to him- or herself. Though this action MAY be shared publicly, the implication is that the object has been saved primarily for the actor's own benefit rather than to show it to others as would be indicated by the \"share\" verb.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "save"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} saved {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/schedule.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/schedule.json b/streams-schemas/src/site/resources/verbs/schedule.json
deleted file mode 100644
index a9824a3..0000000
--- a/streams-schemas/src/site/resources/verbs/schedule.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Schedule",
-    "description": "Indicates that the actor has scheduled the object. For instance, scheduling a meeting.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "schedule"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} scheduled {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/search.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/search.json b/streams-schemas/src/site/resources/verbs/search.json
deleted file mode 100644
index 3263bbb..0000000
--- a/streams-schemas/src/site/resources/verbs/search.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Search",
-    "description": "Indicates that the actor is or has searched for the object. If a target is specified, it indicates the context within which the search is or has been conducted.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "satisfy"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} search for {object.displayName} in {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/sell.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/sell.json b/streams-schemas/src/site/resources/verbs/sell.json
deleted file mode 100644
index 16aa351..0000000
--- a/streams-schemas/src/site/resources/verbs/sell.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Sell",
-    "description": "Indicates that the actor has sold the object. If a target is specified, it indicates the entity to which the object was sold.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "sell"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} sold {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/send.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/send.json b/streams-schemas/src/site/resources/verbs/send.json
deleted file mode 100644
index ead4108..0000000
--- a/streams-schemas/src/site/resources/verbs/send.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Share",
-    "description": "Indicates that the actor has called out the object to readers. In most cases, the actor did not create the object being shared, but is instead drawing attention to it.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "share"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} shared {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/share.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/share.json b/streams-schemas/src/site/resources/verbs/share.json
deleted file mode 100644
index 18c0aea..0000000
--- a/streams-schemas/src/site/resources/verbs/share.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Share",
-    "description": "To share an object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "share"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} shared {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/sponsor.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/sponsor.json b/streams-schemas/src/site/resources/verbs/sponsor.json
deleted file mode 100644
index cc6f5cf..0000000
--- a/streams-schemas/src/site/resources/verbs/sponsor.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Sponsor",
-    "description": "Indicates that the actor has sponsored the object. If a target is specified, it indicates the context within which the sponsorship is offered. For instance, a company can sponsor an event; or an individual can sponsor a project; etc.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "sponsor"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} sponsored {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/start.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/start.json b/streams-schemas/src/site/resources/verbs/start.json
deleted file mode 100644
index 61eaf06..0000000
--- a/streams-schemas/src/site/resources/verbs/start.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Start",
-    "description": "Indicates that the actor has started the object. For instance, when a person starts a project.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "start"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} started {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/stop-following.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/stop-following.json b/streams-schemas/src/site/resources/verbs/stop-following.json
deleted file mode 100644
index e09317d..0000000
--- a/streams-schemas/src/site/resources/verbs/stop-following.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "UnFollow",
-    "description": "Indicates that the actor has stopped following the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "follow"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} stopped following {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/submit.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/submit.json b/streams-schemas/src/site/resources/verbs/submit.json
deleted file mode 100644
index c1d25b1..0000000
--- a/streams-schemas/src/site/resources/verbs/submit.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Submit",
-    "description": "Indicates that the actor has submitted the object. If a target is specified, it indicates the entity to which the object was submitted.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "submit"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} submitted {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/tag.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/tag.json b/streams-schemas/src/site/resources/verbs/tag.json
deleted file mode 100644
index 6208eae..0000000
--- a/streams-schemas/src/site/resources/verbs/tag.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Tag",
-    "description": "Indicates that the actor has associated the object with the target. For example, if the actor specifies that a particular user appears in a photo. the object is the user and the target is the photo.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "tag"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} tagged {object.displayName} as {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/terminate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/terminate.json b/streams-schemas/src/site/resources/verbs/terminate.json
deleted file mode 100644
index 280eb31..0000000
--- a/streams-schemas/src/site/resources/verbs/terminate.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Terminate",
-    "description": "Indicates that the actor has terminated the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "terminate"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} terminated {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/tie.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/tie.json b/streams-schemas/src/site/resources/verbs/tie.json
deleted file mode 100644
index 7530ed2..0000000
--- a/streams-schemas/src/site/resources/verbs/tie.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Tie",
-    "description": "Indicates that the actor has neither won or lost the object. This verb is generally only applicable when the object represents some form of competition, such as a game.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "tie"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} tied at {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/unfavorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/unfavorite.json b/streams-schemas/src/site/resources/verbs/unfavorite.json
deleted file mode 100644
index bfa9c20..0000000
--- a/streams-schemas/src/site/resources/verbs/unfavorite.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "UnFavorite",
-    "description": "Indicates that the actor has removed the object from the collection of favorited items.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "unfavorite"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} removed {object.displayName} as a favorite"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/unlike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/unlike.json b/streams-schemas/src/site/resources/verbs/unlike.json
deleted file mode 100644
index 4dc75f6..0000000
--- a/streams-schemas/src/site/resources/verbs/unlike.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "UnLike",
-    "description": "Indicates that the actor has removed the object from the collection of liked items.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "unlike"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} no longer likes {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/unsatisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/unsatisfy.json b/streams-schemas/src/site/resources/verbs/unsatisfy.json
deleted file mode 100644
index 8ea075b..0000000
--- a/streams-schemas/src/site/resources/verbs/unsatisfy.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "UnSatisfy",
-    "description": "Indicates that the actor has not satisfied the object. If a target is specified, it indicates the context within which the object was not satisfied. For instance, if a person fails to satisfy the requirements of some particular challenge, the person is the actor; the requirement is the object and the challenge is the target.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "unsatisfy"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} has not satisfied {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/unsave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/unsave.json b/streams-schemas/src/site/resources/verbs/unsave.json
deleted file mode 100644
index e45a97f..0000000
--- a/streams-schemas/src/site/resources/verbs/unsave.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "UnSave",
-    "description": "Indicates that the actor has removed the object from the collection of saved items.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "unsave"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} unsaved {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/unshare.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/unshare.json b/streams-schemas/src/site/resources/verbs/unshare.json
deleted file mode 100644
index 4ca924b..0000000
--- a/streams-schemas/src/site/resources/verbs/unshare.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "UnSave",
-    "description": "Indicates that the actor is no longer sharing the object. If a target is specified, it indicates the entity with whom the object is no longer being shared.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "unshare"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} is no longer sharing {object.displayName} with {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/update.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/update.json b/streams-schemas/src/site/resources/verbs/update.json
deleted file mode 100644
index 4b143fc..0000000
--- a/streams-schemas/src/site/resources/verbs/update.json
+++ /dev/null
@@ -1,34 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Update",
-    "description": "The \"update\" verb indicates that the actor has modified the object. Use of the \"update\" verb is generally reserved to indicate modifications to existing objects or data such as changing an existing user's profile information.",
-    "notes": "The new property value can be a scalar value or an object. See the property object type",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "update"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} updated {target.displayName}'s {object.displayName} to {object.value}"
-        },
-        "object": {
-            "type": "object",
-            "$ref": "../object.json"
-        },
-        "target": {
-            "type": "object",
-            "optional": true,
-            "$ref": "../object.json"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/use.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/use.json b/streams-schemas/src/site/resources/verbs/use.json
deleted file mode 100644
index d5a79fd..0000000
--- a/streams-schemas/src/site/resources/verbs/use.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Use",
-    "description": "Indicates that the actor has used the object in some manner.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "use"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} used {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/watch.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/watch.json b/streams-schemas/src/site/resources/verbs/watch.json
deleted file mode 100644
index 192d56e..0000000
--- a/streams-schemas/src/site/resources/verbs/watch.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Watch",
-    "description": "Indicates that the actor has watched the object. This verb is typically applicable only when the object represents dynamic, visible content such as a movie, a television show or a public performance.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "watch"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} watched {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/win.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/win.json b/streams-schemas/src/site/resources/verbs/win.json
deleted file mode 100644
index a5bef2a..0000000
--- a/streams-schemas/src/site/resources/verbs/win.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Win",
-    "description": "Indicates that the actor has won the object.  For instance, if a person wins a game.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "win"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} won {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaOrderingTests.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaOrderingTests.java b/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaOrderingTests.java
new file mode 100644
index 0000000..9979250
--- /dev/null
+++ b/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaOrderingTests.java
@@ -0,0 +1,146 @@
+package org.apache.streams.schema.test;
+
+import com.google.common.base.Optional;
+import com.google.common.base.Predicate;
+import com.google.common.collect.Iterators;
+import com.google.common.collect.Lists;
+import org.apache.streams.schema.Schema;
+import org.apache.streams.schema.SchemaStore;
+import org.junit.Test;
+
+import java.io.File;
+import java.util.Iterator;
+import java.util.List;
+
+/**
+ * Created by sblackmon on 5/3/16.
+ */
+public class SchemaOrderingTests {
+
+    @Test
+    public void compareVerbParent() {
+        SchemaStore schemaStore = new SchemaStore();
+        File update = new File("target/classes/verbs/update.json");
+        schemaStore.create(update.toURI());
+        File activity = new File("target/classes/activity.json");
+        schemaStore.create(activity.toURI());
+        assert( schemaStore.compare( schemaStore.getByUri(update.toURI()).get(), schemaStore.getByUri(activity.toURI()).get()) == 1);
+        Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator();
+        assertContainsItemsEndingWithInOrder(
+                schemaIterator,
+                Lists.newArrayList(
+                        "activity.json",
+                        "update.json"
+                )
+        );
+    }
+
+    @Test
+    public void compareObjectTypeParent() {
+        SchemaStore schemaStore = new SchemaStore();
+        File alert = new File("target/classes/objectTypes/alert.json");
+        schemaStore.create(alert.toURI());
+        File object = new File("target/classes/object.json");
+        schemaStore.create(object.toURI());
+        assert( schemaStore.compare( schemaStore.getByUri(object.toURI()).get(), schemaStore.getByUri(alert.toURI()).get()) == -1);
+        Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator();
+        assertContainsItemsEndingWithInOrder(
+                schemaIterator,
+                Lists.newArrayList(
+                        "object.json",
+                        "alert.json"
+                )
+        );
+    }
+
+    @Test
+    public void compareUnrelated() {
+        SchemaStore schemaStore = new SchemaStore();
+        File alert = new File("target/classes/objectTypes/alert.json");
+        schemaStore.create(alert.toURI());
+        File update = new File("target/classes/verbs/update.json");
+        schemaStore.create(update.toURI());
+        assert( schemaStore.compare( schemaStore.getByUri(alert.toURI()).get(), schemaStore.getByUri(update.toURI()).get()) == 0);
+    }
+
+    @Test
+    public void compareVerbFieldRef() {
+        SchemaStore schemaStore = new SchemaStore();
+        File update = new File("target/classes/verbs/update.json");
+        schemaStore.create(update.toURI());
+        File object = new File("target/classes/object.json");
+        schemaStore.create(object.toURI());
+        assert( schemaStore.compare( schemaStore.getByUri(update.toURI()).get(), schemaStore.getByUri(object.toURI()).get()) == 1);
+        Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator();
+        assertContainsItemsEndingWithInOrder(
+                schemaIterator,
+                Lists.newArrayList(
+                        "object.json",
+                        "update.json"
+                )
+        );
+    }
+
+    @Test
+    public void compareObjectTypeFieldRef() {
+        SchemaStore schemaStore = new SchemaStore();
+        File alert = new File("target/classes/objectTypes/alert.json");
+        schemaStore.create(alert.toURI());
+        File media_link = new File("target/classes/media_link.json");
+        schemaStore.create(media_link.toURI());
+        assert( schemaStore.compare( schemaStore.getByUri(media_link.toURI()).get(), schemaStore.getByUri(alert.toURI()).get()) == -1);
+        Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator();
+        assertContainsItemsEndingWithInOrder(
+                schemaIterator,
+                Lists.newArrayList(
+                        "media_link.json",
+                        "object.json",
+                        "alert.json"
+                )
+        );
+    }
+
+    @Test
+    public void compareVerbAncestorIndirect() {
+        SchemaStore schemaStore = new SchemaStore();
+        File update = new File("target/classes/verbs/update.json");
+        schemaStore.create(update.toURI());
+        File media_link = new File("target/classes/media_link.json");
+        assert( schemaStore.compare( schemaStore.getByUri(media_link.toURI()).get(), schemaStore.getByUri(update.toURI()).get()) == -1);
+        Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator();
+        assertContainsItemsEndingWithInOrder(
+                schemaIterator,
+                Lists.newArrayList(
+                        "media_link.json",
+                        "update.json"
+                )
+        );
+    }
+
+
+    public void assertContainsItemsEndingWithInOrder(Iterator<Schema> iterator, List<String> items) {
+        for( String item : items ) {
+            Optional<Schema> tryFind = Iterators.tryFind( iterator, new SchemaUriEndsWithPredicate(item) );
+            assert( tryFind.isPresent() );
+        }
+    }
+
+    public class SchemaUriEndsWithPredicate implements Predicate<Schema> {
+
+        private String endsWith;
+
+        public SchemaUriEndsWithPredicate(String endsWith) {
+            this.endsWith = endsWith;
+        }
+
+        @Override
+        public boolean apply(Schema input) {
+            return input.getURI().getPath().endsWith(endsWith);
+        }
+
+        @Override
+        public boolean equals(Object object) {
+            return false;
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaStoreTests.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaStoreTests.java b/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaStoreTests.java
new file mode 100644
index 0000000..9e354fe
--- /dev/null
+++ b/streams-schemas/src/test/java/org/apache/streams/schema/test/SchemaStoreTests.java
@@ -0,0 +1,76 @@
+package org.apache.streams.schema.test;
+
+import com.google.common.base.Optional;
+import com.google.common.base.Predicate;
+import com.google.common.collect.Iterators;
+import com.google.common.collect.Lists;
+import org.apache.streams.schema.Schema;
+import org.apache.streams.schema.SchemaStore;
+import org.junit.Test;
+
+import java.io.File;
+import java.net.URI;
+import java.util.Iterator;
+import java.util.List;
+
+/**
+ * Created by sblackmon on 5/2/16.
+ */
+public class SchemaStoreTests {
+
+    @Test
+    public void indexMediaLink() {
+        SchemaStore schemaStore = new SchemaStore();
+        File file = new File("target/classes/media_link.json");
+        schemaStore.create(file.toURI());
+        assert( schemaStore.getFileUriCount() == 1);
+        assert( schemaStore.getByUri(file.toURI()).isPresent());
+        assert( schemaStore.getById(schemaStore.getByUri(file.toURI()).get().getId()).isPresent());
+    }
+
+    @Test
+    public void indexApprove() {
+        SchemaStore schemaStore = new SchemaStore();
+        File file = new File("target/classes/verbs/approve.json");
+        schemaStore.create(file.toURI());
+        assert( schemaStore.getFileUriCount() == 4);
+        assert( schemaStore.getByUri(file.toURI()).isPresent());
+        assert( schemaStore.getById(schemaStore.getByUri(file.toURI()).get().getId()).isPresent());
+    }
+
+    @Test
+    public void indexCollection() {
+        SchemaStore schemaStore = new SchemaStore();
+        File file = new File("target/classes/collection.json");
+        schemaStore.create(file.toURI());
+        assert( schemaStore.getFileUriCount() == 3);
+        assert( schemaStore.getByUri(file.toURI()).isPresent());
+        assert( schemaStore.getById(schemaStore.getByUri(file.toURI()).get().getId()).isPresent());
+        Schema collection = schemaStore.getByUri(file.toURI()).get();
+        assert( collection.getParent() == null );
+        assert( schemaStore.getById(
+                URI.create("http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/object.json#"
+                )).isPresent());
+    }
+
+    @Test
+    public void indexUpdate() {
+        SchemaStore schemaStore = new SchemaStore();
+        File file = new File("target/classes/verbs/update.json");
+        schemaStore.create(file.toURI());
+        assert( schemaStore.getFileUriCount() == 4);
+        assert( schemaStore.getByUri(file.toURI()).isPresent());
+        assert( schemaStore.getById(schemaStore.getByUri(file.toURI()).get().getId()).isPresent());
+        Schema update = schemaStore.getByUri(file.toURI()).get();
+        assert( update.getParent() != null );
+        assert( update.getParent().getId().getScheme().equals("http"));
+        assert( update.getParent().getId().getHost().equals("streams.incubator.apache.org"));
+        assert( update.getParent().getId().getPath().startsWith("/site/0.3-incubating-SNAPSHOT/streams-schemas"));
+        assert( update.getParent().getId().getPath().endsWith("activity.json"));
+    }
+
+    // test create from messed up URI
+
+    // test create from URI with messed up reference
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/accept.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/accept.json b/streams-schemas/src/test/resources/activities/accept.json
new file mode 100644
index 0000000..c1dfd5f
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/accept.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "accept",
+  "object": {
+    "objectType": "job",
+    "displayName": "Director of Marketing"
+  },
+  "title": "Sally accepted the Director of Marketing job."
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/access.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/access.json b/streams-schemas/src/test/resources/activities/access.json
new file mode 100644
index 0000000..93bc6e2
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/access.json
@@ -0,0 +1,17 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "access",
+  "object": {
+    "objectType": "file",
+    "displayName": "4Q2012 Sales Forecast.xls"
+  },
+  "published": "2012-12-12T12:12:12Z",
+  "title": "Joe accessed the file \"4Q2012 Sales Forecast.xls\""
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/acknowledge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/acknowledge.json b/streams-schemas/src/test/resources/activities/acknowledge.json
new file mode 100644
index 0000000..2b69fa7
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/acknowledge.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "acknowledge",
+  "object": {
+    "objectType": "issue",
+    "displayName": "#123: There is a problem with the build"
+  },
+  "content": "Sally acknowledged Issue #123"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/add.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/add.json b/streams-schemas/src/test/resources/activities/add.json
new file mode 100644
index 0000000..b4e8151
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/add.json
@@ -0,0 +1,21 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "add",
+  "object": {
+    "objectType": "image",
+    "displayName": "My cat",
+    "fullImage": {"url": "http://example.org/cat.jpg"}
+  },
+  "target": {
+    "objectType": "collection",
+    "displayName": "Joe's Photo Album",
+    "objectTypes": ["image"]
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/agree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/agree.json b/streams-schemas/src/test/resources/activities/agree.json
new file mode 100644
index 0000000..3034cd8
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/agree.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "agree",
+  "object": {
+    "objectType": "article",
+    "displayName": "Some Random Article Online"
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/append.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/append.json b/streams-schemas/src/test/resources/activities/append.json
new file mode 100644
index 0000000..d8fb3be
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/append.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "append",
+  "object": {"content": "This is some text"},
+  "target": {
+    "objectType": "file",
+    "displayName": "log.txt"
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/approve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/approve.json b/streams-schemas/src/test/resources/activities/approve.json
new file mode 100644
index 0000000..b6f378e
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/approve.json
@@ -0,0 +1,20 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "approve",
+  "object": {
+    "objectType": "task",
+    "actor": {"displayName": "Joe"},
+    "verb": "join",
+    "object": {
+      "objectType": "group",
+      "displayName": "Administrators"
+    }
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/archive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/archive.json b/streams-schemas/src/test/resources/activities/archive.json
new file mode 100644
index 0000000..557dcdf
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/archive.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "archive",
+  "object": {
+    "objectType": "file",
+    "displayName": "4Q2012 Sales Forecast.xls"
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/assign.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/assign.json b/streams-schemas/src/test/resources/activities/assign.json
new file mode 100644
index 0000000..51b8a51
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/assign.json
@@ -0,0 +1,20 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "assign",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #123: Some Issue"
+  },
+  "target": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "title": "Sally assigned Issue #123 to Joe"
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/at.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/at.json b/streams-schemas/src/test/resources/activities/at.json
new file mode 100644
index 0000000..64a77f9
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/at.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "at",
+  "object": {
+    "objectType": "place",
+    "displayName": "Acme, Co."
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/attach.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/attach.json b/streams-schemas/src/test/resources/activities/attach.json
new file mode 100644
index 0000000..716616b
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/attach.json
@@ -0,0 +1,20 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "attach",
+  "object": {
+    "objectType": "binary",
+    "data": "dGhpcyBpcyB1bmNvbXByZXNzZWQgZGF0YQo="
+  },
+  "target": {
+    "objectType": "issue",
+    "displayName": "Issue #123"
+  },
+  "title": "Sally added an attachment to Issue #123"
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/attend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/attend.json b/streams-schemas/src/test/resources/activities/attend.json
new file mode 100644
index 0000000..f8c0838
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/attend.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "attend",
+  "object": {
+    "objectType": "event",
+    "displayName": "Sally's Meeting"
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/author.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/author.json b/streams-schemas/src/test/resources/activities/author.json
new file mode 100644
index 0000000..1903700
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/author.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "author",
+  "object": {
+    "objectType": "file",
+    "displayName": "4Q2012 Sales Forecast.xls"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/authorize.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/authorize.json b/streams-schemas/src/test/resources/activities/authorize.json
new file mode 100644
index 0000000..2d9d1b3
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/authorize.json
@@ -0,0 +1,23 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "authorize",
+  "object": {
+    "objectType": "task",
+    "actor": {
+      "objectType": "person",
+      "displayName": "Sally"
+    },
+    "verb": "access",
+    "object": {
+      "objectType": "place",
+      "displayName": "Joe's Home"
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/borrow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/borrow.json b/streams-schemas/src/test/resources/activities/borrow.json
new file mode 100644
index 0000000..e21809a
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/borrow.json
@@ -0,0 +1,21 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "borrow",
+  "object": {
+    "objectType": "book",
+    "displayName": "Cloud Atlas"
+  },
+  "target": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "title": "Sally borrowed the book 'Cloud Atlas' from Joe"
+}
+    

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/build.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/build.json b/streams-schemas/src/test/resources/activities/build.json
new file mode 100644
index 0000000..78878e1
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/build.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "build",
+  "object": {
+    "objectType": "application",
+    "displayName": "MyApp Builder 12345"
+  }
+}
+   

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/cancel.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/cancel.json b/streams-schemas/src/test/resources/activities/cancel.json
new file mode 100644
index 0000000..b7aba81
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/cancel.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "cancel",
+  "object": {
+    "objectType": "offer",
+    "displayName": "Free Money!"
+  },
+  "title": "Sally cancelled the offer for free money."
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/checkin.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/checkin.json b/streams-schemas/src/test/resources/activities/checkin.json
new file mode 100644
index 0000000..97216b9
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/checkin.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "checkin",
+  "object": {
+    "objectType": "place",
+    "displayName": "Acme, Co"
+  },
+  "title": "Joe checked in at Acme, Co"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/close.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/close.json b/streams-schemas/src/test/resources/activities/close.json
new file mode 100644
index 0000000..362e3f6
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/close.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "close",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #123"
+  },
+  "title": "Joe closed issue #123"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/complete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/complete.json b/streams-schemas/src/test/resources/activities/complete.json
new file mode 100644
index 0000000..06694a7
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/complete.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "complete",
+  "object": {
+    "objectType": "process",
+    "displayName": "Some long process"
+  }
+}
+    

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/confirm.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/confirm.json b/streams-schemas/src/test/resources/activities/confirm.json
new file mode 100644
index 0000000..9307c38
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/confirm.json
@@ -0,0 +1,17 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "confirm",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #123"
+  },
+  "title": "Joe confirmed issue #123"
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/consume.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/consume.json b/streams-schemas/src/test/resources/activities/consume.json
new file mode 100644
index 0000000..ed907e3
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/consume.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "consume",
+  "object": {
+    "objectType": "product",
+    "displayName": "Some amazing product"
+  }
+}
+    

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/create.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/create.json b/streams-schemas/src/test/resources/activities/create.json
new file mode 100644
index 0000000..5d8afb3
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/create.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "create",
+  "object": {
+    "objectType": "product",
+    "displayName": "Some amazing product"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/delete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/delete.json b/streams-schemas/src/test/resources/activities/delete.json
new file mode 100644
index 0000000..6943046
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/delete.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "delete",
+  "object": {
+    "objectType": "file",
+    "displayName": "4Q2012 Sales Forecast.xls"
+  },
+  "title": "Joe is probably going to get fired."
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/deliver.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/deliver.json b/streams-schemas/src/test/resources/activities/deliver.json
new file mode 100644
index 0000000..620f0b5
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/deliver.json
@@ -0,0 +1,20 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "deliver",
+  "object": {
+    "objectType": "note",
+    "displayName": "Bad News",
+    "content": "Joe deleted the sales forecast"
+  },
+  "target": {
+    "objectType": "person",
+    "displayName": "Joe's Boss"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/deny.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/deny.json b/streams-schemas/src/test/resources/activities/deny.json
new file mode 100644
index 0000000..b83ca60
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/deny.json
@@ -0,0 +1,23 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "deny",
+  "object": {
+    "objectType": "task",
+    "actor": {
+      "objectType": "person",
+      "displayName": "Joe"
+    },
+    "verb": "delete",
+    "object": {
+      "objectType": "file",
+      "displayName": "4Q2012 Sales Forecast.xls"
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/disagree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/disagree.json b/streams-schemas/src/test/resources/activities/disagree.json
new file mode 100644
index 0000000..8614e88
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/disagree.json
@@ -0,0 +1,30 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "disagree",
+  "object": {
+    "actor": {
+      "objectType": "person",
+      "displayName": "Joe"
+    },
+    "verb": "deny",
+    "object": {
+      "objectType": "task",
+      "actor": {
+        "objectType": "person",
+        "displayName": "Joe"
+      },
+      "verb": "delete",
+      "object": {
+        "objectType": "file",
+        "displayName": "4Q2012 Sales Forecast.xls"
+      }
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/dislike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/dislike.json b/streams-schemas/src/test/resources/activities/dislike.json
new file mode 100644
index 0000000..16c2148
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/dislike.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "dislike",
+  "object": {
+    "objectType": "person",
+    "displayName": "Sally"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/experience.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/experience.json b/streams-schemas/src/test/resources/activities/experience.json
new file mode 100644
index 0000000..d81d024
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/experience.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "experience",
+  "object": {
+    "objectType": "event",
+    "displayName": "Disciplinary Action for Joe"
+  }
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/favorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/favorite.json b/streams-schemas/src/test/resources/activities/favorite.json
new file mode 100644
index 0000000..3df99bf
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/favorite.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe's Boss"
+  },
+  "verb": "favorite",
+  "object": {
+    "objectType": "person",
+    "displayName": "Sally"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/find.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/find.json b/streams-schemas/src/test/resources/activities/find.json
new file mode 100644
index 0000000..9c25c59
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/find.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "find",
+  "object": {
+    "objectType": "application",
+    "displayName": "Unapproved Software Application"
+  },
+  "location": {
+    "objectType": "place",
+    "displayName": "Sally's Computer"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/flag-as-inappropriate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/flag-as-inappropriate.json b/streams-schemas/src/test/resources/activities/flag-as-inappropriate.json
new file mode 100644
index 0000000..6f4d202
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/flag-as-inappropriate.json
@@ -0,0 +1,24 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally's Boss"
+  },
+  "verb": "flag-as-inappropriate",
+  "object": {
+    "objectType": "application",
+    "displayName": "Unapproved Software Application",
+    "location": {
+      "displayName": "Sally's Computer"
+    }
+  },
+  "context": {
+    "objectType": "issue",
+    "displayName": "Issue #125",
+    "types": ["http://example.org/violation-of-corporate-policy"]
+  }
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/follow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/follow.json b/streams-schemas/src/test/resources/activities/follow.json
new file mode 100644
index 0000000..fc8c992
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/follow.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "follow",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #125"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/give.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/give.json b/streams-schemas/src/test/resources/activities/give.json
new file mode 100644
index 0000000..f145296
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/give.json
@@ -0,0 +1,28 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe's Boss"
+  },
+  "verb": "give",
+  "object": {
+    "objectType": "note",
+    "displayName": "Notice of Employment Termination"
+  },
+  "target": {
+    "objectType": "collection",
+    "items": [
+      {
+        "objectType": "person",
+        "displayName": "Joe"
+      },
+      {
+        "objectType": "person",
+        "displayName": "Sally"
+      }
+    ]
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/host.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/host.json b/streams-schemas/src/test/resources/activities/host.json
new file mode 100644
index 0000000..3331353
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/host.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Bob"
+  },
+  "verb": "host",
+  "object": {
+    "objectType": "event",
+    "displayName": "Job Interview"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/ignore.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/ignore.json b/streams-schemas/src/test/resources/activities/ignore.json
new file mode 100644
index 0000000..012013a
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/ignore.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "ignore",
+  "object": {
+    "objectType": "note",
+    "displayName": "Joe's request for his job back."
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/insert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/insert.json b/streams-schemas/src/test/resources/activities/insert.json
new file mode 100644
index 0000000..57bda66
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/insert.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Bob"
+  },
+  "verb": "insert",
+  "object": {
+    "objectType": "note",
+    "displayName": "Notes about Employee Disciplinary Actions"
+  },
+  "target": {
+    "objectType": "file",
+    "displayName": "2013 Corporate Policy Updates.doc"
+  }
+}



[18/53] [abbrv] incubator-streams git commit: WIP for apachecon

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml b/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml
new file mode 100644
index 0000000..9aa7d8d
--- /dev/null
+++ b/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml
@@ -0,0 +1,76 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>org.apache.streams.plugins</groupId>
+    <artifactId>streams-plugin-hbase-test</artifactId>
+    <version>0.3-incubating-SNAPSHOT</version>
+    <packaging>jar</packaging>
+    <name>Test StreamsHbaseResourceGeneratorMojo</name>
+
+    <dependencies>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>4.11</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schemas</artifactId>
+            <version>${project.version}</version>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.streams.plugins</groupId>
+                <artifactId>streams-plugin-hbase</artifactId>
+                <version>0.3-incubating-SNAPSHOT</version>
+                <configuration>
+                    <sourcePaths>
+                        <sourcePath>target/test-classes/streams-schemas/activity.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/collection.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/media_link.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/object.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/objectTypes</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/verbs</sourcePath>
+                    </sourcePaths>
+                    <targetDirectory>target/generated-resources/test-mojo</targetDirectory>
+                    <columnFamily>cf</columnFamily>
+                </configuration>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>hbase</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>2.10</version>
+                <configuration>
+                    <includes>**/*.json</includes>
+                    <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                    <includeGroupIds>org.apache.streams</includeGroupIds>
+                    <includeArtifactIds>streams-schemas</includeArtifactIds>
+                    <includeTypes>jar,test-jar</includeTypes>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>unpack-schemas</id>
+                        <phase>process-resources</phase>
+                        <goals>
+                            <goal>unpack-dependencies</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hive/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/pom.xml b/streams-plugins/streams-plugin-hive/pom.xml
index b173a8d..515314a 100644
--- a/streams-plugins/streams-plugin-hive/pom.xml
+++ b/streams-plugins/streams-plugin-hive/pom.xml
@@ -148,6 +148,12 @@
             <scope>test</scope>
         </dependency>
         <dependency>
+            <groupId>org.apache.maven.shared</groupId>
+            <artifactId>maven-verifier</artifactId>
+            <version>1.6</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
             <scope>test</scope>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGenerator.java b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGenerator.java
index 06c1499..c09f7dd 100644
--- a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGenerator.java
+++ b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGenerator.java
@@ -46,12 +46,11 @@ public class StreamsHiveResourceGenerator implements Runnable {
 
     private int currentDepth = 0;
 
-    public void main(String[] args) {
+    public static void main(String[] args) {
         StreamsHiveGenerationConfig config = new StreamsHiveGenerationConfig();
 
-        String sourceDirectory = "./target/test-classes/activities";
-        String targetDirectory = "./target/generated-sources/streams-plugin-hive";
-        String targetPackage = "";
+        String sourceDirectory = "src/main/jsonschema";
+        String targetDirectory = "target/generated-resources/hive";
 
         if( args.length > 0 )
             sourceDirectory = args[0];

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGeneratorMojo.java b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGeneratorMojo.java
index 9cf71a9..16466cf 100644
--- a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGeneratorMojo.java
@@ -2,6 +2,7 @@ package org.apache.streams.plugins.hive;
 
 import org.apache.maven.plugin.AbstractMojo;
 import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.MojoFailureException;
 import org.apache.maven.plugins.annotations.Component;
 import org.apache.maven.plugins.annotations.Execute;
 import org.apache.maven.plugins.annotations.LifecyclePhase;
@@ -15,15 +16,17 @@ import java.io.File;
 import java.util.List;
 
 @Mojo(  name = "hive",
-        defaultPhase = LifecyclePhase.GENERATE_SOURCES
+        defaultPhase = LifecyclePhase.GENERATE_RESOURCES
 )
 @Execute(   goal = "hive",
-            phase = LifecyclePhase.GENERATE_SOURCES
+            phase = LifecyclePhase.GENERATE_RESOURCES
 )
 public class StreamsHiveResourceGeneratorMojo extends AbstractMojo {
 
     private final static Logger LOGGER = LoggerFactory.getLogger(StreamsHiveResourceGeneratorMojo.class);
 
+    private volatile MojoFailureException mojoFailureException;
+
     @Component
     private MavenProject project;
 
@@ -39,16 +42,16 @@ public class StreamsHiveResourceGeneratorMojo extends AbstractMojo {
     @Parameter( defaultValue = "${project.basedir}", readonly = true )
     private File basedir;
 
-    @Parameter( defaultValue = "./src/main/jsonschema", readonly = true ) // Maven 3 only
+    @Parameter( defaultValue = "src/main/jsonschema", readonly = true ) // Maven 3 only
     public String sourceDirectory;
 
     @Parameter( readonly = true ) // Maven 3 only
     public List<String> sourcePaths;
 
-    @Parameter(defaultValue = "./target/generated-sources/streams-plugin-hive", readonly = true)
+    @Parameter(defaultValue = "./target/generated-resources/hive", readonly = true)
     public String targetDirectory;
 
-    public void execute() throws MojoExecutionException {
+    public void execute() throws MojoExecutionException, MojoFailureException {
 
         //addProjectDependenciesToClasspath();
 
@@ -60,16 +63,30 @@ public class StreamsHiveResourceGeneratorMojo extends AbstractMojo {
             config.setSourceDirectory(sourceDirectory);
         config.setTargetDirectory(targetDirectory);
 
-        StreamsHiveResourceGenerator streamsPojoScala = new StreamsHiveResourceGenerator(config);
-        Thread thread = new Thread(streamsPojoScala);
-        thread.start();
+        StreamsHiveResourceGenerator streamsHiveResourceGenerator = new StreamsHiveResourceGenerator(config);
+
+        Thread.UncaughtExceptionHandler h = new Thread.UncaughtExceptionHandler() {
+            public void uncaughtException(Thread th, Throwable ex) {
+                LOGGER.error("Exception", ex);
+                mojoFailureException = new MojoFailureException("Exception", ex);
+            }
+        };
+        Thread.setDefaultUncaughtExceptionHandler(h);
+        Thread thread = new Thread(streamsHiveResourceGenerator);
+        thread.setUncaughtExceptionHandler(h);
         try {
+            thread.start();
             thread.join();
         } catch (InterruptedException e) {
             LOGGER.error("InterruptedException", e);
         } catch (Exception e) {
             LOGGER.error("Exception", e);
+            mojoFailureException = new MojoFailureException("Exception", e);
         }
+
+        if( mojoFailureException != null )
+            throw mojoFailureException;
+
         return;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hive/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/site/markdown/index.md b/streams-plugins/streams-plugin-hive/src/site/markdown/index.md
new file mode 100644
index 0000000..4df9103
--- /dev/null
+++ b/streams-plugins/streams-plugin-hive/src/site/markdown/index.md
@@ -0,0 +1,22 @@
+org.apache.streams.plugins:streams-plugin-hive
+==============================================
+
+streams-plugin-hive generates resources from json schemas to assist with analysis of json data using Apache Hive.
+
+#### Usage
+
+Run within a module containing a src/main/jsonschema directory
+
+    mvn org.apache.streams.plugins:streams-plugin-hive:0.3-incubating-SNAPSHOT:hive
+
+Output will be placed in target/generated-resources/hive by default
+
+#### Example
+
+[streams-plugin-hive/pom.xml](streams-plugin-hive/pom.xml "streams-plugin-hive/pom.xml")
+
+#### Documentation
+
+[JavaDocs](apidocs/index.html "JavaDocs")
+
+###### Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorCLITest.java
new file mode 100644
index 0000000..21c82f9
--- /dev/null
+++ b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorCLITest.java
@@ -0,0 +1,41 @@
+package org.apache.streams.plugins.test;
+
+import com.google.common.base.Predicate;
+import com.google.common.collect.Lists;
+import com.google.common.io.Files;
+import org.apache.streams.plugins.hive.StreamsHiveResourceGenerator;
+import org.junit.Test;
+
+import javax.annotation.Nullable;
+import java.io.File;
+import java.util.Collection;
+import java.util.List;
+
+import static org.apache.streams.plugins.test.StreamsHiveResourceGeneratorTest.hqlFilter;
+
+/**
+ * Created by sblackmon on 5/5/16.
+ */
+public class StreamsHiveResourceGeneratorCLITest {
+
+    @Test
+    public void testStreamsHiveResourceGeneratorCLI() throws Exception {
+
+        String sourceDirectory = "target/test-classes/streams-schemas";
+        String targetDirectory = "target/generated-resources/hive-cli";
+
+        List<String> argsList = Lists.newArrayList(sourceDirectory, targetDirectory);
+        StreamsHiveResourceGenerator.main(argsList.toArray(new String[0]));
+
+        File testOutput = new File(targetDirectory);
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(hqlFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() == 133 );
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorMojoTest.java
new file mode 100644
index 0000000..b2f3e14
--- /dev/null
+++ b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorMojoTest.java
@@ -0,0 +1,64 @@
+package org.apache.streams.plugins.test;
+
+import com.google.common.collect.Lists;
+import com.google.common.io.Files;
+import junit.framework.TestCase;
+import org.apache.maven.it.Verifier;
+import org.apache.maven.it.util.ResourceExtractor;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import static org.apache.streams.plugins.test.StreamsHiveResourceGeneratorTest.hqlFilter;
+
+/**
+ * Tests that streams-plugin-hive running via maven generates hql resources
+ */
+public class StreamsHiveResourceGeneratorMojoTest extends TestCase {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsHiveResourceGeneratorMojoTest.class);
+
+    protected void setUp() throws Exception
+    {
+        // required for mojo lookups to work
+        super.setUp();
+    }
+
+
+    @Test
+    public void testStreamsHiveResourceGeneratorMojo() throws Exception {
+
+        File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/streams-plugin-hive" );
+
+        Verifier verifier;
+
+        verifier = new Verifier( testDir.getAbsolutePath() );
+
+        List cliOptions = new ArrayList();
+        cliOptions.add( "-N" );
+        verifier.executeGoals( Lists.<String>newArrayList(
+                "clean",
+                "dependency:unpack-dependencies",
+                "generate-resources"));
+
+        verifier.verifyErrorFreeLog();
+
+        verifier.resetStreams();
+
+        File testOutput = new File(testDir.getAbsolutePath() + "/target/generated-resources/test-mojo");
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(hqlFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() == 133 );
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java
index 9be908d..3944ddf 100644
--- a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java
@@ -8,6 +8,7 @@ import org.apache.commons.io.FileUtils;
 import org.apache.streams.plugins.hive.StreamsHiveGenerationConfig;
 import org.apache.streams.plugins.hive.StreamsHiveResourceGenerator;
 import org.junit.Assert;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -22,10 +23,20 @@ import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
 /**
  * Test that Activity beans are compatible with the example activities in the spec.
  */
+@Ignore
 public class StreamsHiveResourceGeneratorTest {
 
     private final static Logger LOGGER = LoggerFactory.getLogger(StreamsHiveResourceGeneratorTest.class);
 
+    public static final Predicate<File> hqlFilter = new Predicate<File>() {
+        @Override
+        public boolean apply(@Nullable File file) {
+            if( file.getName().endsWith(".hql") )
+                return true;
+            else return false;
+        }
+    };
+
     /**
      * Tests that all example activities can be loaded into Activity beans
      *
@@ -57,15 +68,7 @@ public class StreamsHiveResourceGeneratorTest {
             LOGGER.error("Exception", e);
         }
 
-        File testOutput = new File( "./target/generated-sources/test");
-        Predicate<File> hqlFilter = new Predicate<File>() {
-            @Override
-            public boolean apply(@Nullable File file) {
-                if( file.getName().endsWith(".hql") )
-                    return true;
-                else return false;
-            }
-        };
+        File testOutput = config.getTargetDirectory();
 
         assert( testOutput != null );
         assert( testOutput.exists() == true );

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml b/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
index b1de7b8..ae4bb66 100644
--- a/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
+++ b/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
@@ -13,6 +13,13 @@
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
+            <version>4.11</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schemas</artifactId>
+            <version>${project.version}</version>
             <scope>test</scope>
         </dependency>
     </dependencies>
@@ -24,10 +31,15 @@
                 <artifactId>streams-plugin-hive</artifactId>
                 <version>0.3-incubating-SNAPSHOT</version>
                 <configuration>
-                    <packages>
-                        <package>org.apache.streams.pojo.json</package>
-                    </packages>
-                    <target>target/test-classes/streams-hive-plugin/</target>
+                    <sourcePaths>
+                        <sourcePath>target/test-classes/streams-schemas/activity.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/collection.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/media_link.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/object.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/objectTypes</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/verbs</sourcePath>
+                    </sourcePaths>
+                    <targetDirectory>target/generated-resources/test-mojo</targetDirectory>
                 </configuration>
                 <executions>
                     <execution>
@@ -37,6 +49,27 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>2.10</version>
+                <configuration>
+                    <includes>**/*.json</includes>
+                    <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                    <includeGroupIds>org.apache.streams</includeGroupIds>
+                    <includeArtifactIds>streams-schemas</includeArtifactIds>
+                    <includeTypes>jar,test-jar</includeTypes>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>unpack-schemas</id>
+                        <phase>process-resources</phase>
+                        <goals>
+                            <goal>unpack-dependencies</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 </project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pig/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/pom.xml b/streams-plugins/streams-plugin-pig/pom.xml
new file mode 100644
index 0000000..ef59587
--- /dev/null
+++ b/streams-plugins/streams-plugin-pig/pom.xml
@@ -0,0 +1,244 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.streams.plugins</groupId>
+    <artifactId>streams-plugin-pig</artifactId>
+    <version>0.3-incubating-SNAPSHOT</version>
+    <packaging>maven-plugin</packaging>
+
+    <parent>
+        <groupId>org.apache.streams</groupId>
+        <artifactId>streams-plugins</artifactId>
+        <version>0.3-incubating-SNAPSHOT</version>
+        <relativePath>..</relativePath>
+    </parent>
+
+    <properties>
+        <pig.version>1.0</pig.version>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-config</artifactId>
+            <version>${project.version}</version>
+            <exclusions>
+                <exclusion>
+                    <artifactId>commons-logging</artifactId>
+                    <groupId>commons-logging</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-core</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schemas</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.google.guava</groupId>
+            <artifactId>guava</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.reflections</groupId>
+            <artifactId>reflections</artifactId>
+            <version>0.9.9</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-aether-provider</artifactId>
+            <version>3.3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-artifact</artifactId>
+            <version>3.3.3</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-compat</artifactId>
+            <version>3.3.3</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-core</artifactId>
+            <version>3.3.3</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.sonatype.aether</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-plugin-api</artifactId>
+            <version>3.3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.shared</groupId>
+            <artifactId>maven-verifier</artifactId>
+            <version>1.6</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-resources-plugin</artifactId>
+            <version>2.7</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.maven</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.codehaus.plexus</groupId>
+            <artifactId>plexus-utils</artifactId>
+            <version>3.0.15</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-plugin-plugin</artifactId>
+            <version>3.4</version>
+            <exclusions>
+                <exclusion>
+                    <artifactId>commons-logging</artifactId>
+                    <groupId>commons-logging</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-tools-api</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-annotations</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-tools-generators</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-testing</groupId>
+            <artifactId>maven-plugin-testing-harness</artifactId>
+            <version>3.3.0</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-lang</groupId>
+            <artifactId>commons-lang</artifactId>
+            <version>2.6</version>
+        </dependency>
+        <dependency>
+            <groupId>joda-time</groupId>
+            <artifactId>joda-time</artifactId>
+            <version>2.2</version>
+        </dependency>
+        <dependency>
+            <groupId>org.joda</groupId>
+            <artifactId>joda-convert</artifactId>
+            <version>1.8.1</version>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <sourceDirectory>src/main/java</sourceDirectory>
+        <testSourceDirectory>src/test/java</testSourceDirectory>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+            </resource>
+        </resources>
+        <testResources>
+            <testResource>
+                <directory>src/test/resources</directory>
+            </testResource>
+        </testResources>
+        <plugins>
+            <plugin>
+                <artifactId>maven-plugin-plugin</artifactId>
+                <version>3.4</version>
+                <configuration>
+                    <skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>mojo-descriptor</id>
+                        <phase>process-classes</phase>
+                        <goals>
+                            <goal>descriptor</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.reflections</groupId>
+                <artifactId>reflections-maven</artifactId>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>reflections</goal>
+                        </goals>
+                        <phase>process-classes</phase>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>2.4</version>
+                <executions>
+                    <execution>
+                        <id>resource-dependencies</id>
+                        <phase>process-test-resources</phase>
+                        <goals>
+                            <goal>unpack-dependencies</goal>
+                        </goals>
+                        <configuration>
+                            <includeGroupIds>org.apache.streams</includeGroupIds>
+                            <includeArtifactIds>streams-schemas</includeArtifactIds>
+                            <includes>**/*.json</includes>
+                            <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+
+        </plugins>
+    </build>
+
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigGenerationConfig.java b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigGenerationConfig.java
new file mode 100644
index 0000000..5aa55ed
--- /dev/null
+++ b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigGenerationConfig.java
@@ -0,0 +1,84 @@
+package org.apache.streams.plugins.pig;
+
+import org.apache.streams.schema.GenerationConfig;
+import org.jsonschema2pojo.DefaultGenerationConfig;
+import org.jsonschema2pojo.util.URLUtil;
+
+import java.io.File;
+import java.io.FileFilter;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+/**
+ * Configures StreamsHiveResourceGenerator
+ *
+ *
+ */
+public class StreamsPigGenerationConfig extends DefaultGenerationConfig implements GenerationConfig {
+
+    public String getSourceDirectory() {
+        return sourceDirectory;
+    }
+
+    public List<String> getSourcePaths() {
+        return sourcePaths;
+    }
+
+    private String sourceDirectory;
+    private List<String> sourcePaths = new ArrayList<String>();
+    private String targetDirectory;
+    private int maxDepth = 1;
+
+    public Set<String> getExclusions() {
+        return exclusions;
+    }
+
+    public void setExclusions(Set<String> exclusions) {
+        this.exclusions = exclusions;
+    }
+
+    private Set<String> exclusions = new HashSet<String>();
+
+    public int getMaxDepth() {
+        return maxDepth;
+    }
+
+    public void setSourceDirectory(String sourceDirectory) {
+        this.sourceDirectory = sourceDirectory;
+    }
+
+    public void setSourcePaths(List<String> sourcePaths) {
+        this.sourcePaths = sourcePaths;
+    }
+
+    public void setTargetDirectory(String targetDirectory) {
+        this.targetDirectory = targetDirectory;
+    }
+
+    @Override
+    public File getTargetDirectory() {
+        return new File(targetDirectory);
+    }
+
+    @Override
+    public Iterator<URL> getSource() {
+        if (null != sourceDirectory) {
+            return Collections.singleton(URLUtil.parseURL(sourceDirectory)).iterator();
+        }
+        List<URL> sourceURLs = new ArrayList<URL>();
+        if( sourcePaths != null && sourcePaths.size() > 0)
+            for (String source : sourcePaths) {
+                sourceURLs.add(URLUtil.parseURL(source));
+            }
+        return sourceURLs.iterator();
+    }
+
+    public void setMaxDepth(int maxDepth) {
+        this.maxDepth = maxDepth;
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGenerator.java b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGenerator.java
new file mode 100644
index 0000000..072e1b6
--- /dev/null
+++ b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGenerator.java
@@ -0,0 +1,317 @@
+package org.apache.streams.plugins.pig;
+
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.google.common.base.Joiner;
+import com.google.common.base.Preconditions;
+import com.google.common.base.Strings;
+import com.google.common.collect.Lists;
+import org.apache.streams.plugins.pig.StreamsPigGenerationConfig;
+import org.apache.streams.schema.FieldType;
+import org.apache.streams.schema.FieldUtil;
+import org.apache.streams.schema.FileUtil;
+import org.apache.streams.schema.GenerationConfig;
+import org.apache.streams.schema.Schema;
+import org.apache.streams.schema.SchemaStore;
+import org.jsonschema2pojo.util.URLUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.net.URL;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+
+import static com.google.common.base.Preconditions.checkNotNull;
+import static org.apache.streams.schema.FileUtil.dropExtension;
+import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
+import static org.apache.streams.schema.FileUtil.swapExtension;
+import static org.apache.streams.schema.FileUtil.writeFile;
+
+public class StreamsPigResourceGenerator implements Runnable {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPigResourceGenerator.class);
+
+    private final static String LS = System.getProperty("line.separator");
+
+    private StreamsPigGenerationConfig config;
+
+    private SchemaStore schemaStore = new SchemaStore();
+
+    private int currentDepth = 0;
+
+    public static void main(String[] args) {
+        StreamsPigGenerationConfig config = new StreamsPigGenerationConfig();
+
+        String sourceDirectory = "src/main/jsonschema";
+        String targetDirectory = "target/generated-resources/pig-cli";
+
+        if (args.length > 0)
+            sourceDirectory = args[0];
+        if (args.length > 1)
+            targetDirectory = args[1];
+
+        config.setSourceDirectory(sourceDirectory);
+        config.setTargetDirectory(targetDirectory);
+
+        StreamsPigResourceGenerator streamsPigResourceGenerator = new StreamsPigResourceGenerator(config);
+        Thread thread = new Thread(streamsPigResourceGenerator);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+        return;
+    }
+
+    public StreamsPigResourceGenerator(StreamsPigGenerationConfig config) {
+        this.config = config;
+    }
+
+    public void run() {
+
+        checkNotNull(config);
+
+        generate(config);
+
+    }
+
+    public void generate(StreamsPigGenerationConfig config) {
+
+        LinkedList<File> sourceFiles = new LinkedList<File>();
+
+        for (Iterator<URL> sources = config.getSource(); sources.hasNext(); ) {
+            URL source = sources.next();
+            sourceFiles.add(URLUtil.getFileFromURL(source));
+        }
+
+        LOGGER.info("Seeded with {} source paths:", sourceFiles.size());
+
+        FileUtil.resolveRecursive((GenerationConfig) config, sourceFiles);
+
+        LOGGER.info("Resolved {} schema files:", sourceFiles.size());
+
+        for (Iterator<File> iterator = sourceFiles.iterator(); iterator.hasNext(); ) {
+            File item = iterator.next();
+            schemaStore.create(item.toURI());
+        }
+
+        LOGGER.info("Identified {} objects:", schemaStore.getSize());
+
+        for (Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator(); schemaIterator.hasNext(); ) {
+            Schema schema = schemaIterator.next();
+            currentDepth = 0;
+            if (schema.getURI().getScheme().equals("file")) {
+                String inputFile = schema.getURI().getPath();
+                String resourcePath = dropSourcePathPrefix(inputFile, config.getSourceDirectory());
+                for (String sourcePath : config.getSourcePaths()) {
+                    resourcePath = dropSourcePathPrefix(resourcePath, sourcePath);
+                }
+                String outputFile = config.getTargetDirectory() + "/" + swapExtension(resourcePath, "json", "pig");
+
+                LOGGER.info("Processing {}:", resourcePath);
+
+                String resourceId = schemaSymbol(schema);
+
+                String resourceContent = generateResource(schema, resourceId);
+
+                writeFile(outputFile, resourceContent);
+
+                LOGGER.info("Wrote {}:", outputFile);
+            }
+        }
+    }
+
+    public String generateResource(Schema schema, String resourceId) {
+        StringBuilder resourceBuilder = new StringBuilder();
+        resourceBuilder.append(pigEscape(resourceId));
+        resourceBuilder.append(" = ");
+        resourceBuilder.append("LOAD '' USING JsonLoader('");
+        resourceBuilder = appendRootObject(resourceBuilder, schema, resourceId, ':');
+        resourceBuilder.append("');");
+        return resourceBuilder.toString();
+    }
+
+    public StringBuilder appendRootObject(StringBuilder builder, Schema schema, String resourceId, Character seperator) {
+        ObjectNode propertiesNode = schemaStore.resolveProperties(schema, null, resourceId);
+        if (propertiesNode != null && propertiesNode.isObject() && propertiesNode.size() > 0) {
+            builder = appendPropertiesNode(builder, schema, propertiesNode, seperator);
+        }
+        return builder;
+    }
+
+    private StringBuilder appendPropertiesNode(StringBuilder builder, Schema schema, ObjectNode propertiesNode, Character seperator) {
+        checkNotNull(builder);
+        checkNotNull(propertiesNode);
+        Iterator<Map.Entry<String, JsonNode>> fields = propertiesNode.fields();
+        Joiner joiner = Joiner.on(", ").skipNulls();
+        List<String> fieldStrings = Lists.newArrayList();
+        for( ; fields.hasNext(); ) {
+            Map.Entry<String, JsonNode> field = fields.next();
+            String fieldId = field.getKey();
+            if( !config.getExclusions().contains(fieldId) && field.getValue().isObject()) {
+                ObjectNode fieldNode = (ObjectNode) field.getValue();
+                FieldType fieldType = FieldUtil.determineFieldType(fieldNode);
+                if (fieldType != null ) {
+                    switch (fieldType) {
+                        case ARRAY:
+                            ObjectNode itemsNode = FieldUtil.resolveItemsNode(fieldNode);
+                            if( itemsNode == null ) {
+                                ObjectNode resolvedItems = schemaStore.resolveProperties(schema, fieldNode, fieldId);
+                                itemsNode = FieldUtil.resolveItemsNode();
+                            }
+                            if( itemsNode != null && currentDepth <= config.getMaxDepth()) {
+                                StringBuilder arrayItemsBuilder = appendArrayItems(new StringBuilder(), schema, fieldId, itemsNode, seperator);
+                                if( !Strings.isNullOrEmpty(arrayItemsBuilder.toString())) {
+                                    fieldStrings.add(arrayItemsBuilder.toString());
+                                }
+                            }
+                            break;
+                        case OBJECT:
+                            ObjectNode childProperties = schemaStore.resolveProperties(schema, fieldNode, fieldId);
+                            if( currentDepth < config.getMaxDepth()) {
+                                StringBuilder structFieldBuilder = appendStructField(new StringBuilder(), schema, fieldId, childProperties, seperator);
+                                if( !Strings.isNullOrEmpty(structFieldBuilder.toString())) {
+                                    fieldStrings.add(structFieldBuilder.toString());
+                                }
+                            }
+                            break;
+                        default:
+                            StringBuilder valueFieldBuilder = appendValueField(new StringBuilder(), schema, fieldId, fieldType, seperator);
+                            if( !Strings.isNullOrEmpty(valueFieldBuilder.toString())) {
+                                fieldStrings.add(valueFieldBuilder.toString());
+                            }
+                    }
+                }
+            }
+        }
+        joiner.appendTo(builder, fieldStrings);
+        Preconditions.checkNotNull(builder);
+        return builder;
+    }
+
+    private StringBuilder appendValueField(StringBuilder builder, Schema schema, String fieldId, FieldType fieldType, Character seperator) {
+        // safe to append nothing
+        checkNotNull(builder);
+        builder.append(pigEscape(fieldId));
+        builder.append(seperator);
+        builder.append(pigType(fieldType));
+        return builder;
+    }
+
+    public StringBuilder appendArrayItems(StringBuilder builder, Schema schema, String fieldId, ObjectNode itemsNode, Character seperator) {
+        // not safe to append nothing
+        checkNotNull(builder);
+        if( itemsNode == null ) return builder;
+        FieldType itemType = FieldUtil.determineFieldType(itemsNode);
+        try {
+            switch( itemType ) {
+                case OBJECT:
+                    builder = appendArrayObject(builder, schema, fieldId, itemsNode, seperator);
+                    break;
+                case ARRAY:
+                    ObjectNode subArrayItems = (ObjectNode) itemsNode.get("items");
+                    builder = appendArrayItems(builder, schema, fieldId, subArrayItems, seperator);
+                    break;
+                default:
+                    builder = appendArrayField(builder, schema, fieldId, itemType, seperator);
+            }
+        } catch (Exception e) {
+            LOGGER.warn("No item type resolvable for {}", fieldId);
+        }
+
+        checkNotNull(builder);
+        return builder;
+    }
+
+    private StringBuilder appendArrayField(StringBuilder builder, Schema schema, String fieldId, FieldType fieldType, Character seperator) {
+        // safe to append nothing
+        checkNotNull(builder);
+        checkNotNull(fieldId);
+        builder.append("{t: (");
+        builder.append(pigEscape(fieldId));
+        builder.append(seperator);
+        builder.append(pigType(fieldType));
+        builder.append(")}");
+        checkNotNull(builder);
+        return builder;
+    }
+
+    private StringBuilder appendArrayObject(StringBuilder builder, Schema schema, String fieldId, ObjectNode fieldNode, Character seperator) {
+        // safe to append nothing
+        checkNotNull(builder);
+        checkNotNull(fieldId);
+        checkNotNull(fieldNode);
+        ObjectNode propertiesNode = schemaStore.resolveProperties(schema, fieldNode, fieldId);
+        if( propertiesNode.size() > 0 ) {
+            builder.append("{t: (");
+            builder = appendStructField(builder, schema, "", propertiesNode, ':');
+            builder.append(")}");
+        }
+        checkNotNull(builder);
+        return builder;
+    }
+
+    private StringBuilder appendStructField(StringBuilder builder, Schema schema, String fieldId, ObjectNode propertiesNode, Character seperator) {
+        // safe to append nothing
+        checkNotNull(builder);
+        checkNotNull(propertiesNode);
+
+        if( propertiesNode != null && propertiesNode.isObject() && propertiesNode.size() > 0 ) {
+
+            currentDepth += 1;
+
+            if( !Strings.isNullOrEmpty(fieldId)) {
+                builder.append(pigEscape(fieldId));
+                builder.append(seperator);
+                builder.append("(");
+                builder = appendPropertiesNode(builder, schema, propertiesNode, ':');
+                builder.append(")");
+            }
+
+            currentDepth -= 1;
+
+        }
+        checkNotNull(builder);
+        return builder;
+    }
+
+    private static String pigEscape( String fieldId ) {
+        return fieldId;
+    }
+
+    private static String pigType( FieldType fieldType ) {
+        switch( fieldType ) {
+            case STRING:
+                return "chararray";
+            case INTEGER:
+                return "int";
+            case NUMBER:
+                return "double";
+            case OBJECT:
+                return "tuple";
+            default:
+                return fieldType.name().toLowerCase();
+        }
+    }
+
+    private String schemaSymbol( Schema schema ) {
+        if (schema == null) return null;
+        // this needs to return whatever
+        if (schema.getURI().getScheme().equals("file")) {
+            String inputFile = schema.getURI().getPath();
+            String resourcePath = dropSourcePathPrefix(inputFile, config.getSourceDirectory());
+            for (String sourcePath : config.getSourcePaths()) {
+                resourcePath = dropSourcePathPrefix(resourcePath, sourcePath);
+            }
+            return dropExtension(resourcePath).replace("/", "_").replace("-", "");
+        } else {
+            return "IDK";
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGeneratorMojo.java b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGeneratorMojo.java
new file mode 100644
index 0000000..4763b60
--- /dev/null
+++ b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGeneratorMojo.java
@@ -0,0 +1,93 @@
+package org.apache.streams.plugins.pig;
+
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.MojoFailureException;
+import org.apache.maven.plugins.annotations.Component;
+import org.apache.maven.plugins.annotations.Execute;
+import org.apache.maven.plugins.annotations.LifecyclePhase;
+import org.apache.maven.plugins.annotations.Mojo;
+import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.project.MavenProject;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.util.List;
+
+@Mojo(  name = "pig",
+        defaultPhase = LifecyclePhase.GENERATE_RESOURCES
+)
+@Execute(   goal = "pig",
+            phase = LifecyclePhase.GENERATE_RESOURCES
+)
+public class StreamsPigResourceGeneratorMojo extends AbstractMojo {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPigResourceGeneratorMojo.class);
+
+    private volatile MojoFailureException mojoFailureException;
+
+    @Component
+    private MavenProject project;
+
+//    @Component
+//    private Settings settings;
+//
+//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
+//    protected ArtifactRepository localRepository;
+//
+//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
+//    private PluginDescriptor plugin;
+//
+    @Parameter( defaultValue = "${project.basedir}", readonly = true )
+    private File basedir;
+
+    @Parameter( defaultValue = "src/main/jsonschema", readonly = true ) // Maven 3 only
+    public String sourceDirectory;
+
+    @Parameter( readonly = true ) // Maven 3 only
+    public List<String> sourcePaths;
+
+    @Parameter(defaultValue = "target/generated-resources/pig", readonly = true)
+    public String targetDirectory;
+
+    public void execute() throws MojoExecutionException, MojoFailureException {
+
+        //addProjectDependenciesToClasspath();
+
+        StreamsPigGenerationConfig config = new StreamsPigGenerationConfig();
+
+        if( sourcePaths != null && sourcePaths.size() > 0)
+            config.setSourcePaths(sourcePaths);
+        else
+            config.setSourceDirectory(sourceDirectory);
+        config.setTargetDirectory(targetDirectory);
+
+        StreamsPigResourceGenerator streamsPigResourceGenerator = new StreamsPigResourceGenerator(config);
+
+        Thread.UncaughtExceptionHandler h = new Thread.UncaughtExceptionHandler() {
+            public void uncaughtException(Thread th, Throwable ex) {
+                LOGGER.error("Exception", ex);
+                mojoFailureException = new MojoFailureException("Exception", ex);
+            }
+        };
+        Thread.setDefaultUncaughtExceptionHandler(h);
+        Thread thread = new Thread(streamsPigResourceGenerator);
+        thread.setUncaughtExceptionHandler(h);
+        try {
+            thread.start();
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+            mojoFailureException = new MojoFailureException("Exception", e);
+        }
+
+        if( mojoFailureException != null )
+            throw mojoFailureException;
+
+        return;
+    }
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pig/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/site/markdown/index.md b/streams-plugins/streams-plugin-pig/src/site/markdown/index.md
new file mode 100644
index 0000000..d0d4791
--- /dev/null
+++ b/streams-plugins/streams-plugin-pig/src/site/markdown/index.md
@@ -0,0 +1,22 @@
+org.apache.streams.plugins:streams-plugin-pig
+=============================================
+
+streams-plugin-pig generates resources from json schemas to assist with analysis of json data using Apache Pig.
+
+#### Usage
+
+Run within a module containing a src/main/jsonschema directory
+
+    mvn org.apache.streams.plugins:streams-plugin-pig:0.3-incubating-SNAPSHOT:pig
+
+Output will be placed in target/generated-resources/pig by default
+
+#### Example
+
+[streams-plugin-pig/pom.xml](streams-plugin-pig/pom.xml "streams-plugin-pig/pom.xml")
+
+#### Documentation
+
+[JavaDocs](apidocs/index.html "JavaDocs")
+
+###### Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorCLITest.java
new file mode 100644
index 0000000..c94bca9
--- /dev/null
+++ b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorCLITest.java
@@ -0,0 +1,39 @@
+package org.apache.streams.plugins.pig.test;
+
+import com.google.common.collect.Lists;
+import com.google.common.io.Files;
+import org.apache.streams.plugins.pig.StreamsPigResourceGenerator;
+import org.junit.Test;
+
+import java.io.File;
+import java.util.Collection;
+import java.util.List;
+
+import static org.apache.streams.plugins.pig.test.StreamsPigResourceGeneratorTest.pigFilter;
+
+/**
+ * Created by sblackmon on 5/5/16.
+ */
+public class StreamsPigResourceGeneratorCLITest {
+
+    @Test
+    public void testStreamsPigResourceGeneratorCLI() throws Exception {
+
+        String sourceDirectory = "target/test-classes/streams-schemas";
+        String targetDirectory = "target/generated-resources/hive-cli";
+
+        List<String> argsList = Lists.newArrayList(sourceDirectory, targetDirectory);
+        StreamsPigResourceGenerator.main(argsList.toArray(new String[0]));
+
+        File testOutput = new File(targetDirectory);
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(pigFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() == 133 );
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorMojoTest.java
new file mode 100644
index 0000000..401c506
--- /dev/null
+++ b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorMojoTest.java
@@ -0,0 +1,64 @@
+package org.apache.streams.plugins.pig.test;
+
+import com.google.common.collect.Lists;
+import com.google.common.io.Files;
+import junit.framework.TestCase;
+import org.apache.maven.it.Verifier;
+import org.apache.maven.it.util.ResourceExtractor;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import static org.apache.streams.plugins.pig.test.StreamsPigResourceGeneratorTest.pigFilter;
+
+/**
+ * Tests that streams-plugin-hive running via maven generates hql resources
+ */
+public class StreamsPigResourceGeneratorMojoTest extends TestCase {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPigResourceGeneratorMojoTest.class);
+
+    protected void setUp() throws Exception
+    {
+        // required for mojo lookups to work
+        super.setUp();
+    }
+
+
+    @Test
+    public void testStreamsHiveResourceGeneratorMojo() throws Exception {
+
+        File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/streams-plugin-pig" );
+
+        Verifier verifier;
+
+        verifier = new Verifier( testDir.getAbsolutePath() );
+
+        List cliOptions = new ArrayList();
+        cliOptions.add( "-N" );
+        verifier.executeGoals( Lists.<String>newArrayList(
+                "clean",
+                "dependency:unpack-dependencies",
+                "generate-resources"));
+
+        verifier.verifyErrorFreeLog();
+
+        verifier.resetStreams();
+
+        File testOutput = new File(testDir.getAbsolutePath() + "/target/generated-resources/test-mojo");
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(pigFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() == 133 );
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorTest.java b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorTest.java
new file mode 100644
index 0000000..a1ab281
--- /dev/null
+++ b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorTest.java
@@ -0,0 +1,122 @@
+package org.apache.streams.plugins.pig.test;
+
+import com.google.common.base.Predicate;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Sets;
+import com.google.common.io.Files;
+import org.apache.commons.io.FileUtils;
+import org.apache.streams.plugins.pig.StreamsPigGenerationConfig;
+import org.apache.streams.plugins.pig.StreamsPigResourceGenerator;
+import org.junit.Assert;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.annotation.Nullable;
+import java.io.File;
+import java.util.Collection;
+import java.util.Iterator;
+
+import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
+
+/**
+ * Test that Activity beans are compatible with the example activities in the spec.
+ */
+public class StreamsPigResourceGeneratorTest {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPigResourceGeneratorTest.class);
+
+    public static final Predicate<File> pigFilter = new Predicate<File>() {
+        @Override
+        public boolean apply(@Nullable File file) {
+            if( file.getName().endsWith(".pig") )
+                return true;
+            else return false;
+        }
+    };
+
+    /**
+     * Tests that all example activities can be loaded into Activity beans
+     *
+     * @throws Exception
+     */
+    @Test
+    public void StreamsPigResourceGenerator() throws Exception {
+
+        StreamsPigGenerationConfig config = new StreamsPigGenerationConfig();
+
+        String sourceDirectory = "target/test-classes/streams-schemas";
+
+        config.setSourceDirectory(sourceDirectory);
+
+        config.setTargetDirectory("target/generated-sources/test");
+
+        config.setExclusions(Sets.newHashSet("attachments"));
+
+        config.setMaxDepth(2);
+
+        StreamsPigResourceGenerator streamsPigResourceGenerator = new StreamsPigResourceGenerator(config);
+        Thread thread = new Thread(streamsPigResourceGenerator);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+
+        File testOutput = new File( "./target/generated-sources/test");
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(pigFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() == 133 );
+
+        String expectedDirectory = "target/test-classes/expected";
+        File testExpected = new File( expectedDirectory );
+
+        Iterable<File> expectedIterator = Files.fileTreeTraverser().breadthFirstTraversal(testExpected)
+                .filter(pigFilter);
+        Collection<File> expectedCollection = Lists.newArrayList(expectedIterator);
+
+        int fails = 0;
+
+        Iterator<File> iterator = expectedCollection.iterator();
+        while( iterator.hasNext() ) {
+            File objectExpected = iterator.next();
+            String expectedEnd = dropSourcePathPrefix(objectExpected.getAbsolutePath(),  expectedDirectory);
+            File objectActual = new File(config.getTargetDirectory() + "/" + expectedEnd);
+            LOGGER.info("Comparing: {} and {}", objectExpected.getAbsolutePath(), objectActual.getAbsolutePath());
+            assert( objectActual.exists());
+            if( FileUtils.contentEquals(objectActual, objectExpected) == true ) {
+                LOGGER.info("Exact Match!");
+            } else {
+                LOGGER.info("No Match!");
+                fails++;
+            }
+        }
+        if( fails > 0 ) {
+            LOGGER.info("Fails: {}", fails);
+            Assert.fail();
+        }
+
+
+//        assert( new File(testOutput + "/traits").exists() == true );
+//        assert( new File(testOutput + "/traits").isDirectory() == true );
+//        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
+//        assert( new File(testOutput + "/objectTypes").exists() == true );
+//        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
+//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
+//        assert( new File(testOutput + "/verbs").exists() == true );
+//        assert( new File(testOutput + "/verbs").isDirectory() == true );
+//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pig/src/test/resources/expected/media_link.pig
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/resources/expected/media_link.pig b/streams-plugins/streams-plugin-pig/src/test/resources/expected/media_link.pig
new file mode 100644
index 0000000..643686e
--- /dev/null
+++ b/streams-plugins/streams-plugin-pig/src/test/resources/expected/media_link.pig
@@ -0,0 +1 @@
+media_link = LOAD '' USING JsonLoader('duration:double, height:int, width:int, url:chararray');
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/file.pig
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/file.pig b/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/file.pig
new file mode 100644
index 0000000..9aa8d63
--- /dev/null
+++ b/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/file.pig
@@ -0,0 +1 @@
+objectTypes_file = LOAD '' USING JsonLoader('id:chararray, image:(duration:double, height:int, width:int, url:chararray), displayName:chararray, summary:chararray, content:chararray, url:chararray, objectType:chararray, author:(id:chararray, image:(duration:double, height:int, width:int, url:chararray), displayName:chararray, summary:chararray, content:chararray, url:chararray, objectType:chararray, author:(id:chararray, displayName:chararray, summary:chararray, content:chararray, url:chararray, objectType:chararray, published:chararray, updated:chararray, {t: (upstreamDuplicates:chararray)}, {t: (downstreamDuplicates:chararray)}), published:chararray, updated:chararray, {t: (upstreamDuplicates:chararray)}, {t: (downstreamDuplicates:chararray)}), published:chararray, updated:chararray, {t: (upstreamDuplicates:chararray)}, {t: (downstreamDuplicates:chararray)}, fileUrl:chararray, mimeType:chararray');
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/photo-album.pig
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/photo-album.pig b/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/photo-album.pig
new file mode 100644
index 0000000..83b150f
--- /dev/null
+++ b/streams-plugins/streams-plugin-pig/src/test/resources/expected/objectTypes/photo-album.pig
@@ -0,0 +1 @@
+objectTypes_photoalbum = LOAD '' USING JsonLoader('objectType:chararray, {t: ()}');
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml b/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml
new file mode 100644
index 0000000..7027446
--- /dev/null
+++ b/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml
@@ -0,0 +1,75 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>org.apache.streams.plugins</groupId>
+    <artifactId>streams-plugin-pig-test</artifactId>
+    <version>0.3-incubating-SNAPSHOT</version>
+    <packaging>jar</packaging>
+    <name>Test StreamsPigResourceGeneratorMojo</name>
+
+    <dependencies>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>4.11</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schemas</artifactId>
+            <version>${project.version}</version>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.streams.plugins</groupId>
+                <artifactId>streams-plugin-pig</artifactId>
+                <version>0.3-incubating-SNAPSHOT</version>
+                <configuration>
+                    <sourcePaths>
+                        <sourcePath>target/test-classes/streams-schemas/activity.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/collection.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/media_link.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/object.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/objectTypes</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/verbs</sourcePath>
+                    </sourcePaths>
+                    <targetDirectory>target/generated-resources/test-mojo</targetDirectory>
+                </configuration>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>pig</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>2.10</version>
+                <configuration>
+                    <includes>**/*.json</includes>
+                    <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                    <includeGroupIds>org.apache.streams</includeGroupIds>
+                    <includeArtifactIds>streams-schemas</includeArtifactIds>
+                    <includeTypes>jar,test-jar</includeTypes>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>unpack-schemas</id>
+                        <phase>process-resources</phase>
+                        <goals>
+                            <goal>unpack-dependencies</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/pom.xml b/streams-plugins/streams-plugin-pojo/pom.xml
index d7210c8..bfa3480 100644
--- a/streams-plugins/streams-plugin-pojo/pom.xml
+++ b/streams-plugins/streams-plugin-pojo/pom.xml
@@ -64,13 +64,6 @@
             <version>0.4.10</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-pojo</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-            <type>test-jar</type>
-        </dependency>
-        <dependency>
             <groupId>org.reflections</groupId>
             <artifactId>reflections</artifactId>
             <version>0.9.9</version>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java
index d80123d..f7b6617 100644
--- a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java
+++ b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java
@@ -1,26 +1,14 @@
 package org.apache.streams.plugins;
 
 import com.google.common.base.Preconditions;
-import org.apache.maven.artifact.DependencyResolutionRequiredException;
-import org.apache.maven.plugin.MojoExecutionException;
 import org.jsonschema2pojo.Jsonschema2Pojo;
-import org.jsonschema2pojo.maven.ProjectClasspath;
-import org.jsonschema2pojo.util.URLUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.io.File;
-import java.io.IOException;
-import java.net.URL;
 import java.nio.file.Files;
 import java.nio.file.Paths;
 import java.nio.file.StandardOpenOption;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
-import static org.apache.commons.lang.StringUtils.isNotBlank;
 
 /**
  * Created by sblackmon on 4/20/16.
@@ -31,11 +19,9 @@ public class StreamsPojoSourceGenerator implements Runnable {
 
     private final static String LS = System.getProperty("line.separator");
 
-    private StreamsPojoSourceGeneratorMojo mojo;
-
     private StreamsPojoGenerationConfig config;
 
-    public void main(String[] args) {
+    public static void main(String[] args) {
         StreamsPojoGenerationConfig config = new StreamsPojoGenerationConfig();
 
         String sourceDirectory = "./target/test-classes/activities";

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
index 9d595fe..8cf1697 100644
--- a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
@@ -3,6 +3,7 @@ package org.apache.streams.plugins;
 import org.apache.maven.artifact.DependencyResolutionRequiredException;
 import org.apache.maven.plugin.AbstractMojo;
 import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.MojoFailureException;
 import org.apache.maven.plugins.annotations.Component;
 import org.apache.maven.plugins.annotations.Execute;
 import org.apache.maven.plugins.annotations.LifecyclePhase;
@@ -39,6 +40,8 @@ public class StreamsPojoSourceGeneratorMojo extends AbstractMojo {
 
     private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoSourceGeneratorMojo.class);
 
+    private volatile MojoFailureException mojoFailureException;
+
     @Component
     public MavenProject project;
 
@@ -67,7 +70,7 @@ public class StreamsPojoSourceGeneratorMojo extends AbstractMojo {
     @Parameter(readonly = true)
     public String targetPackage;
 
-    public void execute() throws MojoExecutionException {
+    public void execute() throws MojoExecutionException, MojoFailureException {
 
         addProjectDependenciesToClasspath();
 
@@ -81,38 +84,30 @@ public class StreamsPojoSourceGeneratorMojo extends AbstractMojo {
         config.setTargetDirectory(targetDirectory);
 
         StreamsPojoSourceGenerator streamsPojoSourceGenerator = new StreamsPojoSourceGenerator(config);
+
+        Thread.UncaughtExceptionHandler h = new Thread.UncaughtExceptionHandler() {
+            public void uncaughtException(Thread th, Throwable ex) {
+                LOGGER.error("Exception", ex);
+                mojoFailureException = new MojoFailureException("Exception", ex);
+            }
+        };
+        Thread.setDefaultUncaughtExceptionHandler(h);
         Thread thread = new Thread(streamsPojoSourceGenerator);
-        thread.start();
+        thread.setUncaughtExceptionHandler(h);
         try {
+            thread.start();
             thread.join();
         } catch (InterruptedException e) {
             LOGGER.error("InterruptedException", e);
         } catch (Exception e) {
             LOGGER.error("Exception", e);
+            throw new MojoFailureException("Exception", e);
         }
-        return;
 
-//        List<Class<?>> serializableClasses = detectSerializableClasses();
-//
-//        LOGGER.info("Detected {} serialiables:", serializableClasses.size());
-//        for( Class clazz : serializableClasses )
-//            LOGGER.debug(clazz.toString());
-//
-//        List<Class<?>> pojoClasses = detectPojoClasses(serializableClasses);
-//
-//        LOGGER.info("Detected {} pojos:", pojoClasses.size());
-//        for( Class clazz : pojoClasses ) {
-//            LOGGER.debug(clazz.toString());
-//
-//        }
-//
-//
-//        for( Class clazz : pojoClasses ) {
-//            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".hive").replace(".","/")+"/";
-//            String pojoName = clazz.getSimpleName()+".hql";
-//            String pojoHive = renderPojo(clazz);
-//            writeFile(outDir+"/"+pojoPath+pojoName, pojoHive);
-//        }
+        if( mojoFailureException != null )
+            throw mojoFailureException;
+
+        return;
 
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pojo/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/site/markdown/index.md b/streams-plugins/streams-plugin-pojo/src/site/markdown/index.md
new file mode 100644
index 0000000..d1bd848
--- /dev/null
+++ b/streams-plugins/streams-plugin-pojo/src/site/markdown/index.md
@@ -0,0 +1,22 @@
+org.apache.streams.plugins:streams-plugin-pojo
+==============================================
+
+streams-plugin-pojo generates source files from json schemas suitable for writing Apache Streams components and libraries in Java.
+
+#### Usage
+
+Run within a module containing a src/main/jsonschema directory
+
+    mvn org.apache.streams.plugins:streams-plugin-pojo:0.3-incubating-SNAPSHOT:pojo
+
+Output will be placed in target/generated-sources/pojo by default
+
+#### Example
+
+[streams-plugin-pojo/pom.xml](streams-plugin-pojo/pom.xml "streams-plugin-pojo/pom.xml")
+
+#### Documentation
+
+[JavaDocs](apidocs/index.html "JavaDocs")
+
+###### Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorCLITest.java b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorCLITest.java
new file mode 100644
index 0000000..f808b28
--- /dev/null
+++ b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorCLITest.java
@@ -0,0 +1,43 @@
+package org.apache.streams.plugins.test;
+
+import com.google.common.collect.Lists;
+import com.google.common.io.Files;
+import org.apache.streams.plugins.StreamsPojoSourceGenerator;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.util.Collection;
+import java.util.List;
+
+import static org.apache.streams.plugins.test.StreamsPojoSourceGeneratorTest.javaFilter;
+
+/**
+ * Created by sblackmon on 5/5/16.
+ */
+public class StreamsPojoSourceGeneratorCLITest {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoSourceGeneratorTest.class);
+
+    @Test
+    public void testStreamsPojoSourceGeneratorCLI() throws Exception {
+
+        String sourceDirectory = "target/test-classes/streams-schemas";
+        String targetDirectory = "target/generated-sources/test-cli";
+
+        List<String> argsList = Lists.newArrayList(sourceDirectory, targetDirectory);
+        StreamsPojoSourceGenerator.main(argsList.toArray(new String[0]));
+
+        File testOutput = new File(targetDirectory);
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(javaFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() > 133 );
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java
index a99f059..1968d90 100644
--- a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java
+++ b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java
@@ -1,24 +1,25 @@
 package org.apache.streams.plugins.test;
 
 import com.google.common.collect.Lists;
+import com.google.common.io.Files;
 import junit.framework.TestCase;
 import org.apache.maven.it.Verifier;
 import org.apache.maven.it.util.ResourceExtractor;
-import org.apache.maven.plugin.testing.AbstractMojoTestCase;
-import org.apache.streams.plugins.StreamsPojoGenerationConfig;
-import org.apache.streams.plugins.StreamsPojoSourceGenerator;
-import org.apache.streams.plugins.StreamsPojoSourceGeneratorMojo;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.io.File;
-import java.io.FileFilter;
 import java.util.ArrayList;
+import java.util.Collection;
 import java.util.List;
 
+import static org.apache.streams.plugins.test.StreamsPojoSourceGeneratorTest.javaFilter;
+
 /**
- * Test that Activity beans are compatible with the example activities in the spec.
+ * Tests that streams-plugin-pojo running via maven can convert activity schemas into pojos
+ * which then compile.
  */
 public class StreamsPojoSourceGeneratorMojoTest extends TestCase {
 
@@ -30,12 +31,7 @@ public class StreamsPojoSourceGeneratorMojoTest extends TestCase {
         super.setUp();
     }
 
-    /**
-     * Tests that streams-plugin-pojo running via maven can convert activity schemas into pojos
-     * which then compile.
-     *
-     * @throws Exception
-     */
+
     @Test
     public void testStreamsPojoSourceGeneratorMojo() throws Exception {
 
@@ -56,41 +52,17 @@ public class StreamsPojoSourceGeneratorMojoTest extends TestCase {
         verifier.verifyErrorFreeLog();
 
         verifier.resetStreams();
-//
-//        File pom = getTestFile(  );
-//        assertNotNull( pom );
-//        assertTrue( pom.exists() );
-//
-//        StreamsPojoSourceGeneratorMojo myMojo = (StreamsPojoSourceGeneratorMojo)
-//                lookupMojo( "pojo", pom);
-//        assertNotNull( myMojo );
-//        myMojo.execute();
-//
-//        File testOutput = new File( "target/generated-sources/test-mojo");
-//        FileFilter javaFilter = new FileFilter() {
-//            @Override
-//            public boolean accept(File pathname) {
-//            if( pathname.getName().endsWith(".java") )
-//                return true;
-//            return false;
-//            }
-//        };
-//
-//        assert( testOutput != null );
-//        assert( testOutput.exists() == true );
-//        assert( testOutput.isDirectory() == true );
-//        assert( testOutput.listFiles(javaFilter).length == 11 );
-//        assert( new File(testOutput + "/traits").exists() == true );
-//        assert( new File(testOutput + "/traits").isDirectory() == true );
-//        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
-//        assert( new File(testOutput + "/objectTypes").exists() == true );
-//        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
-//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
-//        assert( new File(testO`utput + "/verbs").exists() == true );
-//        assert( new File(testOutput + "/verbs").isDirectory() == true );
-//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
+
+        File testOutput = new File(testDir.getAbsolutePath() + "/target/generated-sources/test-mojo");
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(javaFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() > 133 );
+
     }
 }
\ No newline at end of file


[24/53] [abbrv] incubator-streams git commit: refactoring, testing, documentation, CLI modes

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/objects/event.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/event.json b/streams-schemas/src/test/resources/objects/event.json
deleted file mode 100644
index ae1108e..0000000
--- a/streams-schemas/src/test/resources/objects/event.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
-    "objectType": "event",
-    "displayName": "Meeting with Joe",
-    "startTime": "2012-12-12T12:00:00Z",
-    "endTime: "2012-12-12T13:00:00Z",
-    "invited": {
-      "items": [
-        {"objectType": "person",
-         "displayName": "Joe"}
-      ]
-    },
-    "attending": {
-      "items": [
-        {"objectType": "person",
-         "displayName": "Joe"}
-      ]
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/objects/group.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/group.json b/streams-schemas/src/test/resources/objects/group.json
deleted file mode 100644
index 9721874..0000000
--- a/streams-schemas/src/test/resources/objects/group.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-  "objectType": "group",
-  "displayName": "My Work Group",
-  "members": {
-	"items": [
-	  {
-		"objectType": "person",
-		"displayName": "Laura"
-	  },
-	  {
-		"objectType": "person",
-		"displayName": "Mark"
-	  }
-	]
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/objects/issue.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/issue.json b/streams-schemas/src/test/resources/objects/issue.json
deleted file mode 100644
index 86bc6d2..0000000
--- a/streams-schemas/src/test/resources/objects/issue.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
-   "objectType": "issue",
-   "displayName": "Terms of Use Violation",
-   "url": "http://.../terms-of-use",
-   "types": [
-	 "http://example.org/codes/inappropriateMaterial",
-	 "http://example.org/codes/copyrightViolation"
-   ]
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/objects/note.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/note.json b/streams-schemas/src/test/resources/objects/note.json
deleted file mode 100644
index 15a4495..0000000
--- a/streams-schemas/src/test/resources/objects/note.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
-  "objectType": "note",
-  "displayName": "A note with a binary attachment",
-  "attachments": [
-	{
-	  "objectType": "binary",
-	  "data": "dGhpcyBpcyB1bmNvbXByZXNzZWQgZGF0YQo=",
-	  "md5": "827ae7e1ab45e4dd591d087c741e5770",
-	  "length": 25
-	}
-  ]
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/objects/permission.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/permission.json b/streams-schemas/src/test/resources/objects/permission.json
deleted file mode 100644
index 24b6fa2..0000000
--- a/streams-schemas/src/test/resources/objects/permission.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
-    "objectType": "permission",
-    "displayName": "Permission to Edit File: 2Q2014 Sales Forecast.xls",
-    "scope": {
-      "objectType": "file",
-      "displayName": "2Q2014 Sales Forecast.xls"
-    },
-    "actions": ["modify", "delete", "create"]
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/objects/place.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/place.json b/streams-schemas/src/test/resources/objects/place.json
deleted file mode 100644
index 8e454be..0000000
--- a/streams-schemas/src/test/resources/objects/place.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
-  "objectType": "place",
-  "displayName": "Some Random Location on Earth",
-  "position": {
-	"latitude": 34.34,
-	"longitude": -127.23,
-	"altitude": 100.05
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/objects/task.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/task.json b/streams-schemas/src/test/resources/objects/task.json
deleted file mode 100644
index f4878dc..0000000
--- a/streams-schemas/src/test/resources/objects/task.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
-    "objectType": "task",
-    "displayName": "James needs to read the spec",
-    "by": "2012-12-12T12:12:12Z",
-    "verb": "read",
-    "actor": {
-      "objectType": "person",
-      "displayName": "James"
-    },
-    "object": {
-      "objectType": "file",
-      "displayName": "A specification",
-      "url": "http://example.org/spec.html"
-    },
-    "required": true
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/test/resources/objects/video.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/video.json b/streams-schemas/src/test/resources/objects/video.json
deleted file mode 100644
index bc19e89..0000000
--- a/streams-schemas/src/test/resources/objects/video.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
-    "objectType": "video",
-    "displayName": "Cute little kittens",
-    "embedCode": "<video width="320" height="240" controls="controls">...</video>",
-    "stream": {
-      "url": "http://example.org/my_video.mpg"
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/pom.xml
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/pom.xml b/streams-schemas/streams-schema-activitystreams/pom.xml
new file mode 100644
index 0000000..500c272
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/pom.xml
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.apache.streams</groupId>
+        <artifactId>streams-schemas</artifactId>
+        <version>0.3-incubating-SNAPSHOT</version>
+    </parent>
+
+    <artifactId>streams-schema-activitystreams</artifactId>
+    <name>${project.artifactId}</name>
+
+    <description>Activity Streams schemas</description>
+
+    <build>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+            </resource>
+        </resources>
+        <testResources>
+            <testResource>
+                <directory>src/test/resources</directory>
+            </testResource>
+        </testResources>
+        <plugins>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>build-helper-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>add-source</id>
+                        <phase>generate-sources</phase>
+                        <goals>
+                            <goal>add-test-resource</goal>
+                        </goals>
+                        <configuration>
+                            <resources>
+                                <resource>
+                                    <directory>${project.basedir}/src/main/jsonschema</directory>
+                                </resource>
+                                <resource>
+                                    <directory>src/main/xmlschema</directory>
+                                </resource>
+                            </resources>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-jar-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>test-jar</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/activity.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/activity.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/activity.json
new file mode 100644
index 0000000..2edd759
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/activity.json
@@ -0,0 +1,108 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/activity.json#",
+    "type": "object",
+    "title": "activity",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "An activity construct recounts what an actor did to an object in the past. If there is no actor it simply describes the change.",
+    "additionalProperties": true,
+    "properties": {
+        "id": {
+            "type": "string",
+            "description": "Uniquely identifies each activity within the service",
+            "required": true
+        },
+        "actor": {
+            "type": "object",
+            "required": true,
+            "description": "Describes the entity that performed the activity. An activity MUST contain one actor property whose value is a single Object.",
+            "javaInterfaces": ["java.io.Serializable"],
+            "$ref": "./object.json"
+        },
+        "verb": {
+            "title": "verb",
+            "type": "string",
+            "default": "post",
+            "required": true,
+            "description": "Identifies the action that the activity describes. An activity MUST contain a verb property whose value is a JSON String that is non-empty and matches either the \"isegment-nz-nc\" or the \"IRI\" production in [RFC3987]. Note that the use of a relative reference other than a simple name is not allowed."
+        },
+        "object": {
+            "type": "object",
+            "required": true,
+            "description": "Describes the primary object of the activity. For instance, in the activity, \"John saved a movie to his wishlist\", the object of the activity is \"movie\". An activity SHOULD contain an object property whose value is a single Object. If the object property is not contained, the primary object of the activity MAY be implied by context.",
+            "$ref": "./object.json"
+        },
+        "target": {
+            "type": "object",
+            "description": "Describes the target of the activity. The precise meaning of the activity's target is dependent on the activities verb, but will often be the object the English preposition \"to\". For instance, in the activity, \"John saved a movie to his wishlist\", the target of the activity is \"wishlist\". The activity target MUST NOT be used to identity an indirect object that is not a target of the activity. An activity MAY contain a target property whose value is a single Object.",
+            "$ref": "./object.json"
+        },
+        "published": {
+            "type": "string",
+            "description": "The date and time at which the activity occurred. It is important to note that this is not necessarily the same as the time at which the activity was published. An activity MUST contain a postedTime property.",
+            "format": "date-time"
+        },
+        "updated": {
+            "type": "string",
+            "description": "The date and time at which a previously published activity has been modified. An Activity MAY contain an updatedTime property",
+            "format": "date-time"
+        },
+        "generator": {
+            "type": "object",
+            "description": "Describes the application that generated the activity. An activity MAY contain a generator property whose value is a single Object.",
+            "javaInterfaces": ["java.io.Serializable"],
+            "extends": {
+                "$ref": "./object.json"
+            }
+        },
+        "icon": {
+            "type": "object",
+            "description": "An IRI[RFC3987] identifying an image resource provides a visual representation of the activity, intended for human consumption. The image SHOULD have an aspect ratio of one (horizontal) to one (vertical) and SHOULD be suitable for presentation at a small size. An activity MAY have an icon property",
+            "javaInterfaces": ["java.io.Serializable"],
+            "extends": {
+                "$ref": "./media_link.json"
+            }
+        },
+        "provider": {
+            "type": "object",
+            "description": "Describes the application that published the activity. Note that this is not necessarily the same entity that generated the activity. An activity MAY contain a provider property whose value is a single Object",
+            "javaInterfaces": ["java.io.Serializable"],
+            "extends": {
+                "$ref": "./object.json"
+            }
+        },
+        "title": {
+            "type": "string",
+            "description": "Natural-language title or headline for the activity encoded as a single JSON String containing HTML markup. An activity MAY contain a title property",
+            "format": "html"
+        },
+        "content": {
+            "type": "string",
+            "description": "Natural-language description of the activity encoded as a single JSON String containing HTML markup. Visual elements such as thumbnail images MAY be included. An activity MAY contain a content property",
+            "format": "html"
+        },
+        "url": {
+            "type": "string",
+            "description": "An IRI [RFC3987] identifying a resource providing an HTML representation of the activity. An activity MAY contain a url property",
+            "format": "url"
+        },
+        "links": {
+            "type": "array",
+            "description": "Links between this object and other resources as defined in Web Linking",
+            "note": "Tell JSON schema team to not put links inside http://json-schema.org/hyper-schema#properties",
+            "items": {
+                "type": "string"
+            }
+        }
+    },
+    "links": [
+        {
+            "rel": "describedby",
+            "href": "./verbs/{verb}.json"
+        }
+    ]
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/collection.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/collection.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/collection.json
new file mode 100644
index 0000000..38f83e7
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/collection.json
@@ -0,0 +1,47 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/collection.json#",
+    "type": "object",
+    "title": "collection",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "A collection is a generic list of Objects of any object type. The objectType of each item in the collection MAY be omitted if the type of object can be established through context. The collection is used primarily as the root of an Activity Streams document, but can be used as the value of extension properties in a variety of situations. ",
+    "properties": {
+        "url": {
+            "type": "string",
+            "description": "An IRI [RFC3987] referencing a JSON document containing the full listing of objects in the collection."
+        },
+        "totalItems": {
+            "type": "integer",
+            "description": "Non-negative integer specifying the total number of activities within the stream. The Stream serialization MAY contain a count property."
+        },
+        "items": {
+            "type": "array",
+            "required": true,
+            "description": "An array containing a listing of Objects of any object type. If used in combination with the url property, the items array can be used to provide a subset of the objects that may be found in the resource identified by the url.",
+            "items": {
+                "type": "object",
+                "extends": {
+                    "$ref": "./object.json"
+                }
+            }
+        },
+        "links": {
+            "type": "array",
+            "optional": true,
+            "description": "Links between an this object and other resources as defined in Web Linking",
+            "extends": {
+                "$ref": "http://json-schema.org/links#properties"
+            }
+        }
+    },
+    "links": [
+        {
+            "rel": "describedby",
+            "href": "http://json-schema.org/schema"
+        }
+    ]
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/media_link.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/media_link.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/media_link.json
new file mode 100644
index 0000000..e7eece0
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/media_link.json
@@ -0,0 +1,34 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/media_link.json#",
+    "type": "object",
+    "title": "media_link",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "Visual representation of an object in the form of an image, video or embedded HTML fragments",
+    "properties": {
+        "duration": {
+            "title": "duration",
+            "type": "number",
+            "description": "A hint to the consumer about the length, in seconds, of the media resource identified by the url property. A media link MAY contain a \"duration\" property when the target resource is a time-based media item such as an audio or video."
+        },
+        "height": {
+            "title": "height",
+            "type": "integer",
+            "description": "A hint to the consumer about the height, in pixels, of the media resource identified by the url property. A media link MAY contain a height property when the target resource is a visual media item such as an image, video or embeddable HTML page."
+        },
+        "width": {
+            "title": "width",
+            "type": "integer",
+            "description": "A hint to the consumer about the width, in pixels, of the media resource identified by the url property. A media link MAY contain a width property when the target resource is a visual media item such as an image, video or embeddable HTML page."
+        },
+        "url": {
+            "type": "string",
+            "required": true,
+            "description": "The IRI of the media resource being linked. A media link MUST have a url property."
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/object.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/object.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/object.json
new file mode 100644
index 0000000..94f6719
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/object.json
@@ -0,0 +1,98 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/object.json#",
+    "type": "object",
+    "title": "object",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "Basic object on the web. The only required property is the id",
+    "properties": {
+        "id": {
+            "type": "string",
+            "description": "Provides a permanent, universally unique identifier for the object in the form of an absolute IRI [RFC3987]. An object SHOULD contain a single id property. If an object does not contain an id property, consumers MAY use the value of the url property as a less-reliable, non-unique identifier.",
+            "required": true
+        },
+        "image": {
+            "format": "image",
+            "type": "object",
+            "description": "Description of a resource providing a visual representation of the object, intended for human consumption. An object MAY contain an image property whose value is a Media Link.",
+            "extends": {
+                "$ref": "./media_link.json"
+            }
+        },
+        "displayName": {
+            "type": "string",
+            "description": "A natural-language, human-readable and plain-text name for the object. HTML markup MUST NOT be included. An object MAY contain a displayName property. If the object does not specify an objectType property, the object SHOULD specify a displayName"
+        },
+        "summary": {
+            "type": "string",
+            "description": "Natural-language summary of the object encoded as a single JSON String containing HTML markup. Visual elements such as thumbnail images MAY be included. An activity MAY contain a summary property"
+        },
+        "content": {
+            "type": "string",
+            "description": "Natural-language description of the object encoded as a single JSON String containing HTML markup. Visual elements such as thumbnail images MAY be included. An object MAY contain a content property"
+        },
+        "url": {
+            "type": "string",
+            "format": "url",
+            "description": "An IRI [RFC3987] identifying a resource providing an HTML representation of the object. An object MAY contain a url property"
+        },
+        "objectType": {
+            "type": "string",
+            "description": "Identifies the type of object. An object MAY contain an objectType property whose value is a JSON String that is non-empty and matches either the \"isegment-nz-nc\" or the \"IRI\" production in [RFC3987]. Note that the use of a relative reference other than a simple name is not allowed. If no objectType property is contained, the object has no specific type."
+        },
+        "author": {
+            "type": "object",
+            "description": "Describes the entity that created or authored the object. An object MAY contain a single author property whose value is an Object of any type. Note that the author field identifies the entity that created the object and does not necessarily identify the entity that published the object. For instance, it may be the case that an object created by one person is posted and published to a system by an entirely different entity",
+            "javaInterfaces": ["java.io.Serializable"],
+            "extends": {
+                "$ref": "./object.json"
+            }
+        },
+        "published": {
+            "type": "string",
+            "description": "[RFC3339] date-time. The date and time at which the object was published. An object MAY contain a published property",
+            "format": "date-time"
+        },
+        "updated": {
+            "type": "string",
+            "description": "[RFC3339] date-time. The date and time at which a previously published object has been modified. An Object MAY contain an updated property.",
+            "format": "date-time"
+        },
+        "attachments": {
+            "title": "Related objects",
+            "description": "A collection of one or more additional, associated objects, similar to the concept of attached files in an email message. An object MAY have an attachedObjects property whose value is a JSON Array of Objects.",
+            "type": "array",
+            "items": {
+                "type": "object",
+                "javaType": "org.apache.streams.pojo.json.Attachment",
+                "javaInterfaces": ["java.io.Serializable"],
+                "$ref": "./object.json"
+            }
+        },
+        "upstreamDuplicates": {
+            "type": "array",
+            "description": "A JSON Array of one or more absolute IRI's [RFC3987] identifying objects that duplicate this object's content. An object SHOULD contain an upstreamDuplicates property when a publisher is knowingly duplicating with a new ID the content from another object. This MAY be used as a hint for consumers to use when resolving duplicates between objects received from different sources",
+            "items": {
+                "type": "string"
+            }
+        },
+        "downstreamDuplicates": {
+            "type": "array",
+            "description": "A JSON Array of one or more absolute IRI's [RFC3987] identifying objects that duplicate this object's content. An object SHOULD contain a downstreamDuplicates property when there are known objects, possibly in a different system, that duplicate the content in this object. This MAY be used as a hint for consumers to use when resolving duplicates between objects received from different sources.",
+            "items": {
+                "type": "string"
+            }
+        }
+    },
+    "additionalProperties": true,
+    "links": [
+        {
+            "rel": "describedby",
+            "href": "./objectType/{objectType}.json"
+        }
+    ]
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/alert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/alert.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/alert.json
new file mode 100644
index 0000000..0fa4d60
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/alert.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/alert.json#",
+    "type": "object",
+    "title": "alert",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "alert"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/application.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/application.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/application.json
new file mode 100644
index 0000000..ea3219d
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/application.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/application.json#",
+    "type": "object",
+    "title": "application",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "application"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/article.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/article.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/article.json
new file mode 100644
index 0000000..2260532
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/article.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/article.json#",
+    "type": "object",
+    "title": "article",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "article"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/audio.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/audio.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/audio.json
new file mode 100644
index 0000000..1e94405
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/audio.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/audio.json#",
+    "type": "object",
+    "title": "audio",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "audio"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/badge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/badge.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/badge.json
new file mode 100644
index 0000000..08af422
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/badge.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/badge.json#",
+    "type": "object",
+    "title": "badge",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "badge"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/binary.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/binary.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/binary.json
new file mode 100644
index 0000000..8723f51
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/binary.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/binary.json#",
+    "type": "object",
+    "title": "binary",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "binary"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/bookmark.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/bookmark.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/bookmark.json
new file mode 100644
index 0000000..808555f
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/bookmark.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/badge.json#",
+    "type": "object",
+    "title": "bookmark",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "bookmark"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/comment.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/comment.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/comment.json
new file mode 100644
index 0000000..1ec2dc2
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/comment.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/comment.json#",
+    "type": "object",
+    "title": "comment",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "comment"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/device.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/device.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/device.json
new file mode 100644
index 0000000..74dfb39
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/device.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/device.json#",
+    "type": "object",
+    "title": "device",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "device"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/event.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/event.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/event.json
new file mode 100644
index 0000000..f6e5fb6
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/event.json
@@ -0,0 +1,51 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/event.json#",
+    "type": "object",
+    "title": "event",
+    "description": "xCal fromat for vevent",
+    "extends": [
+        {
+            "$ref": "../object.json"
+        },
+        {
+            "$ref": "http://www.json-schema.org/calendar"
+        }
+    ],
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "event"
+        },
+        "attendedBy": {
+            "type": "../collection.json"
+        },
+        "attending": {
+          "type": "../collection.json"
+        },
+        "endTime": {
+          "type": "string",
+          "format": "date-time"
+        },
+        "invited": {
+          "type": "../collection.json"
+        },
+        "maybeAttending": {
+          "type": "../collection.json"
+        },
+        "notAttendedBy": {
+          "type": "../collection.json"
+        },
+        "notAttending": {
+          "type": "../collection.json"
+        },
+        "startTime": {
+          "type": "string",
+          "format": "date-time"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/file.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/file.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/file.json
new file mode 100644
index 0000000..50ec239
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/file.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/file.json#",
+    "type": "object",
+    "title": "file",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "file"
+        },
+        "fileUrl": {
+          "type": "string"
+        },
+        "mimeType": {
+          "type": "string"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/folder.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/folder.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/folder.json
new file mode 100644
index 0000000..35592c1
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/folder.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/folder.json#",
+    "type": "object",
+    "title": "folder",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "folder"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/game.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/game.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/game.json
new file mode 100644
index 0000000..ca761ed
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/game.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/game.json#",
+    "type": "object",
+    "title": "game",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "game"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/group.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/group.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/group.json
new file mode 100644
index 0000000..8623922
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/group.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/group.json#",
+    "type": "object",
+    "title": "group",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "group"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/image.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/image.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/image.json
new file mode 100644
index 0000000..7eca770
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/image.json
@@ -0,0 +1,22 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/image.json#",
+    "type": "object",
+    "title": "image",
+    "extends": {
+        "$ref": "../media_link.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "image"
+        },
+        "fullImage": {
+          "type": "string"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/issue.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/issue.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/issue.json
new file mode 100644
index 0000000..29f2fad
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/issue.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/issue.json#",
+    "type": "object",
+    "title": "issue",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "issue"
+        },
+        "types": {
+          "type": "array",
+          "items": {
+            "type": "string"
+          }
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/job.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/job.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/job.json
new file mode 100644
index 0000000..b832f16
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/job.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/job.json#",
+    "type": "object",
+    "title": "job",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "job"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/list.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/list.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/list.json
new file mode 100644
index 0000000..c93a5e8
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/list.json
@@ -0,0 +1,28 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/list.json#",
+    "type": "object",
+    "title": "list",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "list"
+        },
+        "items": {
+            "type": "array",
+            "items": {
+                "type": "object",
+                "properties": {
+                    "$ref": "../object.json"
+                }
+            }
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/note.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/note.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/note.json
new file mode 100644
index 0000000..63445d5
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/note.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/note.json#",
+    "type": "object",
+    "title": "note",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "note"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/offer.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/offer.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/offer.json
new file mode 100644
index 0000000..6d4b5f2
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/offer.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/offer.json#",
+    "type": "object",
+    "title": "offer",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "offer"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/organization.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/organization.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/organization.json
new file mode 100644
index 0000000..7ee7513
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/organization.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/organization.json#",
+    "type": "object",
+    "title": "organization",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "organization"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/page.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/page.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/page.json
new file mode 100644
index 0000000..4f18fcf
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/page.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/page.json#",
+    "type": "object",
+    "title": "page",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "page"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/permission.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/permission.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/permission.json
new file mode 100644
index 0000000..2a156dc
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/permission.json
@@ -0,0 +1,36 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/permission.json#",
+    "type": "object",
+    "title": "permission",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "permission"
+        },
+        "scope": {
+            "type": "object",
+            "extends": {
+              "$ref": "../object.json"
+            }
+        },
+        "actions": {
+            "type": "array",
+            "items": {
+               "type": "string",
+               "enumeration": [
+                  "create",
+                  "delete",
+                  "modify"
+               ]
+            }
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/person.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/person.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/person.json
new file mode 100644
index 0000000..6855634
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/person.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/person.json#",
+    "type": "object",
+    "title": "person",
+    "description": "vCard Format. Does not match PoCO",
+    "extends": [
+        {
+            "$ref": "../object.json"
+        },
+        {
+            "$ref": "http://www.json-schema.org/card"
+        }
+    ],
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "person"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/photo-album.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/photo-album.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/photo-album.json
new file mode 100644
index 0000000..1ad4b18
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/photo-album.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/photo-album.json#",
+    "type": "object",
+    "title": "article",
+    "extends": {
+        "$ref": "../objectTypes/list.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "photo-album"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/photo.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/photo.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/photo.json
new file mode 100644
index 0000000..ab44aad
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/photo.json
@@ -0,0 +1,23 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/photo.json#",
+    "type": "object",
+    "title": "photo",
+    "extends": {
+        "$ref": "../objectTypes/file.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "photo"
+        },
+        "displayName": {
+            "type": "string",
+            "default": "a photo"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/place.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/place.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/place.json
new file mode 100644
index 0000000..02d5fe4
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/place.json
@@ -0,0 +1,39 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/place.json#",
+    "type": "object",
+    "title": "place",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "place"
+        },
+        "address": {
+          "type": "object",
+          "extends": {
+            "$ref": "http://www.json-schema.org/address"
+          }
+        },
+        "position": {
+          "type": "object",
+          "properties": {
+            "altitude": {
+              "type": "number"
+            },
+            "latitude": {
+              "type": "number"
+            },
+            "longitude": {
+              "type": "number"
+            }
+          }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/playlist.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/playlist.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/playlist.json
new file mode 100644
index 0000000..d40b109
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/playlist.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/playlist.json#",
+    "type": "object",
+    "title": "playlist",
+    "extends": {
+        "$ref": "../objectTypes/list.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "playlist"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/process.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/process.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/process.json
new file mode 100644
index 0000000..343ff38
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/process.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/process.json#",
+    "type": "object",
+    "title": "process",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "process"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/product.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/product.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/product.json
new file mode 100644
index 0000000..7614cb9
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/product.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/product.json#",
+    "type": "object",
+    "title": "product",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "product"
+        },
+        "fullImage": {
+            "type": "object",
+            "extends": {
+              "$ref": "../media_link.json"
+            }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/property.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/property.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/property.json
new file mode 100644
index 0000000..ff2e73b
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/property.json
@@ -0,0 +1,48 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/property.json#",
+    "type": "object",
+    "title": "property",
+    "description": "A property describes name, path and value. Can be used with delete, update or post verbs",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "property"
+        },
+        "displayName": {
+            "type": "string",
+            "description": "The human readable name of the property in the appropriate language",
+            "optional": true
+        },
+        "path": {
+            "type": "string",
+            "description": "dot delimited path to the property in the target. Ex: streetAddress"
+        }
+    },
+    "example": {
+        "actor": {
+            "id": 1212,
+            "displayName": "Peter"
+        },
+        "verb": "update",
+        "time": "2010-08-02T15:29:00Z",
+        "object": {
+            "objectType": "property",
+            "displayName": "street address",
+            "path": "streetAddress",
+            "content": "234 Amazing St"
+        },
+        "target": {
+            "id": 12121,
+            "time": "2010-08-02T15:29:00Z",
+            "displayName": "Peter's House"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/question.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/question.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/question.json
new file mode 100644
index 0000000..9383caf
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/question.json
@@ -0,0 +1,28 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/question.json#",
+    "type": "object",
+    "title": "question",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "question"
+        },
+        "options": {
+            "type": "array",
+            "items": {
+               "type": "object",
+                "extends": {
+                  "$ref": "../object.json"
+                }
+            }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/review.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/review.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/review.json
new file mode 100644
index 0000000..5b5ab58
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/review.json
@@ -0,0 +1,22 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/review.json#",
+    "type": "object",
+    "title": "review",
+    "extends": {
+        "$ref": "../objectTypes/article.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "review"
+        },
+        "rating": {
+           "type": "number"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/role.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/role.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/role.json
new file mode 100644
index 0000000..0521f93
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/role.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/role.json#",
+    "type": "object",
+    "title": "role",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "role"
+        },
+        "members": {
+            "type": "object",
+            "extends": {
+              "$ref": "../collection.json"
+            }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/service.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/service.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/service.json
new file mode 100644
index 0000000..ff89fae
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/service.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/service.json#",
+    "type": "object",
+    "title": "service",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "service"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/song.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/song.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/song.json
new file mode 100644
index 0000000..2b89d4b
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/song.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/song.json#",
+    "type": "object",
+    "title": "song",
+    "extends": {
+        "$ref": "../objectTypes/audio.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "song"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/status.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/status.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/status.json
new file mode 100644
index 0000000..ac7a844
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/status.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/status.json#",
+    "type": "object",
+    "title": "status",
+    "extends": {
+        "$ref": "../objectTypes/note.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "song"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/task.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/task.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/task.json
new file mode 100644
index 0000000..2c8a3ea
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/task.json
@@ -0,0 +1,40 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/task.json#",
+    "type": "object",
+    "title": "task",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "task"
+        },
+        "by": {
+          "type": "string",
+          "format": "date-time"
+        },
+        "prerequisites": {
+          "type": "array",
+          "items": {
+            "type": "object",
+            "$ref": "../activity.json"
+          }
+        },
+        "required": {
+          "type": "boolean"
+        },
+        "supersedes": {
+          "type": "array",
+          "items": {
+            "type": "object",
+            "$ref": "../activity.json"
+          }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/team.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/team.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/team.json
new file mode 100644
index 0000000..f4f7494
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/team.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/team.json#",
+    "type": "object",
+    "title": "team",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "team"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/video.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/video.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/video.json
new file mode 100644
index 0000000..88a528d
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/objectTypes/video.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/video.json#",
+    "type": "object",
+    "title": "video",
+    "extends": {
+        "$ref": "../objectTypes/file.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "video"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/accept.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/accept.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/accept.json
new file mode 100644
index 0000000..04efee5
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/accept.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/accept.json#",
+    "type": "object",
+    "title": "Accept",
+    "description": "Indicates that that the actor has accepted the object. For instance, a person accepting an award, or accepting an assignment.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "accept"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} accepted {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/access.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/access.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/access.json
new file mode 100644
index 0000000..eb08184
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/access.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/access.json#",
+    "type": "object",
+    "title": "Access",
+    "description": "Indicates that the actor has accessed the object. For instance, a person accessing a room, or accessing a file.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "access"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} accessed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/acknowledge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/acknowledge.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/acknowledge.json
new file mode 100644
index 0000000..aae6209
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/acknowledge.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/acknowledge.json#",
+    "type": "object",
+    "title": "Acknowledge",
+    "description": "Indicates that the actor has acknowledged the object. This effectively signals that the actor is aware of the object's existence.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "acknowledge"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} acknowledge {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/add.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/add.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/add.json
new file mode 100644
index 0000000..4d99411
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/add.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/add.json#",
+    "type": "object",
+    "title": "Add",
+    "description": "Indicates that the actor has added the object to the target. For instance, adding a photo to an album.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "add"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} added {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/agree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/agree.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/agree.json
new file mode 100644
index 0000000..9e79c2a
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/agree.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/agree.json#",
+    "type": "object",
+    "title": "Agree",
+    "description": "Indicates that the actor agrees with the object. For example, a person agreeing with an argument, or expressing agreement with a particular issue.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "agree"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} agrees with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/append.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/append.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/append.json
new file mode 100644
index 0000000..60e1a82
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/append.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/append.json#",
+    "type": "object",
+    "title": "Append",
+    "description": "Indicates that the actor has appended the object to the target. For instance, a person appending a new record to a database.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "append"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} append {object.displayName} to {target.displayName}"
+        }
+    }
+}



[29/53] [abbrv] incubator-streams git commit: refactoring, testing, documentation, CLI modes

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseGenerationConfig.java b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseGenerationConfig.java
index 2612ec2..3972a54 100644
--- a/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseGenerationConfig.java
+++ b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseGenerationConfig.java
@@ -1,6 +1,6 @@
 package org.apache.streams.plugins.hbase;
 
-import org.apache.streams.schema.GenerationConfig;
+import org.apache.streams.util.schema.GenerationConfig;
 import org.jsonschema2pojo.DefaultGenerationConfig;
 import org.jsonschema2pojo.util.URLUtil;
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGenerator.java b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGenerator.java
index 649bdd9..71a8705 100644
--- a/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGenerator.java
+++ b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGenerator.java
@@ -3,21 +3,18 @@ package org.apache.streams.plugins.hbase;
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.node.ObjectNode;
 import com.google.common.base.Joiner;
-import com.google.common.base.Optional;
-import com.google.common.base.Preconditions;
-import com.google.common.base.Strings;
 import com.google.common.collect.Lists;
-import org.apache.streams.schema.FieldType;
-import org.apache.streams.schema.FieldUtil;
-import org.apache.streams.schema.GenerationConfig;
-import org.apache.streams.schema.Schema;
-import org.apache.streams.schema.SchemaStore;
+import org.apache.streams.util.schema.FieldType;
+import org.apache.streams.util.schema.FieldUtil;
+import org.apache.streams.util.schema.GenerationConfig;
+import org.apache.streams.util.schema.Schema;
+import org.apache.streams.util.schema.SchemaStore;
+import org.apache.streams.util.schema.SchemaStoreImpl;
 import org.jsonschema2pojo.util.URLUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.io.File;
-import java.net.URI;
 import java.net.URL;
 import java.util.Iterator;
 import java.util.LinkedList;
@@ -25,11 +22,11 @@ import java.util.List;
 import java.util.Map;
 
 import static com.google.common.base.Preconditions.checkNotNull;
-import static org.apache.streams.schema.FileUtil.dropExtension;
-import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
-import static org.apache.streams.schema.FileUtil.resolveRecursive;
-import static org.apache.streams.schema.FileUtil.swapExtension;
-import static org.apache.streams.schema.FileUtil.writeFile;
+import static org.apache.streams.util.schema.FileUtil.dropExtension;
+import static org.apache.streams.util.schema.FileUtil.dropSourcePathPrefix;
+import static org.apache.streams.util.schema.FileUtil.resolveRecursive;
+import static org.apache.streams.util.schema.FileUtil.swapExtension;
+import static org.apache.streams.util.schema.FileUtil.writeFile;
 
 /**
  * Created by sblackmon on 5/3/16.
@@ -42,7 +39,7 @@ public class StreamsHbaseResourceGenerator implements Runnable {
 
     private StreamsHbaseGenerationConfig config;
 
-    private SchemaStore schemaStore = new SchemaStore();
+    private SchemaStore schemaStore = new SchemaStoreImpl();
 
     private int currentDepth = 0;
 
@@ -60,17 +57,9 @@ public class StreamsHbaseResourceGenerator implements Runnable {
         config.setSourceDirectory(sourceDirectory);
         config.setTargetDirectory(targetDirectory);
 
-        StreamsHbaseResourceGenerator StreamsHbaseResourceGenerator = new StreamsHbaseResourceGenerator(config);
-        Thread thread = new Thread(StreamsHbaseResourceGenerator);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
-        return;
+        StreamsHbaseResourceGenerator streamsHbaseResourceGenerator = new StreamsHbaseResourceGenerator(config);
+        streamsHbaseResourceGenerator.run();
+
     }
 
     public StreamsHbaseResourceGenerator(StreamsHbaseGenerationConfig config) {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGeneratorMojo.java b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGeneratorMojo.java
index 0db68f0..6bad40b 100644
--- a/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGeneratorMojo.java
@@ -15,10 +15,10 @@ import org.slf4j.LoggerFactory;
 import java.io.File;
 import java.util.List;
 
-@Mojo(  name = "hbase",
+@Mojo(  name = "generate-resources",
         defaultPhase = LifecyclePhase.GENERATE_RESOURCES
 )
-@Execute(   goal = "hbase",
+@Execute(   goal = "generate-resources",
             phase = LifecyclePhase.GENERATE_RESOURCES
 )
 public class StreamsHbaseResourceGeneratorMojo extends AbstractMojo {
@@ -64,30 +64,8 @@ public class StreamsHbaseResourceGeneratorMojo extends AbstractMojo {
         config.setTargetDirectory(targetDirectory);
 
         StreamsHbaseResourceGenerator streamsHbaseResourceGenerator = new StreamsHbaseResourceGenerator(config);
+        streamsHbaseResourceGenerator.run();
 
-        Thread.UncaughtExceptionHandler h = new Thread.UncaughtExceptionHandler() {
-            public void uncaughtException(Thread th, Throwable ex) {
-                LOGGER.error("Exception", ex);
-                mojoFailureException = new MojoFailureException("Exception", ex);
-            }
-        };
-        Thread.setDefaultUncaughtExceptionHandler(h);
-        Thread thread = new Thread(streamsHbaseResourceGenerator);
-        thread.setUncaughtExceptionHandler(h);
-        try {
-            thread.start();
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-            mojoFailureException = new MojoFailureException("Exception", e);
-        }
-
-        if( mojoFailureException != null )
-            throw mojoFailureException;
-
-        return;
     }
 
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hbase/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/site/markdown/index.md b/streams-plugins/streams-plugin-hbase/src/site/markdown/index.md
index 858cb85..0a0c308 100644
--- a/streams-plugins/streams-plugin-hbase/src/site/markdown/index.md
+++ b/streams-plugins/streams-plugin-hbase/src/site/markdown/index.md
@@ -3,17 +3,35 @@ org.apache.streams.plugins:streams-plugin-hbase
 
 streams-plugin-hbase generates resources from json schemas to assist with indexing of json data using Apache HBase.
 
-#### Usage
+### Usage
+
+Output will be placed in target/generated-resources/hbase by default
+
+[streams-plugin-hbase/pom.xml](streams-plugin-hbase/pom.xml "streams-plugin-hbase/pom.xml")
+
+##### Maven
 
 Run within a module containing a src/main/jsonschema directory
 
     mvn org.apache.streams.plugins:streams-plugin-hbase:0.3-incubating-SNAPSHOT:hbase
 
-Output will be placed in target/generated-resources/hive by default
+##### SDK
 
-#### Example
+Embed within your own java code
 
-[streams-plugin-hbase/pom.xml](streams-plugin-hbase/pom.xml "streams-plugin-hbase/pom.xml")
+    StreamsHbaseGenerationConfig config = new StreamsHbaseGenerationConfig();
+    config.setSourceDirectory("src/main/jsonschema");
+    config.setTargetDirectory("target/generated-resources");
+    StreamsHbaseResourceGenerator generator = new StreamsHbaseResourceGenerator(config);
+    generator.run();
+
+##### CLI
+ 
+Run from CLI without Maven
+
+    java -jar streams-plugin-hbase-jar-with-dependencies.jar StreamsHbaseResourceGenerator src/main/jsonschema target/generated-resources
+
+#### Example
 
 #### Documentation
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorCLITest.java
index 290d601..24eba24 100644
--- a/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorCLITest.java
+++ b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorCLITest.java
@@ -21,7 +21,7 @@ public class StreamsHbaseResourceGeneratorCLITest {
     @Test
     public void testStreamsHiveResourceGeneratorCLI() throws Exception {
 
-        String sourceDirectory = "target/test-classes/streams-schemas";
+        String sourceDirectory = "target/test-classes/streams-schema-activitystreams";
         String targetDirectory = "target/generated-resources/hbase-cli";
 
         List<String> argsList = Lists.newArrayList(sourceDirectory, targetDirectory);

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorMojoTest.java
index 6293021..fc8c77a 100644
--- a/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorMojoTest.java
+++ b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorMojoTest.java
@@ -51,7 +51,7 @@ public class StreamsHbaseResourceGeneratorMojoTest extends TestCase {
 
         verifier.resetStreams();
 
-        File testOutput = new File(testDir.getAbsolutePath() + "/target/generated-resources/test-mojo");
+        File testOutput = new File(testDir.getAbsolutePath() + "/target/generated-resources/hbase-mojo");
 
         assert( testOutput != null );
         assert( testOutput.exists() == true );

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorTest.java b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorTest.java
index 02b0214..91a1a05 100644
--- a/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorTest.java
@@ -8,7 +8,6 @@ import org.apache.commons.io.FileUtils;
 import org.apache.streams.plugins.hbase.StreamsHbaseGenerationConfig;
 import org.apache.streams.plugins.hbase.StreamsHbaseResourceGenerator;
 import org.junit.Assert;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -18,7 +17,7 @@ import java.io.File;
 import java.util.Collection;
 import java.util.Iterator;
 
-import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
+import static org.apache.streams.util.schema.FileUtil.dropSourcePathPrefix;
 
 /**
  * Test that Activity beans are compatible with the example activities in the spec.
@@ -46,11 +45,11 @@ public class StreamsHbaseResourceGeneratorTest {
 
         StreamsHbaseGenerationConfig config = new StreamsHbaseGenerationConfig();
 
-        String sourceDirectory = "target/test-classes/streams-schemas";
+        String sourceDirectory = "target/test-classes/streams-schema-activitystreams";
 
         config.setSourceDirectory(sourceDirectory);
 
-        config.setTargetDirectory("target/generated-resources/test");
+        config.setTargetDirectory("target/generated-resources/hbase");
 
         config.setExclusions(Sets.newHashSet("attachments"));
 
@@ -58,19 +57,10 @@ public class StreamsHbaseResourceGeneratorTest {
         config.setMaxDepth(2);
 
         StreamsHbaseResourceGenerator streamsHbaseResourceGenerator = new StreamsHbaseResourceGenerator(config);
-        Thread thread = new Thread(streamsHbaseResourceGenerator);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
+        streamsHbaseResourceGenerator.run();
 
         File testOutput = config.getTargetDirectory();
 
-
         assert( testOutput != null );
         assert( testOutput.exists() == true );
         assert( testOutput.isDirectory() == true );
@@ -108,18 +98,5 @@ public class StreamsHbaseResourceGeneratorTest {
             Assert.fail();
         }
 
-
-//        assert( new File(testOutput + "/traits").exists() == true );
-//        assert( new File(testOutput + "/traits").isDirectory() == true );
-//        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
-//        assert( new File(testOutput + "/objectTypes").exists() == true );
-//        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
-//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
-//        assert( new File(testOutput + "/verbs").exists() == true );
-//        assert( new File(testOutput + "/verbs").isDirectory() == true );
-//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml b/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml
index 9aa7d8d..a3fbeeb 100644
--- a/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml
+++ b/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml
@@ -18,9 +18,10 @@
         </dependency>
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-schemas</artifactId>
+            <artifactId>streams-schema-activitystreams</artifactId>
             <version>${project.version}</version>
             <scope>test</scope>
+            <type>test-jar</type>
         </dependency>
     </dependencies>
 
@@ -32,20 +33,20 @@
                 <version>0.3-incubating-SNAPSHOT</version>
                 <configuration>
                     <sourcePaths>
-                        <sourcePath>target/test-classes/streams-schemas/activity.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/collection.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/media_link.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/object.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/objectTypes</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/verbs</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/activity.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/collection.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/media_link.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/object.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/objectTypes</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/verbs</sourcePath>
                     </sourcePaths>
-                    <targetDirectory>target/generated-resources/test-mojo</targetDirectory>
+                    <targetDirectory>target/generated-resources/hbase-mojo</targetDirectory>
                     <columnFamily>cf</columnFamily>
                 </configuration>
                 <executions>
                     <execution>
                         <goals>
-                            <goal>hbase</goal>
+                            <goal>generate-resources</goal>
                         </goals>
                     </execution>
                 </executions>
@@ -56,9 +57,9 @@
                 <version>2.10</version>
                 <configuration>
                     <includes>**/*.json</includes>
-                    <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                    <outputDirectory>${project.build.directory}/test-classes/streams-schema-activitystreams</outputDirectory>
                     <includeGroupIds>org.apache.streams</includeGroupIds>
-                    <includeArtifactIds>streams-schemas</includeArtifactIds>
+                    <includeArtifactIds>streams-schema-activitystreams</includeArtifactIds>
                     <includeTypes>jar,test-jar</includeTypes>
                 </configuration>
                 <executions>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hive/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/pom.xml b/streams-plugins/streams-plugin-hive/pom.xml
index 515314a..38c69c1 100644
--- a/streams-plugins/streams-plugin-hive/pom.xml
+++ b/streams-plugins/streams-plugin-hive/pom.xml
@@ -54,10 +54,17 @@
         </dependency>
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-schemas</artifactId>
+            <artifactId>streams-util</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schema-activitystreams</artifactId>
+            <version>${project.version}</version>
+            <type>test-jar</type>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
             <groupId>com.google.guava</groupId>
             <artifactId>guava</artifactId>
         </dependency>
@@ -230,9 +237,9 @@
                         </goals>
                         <configuration>
                             <includeGroupIds>org.apache.streams</includeGroupIds>
-                            <includeArtifactIds>streams-schemas</includeArtifactIds>
+                            <includeArtifactIds>streams-schema-activitystreams</includeArtifactIds>
                             <includes>**/*.json</includes>
-                            <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                            <outputDirectory>${project.build.directory}/test-classes/streams-schema-activitystreams</outputDirectory>
                         </configuration>
                     </execution>
                 </executions>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveGenerationConfig.java b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveGenerationConfig.java
index 7e3bf35..f957757 100644
--- a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveGenerationConfig.java
+++ b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveGenerationConfig.java
@@ -1,11 +1,10 @@
 package org.apache.streams.plugins.hive;
 
-import org.apache.streams.schema.GenerationConfig;
+import org.apache.streams.util.schema.GenerationConfig;
 import org.jsonschema2pojo.DefaultGenerationConfig;
 import org.jsonschema2pojo.util.URLUtil;
 
 import java.io.File;
-import java.io.FileFilter;
 import java.net.URL;
 import java.util.ArrayList;
 import java.util.Collections;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGenerator.java b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGenerator.java
index c09f7dd..60c59ca 100644
--- a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGenerator.java
+++ b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGenerator.java
@@ -1,33 +1,29 @@
 package org.apache.streams.plugins.hive;
 
-import com.fasterxml.jackson.core.JsonFactory;
 import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.node.JsonNodeFactory;
 import com.fasterxml.jackson.databind.node.ObjectNode;
 import com.google.common.base.Joiner;
 import com.google.common.base.Preconditions;
 import com.google.common.base.Strings;
 import com.google.common.collect.Lists;
-import org.apache.streams.schema.FieldType;
-import org.apache.streams.schema.FieldUtil;
-import org.apache.streams.schema.FileUtil;
-import org.apache.streams.schema.GenerationConfig;
-import org.apache.streams.schema.Schema;
-import org.apache.streams.schema.SchemaStore;
-import org.apache.streams.schema.SchemaUtil;
-import org.apache.streams.schema.URIUtil;
+import org.apache.streams.util.schema.FieldType;
+import org.apache.streams.util.schema.FieldUtil;
+import org.apache.streams.util.schema.FileUtil;
+import org.apache.streams.util.schema.GenerationConfig;
+import org.apache.streams.util.schema.Schema;
+import org.apache.streams.util.schema.SchemaStore;
+import org.apache.streams.util.schema.SchemaStoreImpl;
 import org.jsonschema2pojo.util.URLUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.io.File;
-import java.net.URI;
 import java.net.URL;
 import java.util.*;
 
 import static com.google.common.base.Preconditions.checkNotNull;
 import static org.apache.commons.lang3.StringUtils.defaultString;
-import static org.apache.streams.schema.FileUtil.*;
+import static org.apache.streams.util.schema.FileUtil.*;
 
 /**
  * Generates hive table definitions for using org.openx.data.jsonserde.JsonSerDe on new-line delimited json documents.
@@ -42,7 +38,7 @@ public class StreamsHiveResourceGenerator implements Runnable {
 
     private StreamsHiveGenerationConfig config;
 
-    private SchemaStore schemaStore = new SchemaStore();
+    private SchemaStore schemaStore = new SchemaStoreImpl();
 
     private int currentDepth = 0;
 
@@ -60,17 +56,8 @@ public class StreamsHiveResourceGenerator implements Runnable {
         config.setSourceDirectory(sourceDirectory);
         config.setTargetDirectory(targetDirectory);
 
-        StreamsHiveResourceGenerator streamsPojoSourceGenerator = new StreamsHiveResourceGenerator(config);
-        Thread thread = new Thread(streamsPojoSourceGenerator);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
-        return;
+        StreamsHiveResourceGenerator streamsHiveResourceGenerator = new StreamsHiveResourceGenerator(config);
+        streamsHiveResourceGenerator.run();
     }
 
     public StreamsHiveResourceGenerator(StreamsHiveGenerationConfig config) {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGeneratorMojo.java b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGeneratorMojo.java
index 16466cf..76e3a18 100644
--- a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGeneratorMojo.java
@@ -15,10 +15,10 @@ import org.slf4j.LoggerFactory;
 import java.io.File;
 import java.util.List;
 
-@Mojo(  name = "hive",
+@Mojo(  name = "generate-resources",
         defaultPhase = LifecyclePhase.GENERATE_RESOURCES
 )
-@Execute(   goal = "hive",
+@Execute(   goal = "generate-resources",
             phase = LifecyclePhase.GENERATE_RESOURCES
 )
 public class StreamsHiveResourceGeneratorMojo extends AbstractMojo {
@@ -30,15 +30,6 @@ public class StreamsHiveResourceGeneratorMojo extends AbstractMojo {
     @Component
     private MavenProject project;
 
-//    @Component
-//    private Settings settings;
-//
-//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
-//    protected ArtifactRepository localRepository;
-//
-//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
-//    private PluginDescriptor plugin;
-//
     @Parameter( defaultValue = "${project.basedir}", readonly = true )
     private File basedir;
 
@@ -65,29 +56,8 @@ public class StreamsHiveResourceGeneratorMojo extends AbstractMojo {
 
         StreamsHiveResourceGenerator streamsHiveResourceGenerator = new StreamsHiveResourceGenerator(config);
 
-        Thread.UncaughtExceptionHandler h = new Thread.UncaughtExceptionHandler() {
-            public void uncaughtException(Thread th, Throwable ex) {
-                LOGGER.error("Exception", ex);
-                mojoFailureException = new MojoFailureException("Exception", ex);
-            }
-        };
-        Thread.setDefaultUncaughtExceptionHandler(h);
-        Thread thread = new Thread(streamsHiveResourceGenerator);
-        thread.setUncaughtExceptionHandler(h);
-        try {
-            thread.start();
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-            mojoFailureException = new MojoFailureException("Exception", e);
-        }
-
-        if( mojoFailureException != null )
-            throw mojoFailureException;
-
-        return;
+        streamsHiveResourceGenerator.run();
+
     }
 
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hive/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/site/markdown/index.md b/streams-plugins/streams-plugin-hive/src/site/markdown/index.md
index 4df9103..12ce831 100644
--- a/streams-plugins/streams-plugin-hive/src/site/markdown/index.md
+++ b/streams-plugins/streams-plugin-hive/src/site/markdown/index.md
@@ -3,18 +3,36 @@ org.apache.streams.plugins:streams-plugin-hive
 
 streams-plugin-hive generates resources from json schemas to assist with analysis of json data using Apache Hive.
 
-#### Usage
+### Usage
 
-Run within a module containing a src/main/jsonschema directory
+Output will be placed in target/generated-resources/hive by default
 
-    mvn org.apache.streams.plugins:streams-plugin-hive:0.3-incubating-SNAPSHOT:hive
+##### Maven
 
-Output will be placed in target/generated-resources/hive by default
+Run within a module containing a src/main/jsonschema directory
 
-#### Example
+    mvn org.apache.streams.plugins:streams-plugin-hive:0.3-incubating-SNAPSHOT:generate-resources
 
 [streams-plugin-hive/pom.xml](streams-plugin-hive/pom.xml "streams-plugin-hive/pom.xml")
 
+##### SDK
+
+Embed within your own java code
+
+    StreamsHiveGenerationConfig config = new StreamsHiveGenerationConfig();
+    config.setSourceDirectory("src/main/jsonschema");
+    config.setTargetDirectory("target/generated-resources");
+    StreamsHiveGenerationConfig generator = new StreamsHiveGenerationConfig(config);
+    generator.run();
+   
+##### CLI
+ 
+Run from CLI without Maven
+
+    java -jar streams-plugin-hive-jar-with-dependencies.jar StreamsHiveResourceGenerator src/main/jsonschema target/generated-resources
+
+#### Example
+
 #### Documentation
 
 [JavaDocs](apidocs/index.html "JavaDocs")

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorCLITest.java
index 21c82f9..ed08c31 100644
--- a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorCLITest.java
+++ b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorCLITest.java
@@ -21,7 +21,7 @@ public class StreamsHiveResourceGeneratorCLITest {
     @Test
     public void testStreamsHiveResourceGeneratorCLI() throws Exception {
 
-        String sourceDirectory = "target/test-classes/streams-schemas";
+        String sourceDirectory = "target/test-classes/streams-schema-activitystreams";
         String targetDirectory = "target/generated-resources/hive-cli";
 
         List<String> argsList = Lists.newArrayList(sourceDirectory, targetDirectory);

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorMojoTest.java
index b2f3e14..e2fbecc 100644
--- a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorMojoTest.java
+++ b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorMojoTest.java
@@ -50,7 +50,7 @@ public class StreamsHiveResourceGeneratorMojoTest extends TestCase {
 
         verifier.resetStreams();
 
-        File testOutput = new File(testDir.getAbsolutePath() + "/target/generated-resources/test-mojo");
+        File testOutput = new File(testDir.getAbsolutePath() + "/target/generated-resources/hive-mojo");
 
         assert( testOutput != null );
         assert( testOutput.exists() == true );

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java
index 3944ddf..9778bb6 100644
--- a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java
@@ -18,7 +18,7 @@ import java.io.File;
 import java.util.Collection;
 import java.util.Iterator;
 
-import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
+import static org.apache.streams.util.schema.FileUtil.dropSourcePathPrefix;
 
 /**
  * Test that Activity beans are compatible with the example activities in the spec.
@@ -47,26 +47,18 @@ public class StreamsHiveResourceGeneratorTest {
 
         StreamsHiveGenerationConfig config = new StreamsHiveGenerationConfig();
 
-        String sourceDirectory = "target/test-classes/streams-schemas";
+        String sourceDirectory = "target/test-classes/streams-schema-activitystreams";
 
         config.setSourceDirectory(sourceDirectory);
 
-        config.setTargetDirectory("target/generated-sources/test");
+        config.setTargetDirectory("target/generated-resources/test");
 
         config.setExclusions(Sets.newHashSet("attachments"));
 
         config.setMaxDepth(2);
 
         StreamsHiveResourceGenerator streamsHiveResourceGenerator = new StreamsHiveResourceGenerator(config);
-        Thread thread = new Thread(streamsHiveResourceGenerator);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
+        streamsHiveResourceGenerator.run();
 
         File testOutput = config.getTargetDirectory();
 
@@ -106,19 +98,5 @@ public class StreamsHiveResourceGeneratorTest {
             LOGGER.info("Fails: {}", fails);
             Assert.fail();
         }
-
-
-//        assert( new File(testOutput + "/traits").exists() == true );
-//        assert( new File(testOutput + "/traits").isDirectory() == true );
-//        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
-//        assert( new File(testOutput + "/objectTypes").exists() == true );
-//        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
-//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
-//        assert( new File(testOutput + "/verbs").exists() == true );
-//        assert( new File(testOutput + "/verbs").isDirectory() == true );
-//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
-    }
+   }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml b/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
index ae4bb66..40931ae 100644
--- a/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
+++ b/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
@@ -18,9 +18,10 @@
         </dependency>
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-schemas</artifactId>
+            <artifactId>streams-schema-activitystreams</artifactId>
             <version>${project.version}</version>
             <scope>test</scope>
+            <type>test-jar</type>
         </dependency>
     </dependencies>
 
@@ -32,19 +33,19 @@
                 <version>0.3-incubating-SNAPSHOT</version>
                 <configuration>
                     <sourcePaths>
-                        <sourcePath>target/test-classes/streams-schemas/activity.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/collection.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/media_link.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/object.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/objectTypes</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/verbs</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/activity.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/collection.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/media_link.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/object.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/objectTypes</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/verbs</sourcePath>
                     </sourcePaths>
-                    <targetDirectory>target/generated-resources/test-mojo</targetDirectory>
+                    <targetDirectory>target/generated-resources/hive-mojo</targetDirectory>
                 </configuration>
                 <executions>
                     <execution>
                         <goals>
-                            <goal>hive</goal>
+                            <goal>generate-resources</goal>
                         </goals>
                     </execution>
                 </executions>
@@ -55,9 +56,9 @@
                 <version>2.10</version>
                 <configuration>
                     <includes>**/*.json</includes>
-                    <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                    <outputDirectory>${project.build.directory}/test-classes/streams-schema-activitystreams</outputDirectory>
                     <includeGroupIds>org.apache.streams</includeGroupIds>
-                    <includeArtifactIds>streams-schemas</includeArtifactIds>
+                    <includeArtifactIds>streams-schema-activitystreams</includeArtifactIds>
                     <includeTypes>jar,test-jar</includeTypes>
                 </configuration>
                 <executions>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pig/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/pom.xml b/streams-plugins/streams-plugin-pig/pom.xml
index ef59587..0c7bf1a 100644
--- a/streams-plugins/streams-plugin-pig/pom.xml
+++ b/streams-plugins/streams-plugin-pig/pom.xml
@@ -54,10 +54,17 @@
         </dependency>
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-schemas</artifactId>
+            <artifactId>streams-util</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schema-activitystreams</artifactId>
+            <version>${project.version}</version>
+            <type>test-jar</type>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
             <groupId>com.google.guava</groupId>
             <artifactId>guava</artifactId>
         </dependency>
@@ -230,9 +237,9 @@
                         </goals>
                         <configuration>
                             <includeGroupIds>org.apache.streams</includeGroupIds>
-                            <includeArtifactIds>streams-schemas</includeArtifactIds>
+                            <includeArtifactIds>streams-schema-activitystreams</includeArtifactIds>
                             <includes>**/*.json</includes>
-                            <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                            <outputDirectory>${project.build.directory}/test-classes/streams-schema-activitystreams</outputDirectory>
                         </configuration>
                     </execution>
                 </executions>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigGenerationConfig.java b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigGenerationConfig.java
index 5aa55ed..1b346f4 100644
--- a/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigGenerationConfig.java
+++ b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigGenerationConfig.java
@@ -1,11 +1,10 @@
 package org.apache.streams.plugins.pig;
 
-import org.apache.streams.schema.GenerationConfig;
+import org.apache.streams.util.schema.GenerationConfig;
 import org.jsonschema2pojo.DefaultGenerationConfig;
 import org.jsonschema2pojo.util.URLUtil;
 
 import java.io.File;
-import java.io.FileFilter;
 import java.net.URL;
 import java.util.ArrayList;
 import java.util.Collections;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGenerator.java b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGenerator.java
index 072e1b6..f1f94a6 100644
--- a/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGenerator.java
+++ b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGenerator.java
@@ -6,13 +6,13 @@ import com.google.common.base.Joiner;
 import com.google.common.base.Preconditions;
 import com.google.common.base.Strings;
 import com.google.common.collect.Lists;
-import org.apache.streams.plugins.pig.StreamsPigGenerationConfig;
-import org.apache.streams.schema.FieldType;
-import org.apache.streams.schema.FieldUtil;
-import org.apache.streams.schema.FileUtil;
-import org.apache.streams.schema.GenerationConfig;
-import org.apache.streams.schema.Schema;
-import org.apache.streams.schema.SchemaStore;
+import org.apache.streams.util.schema.FieldType;
+import org.apache.streams.util.schema.FieldUtil;
+import org.apache.streams.util.schema.FileUtil;
+import org.apache.streams.util.schema.GenerationConfig;
+import org.apache.streams.util.schema.Schema;
+import org.apache.streams.util.schema.SchemaStore;
+import org.apache.streams.util.schema.SchemaStoreImpl;
 import org.jsonschema2pojo.util.URLUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -25,10 +25,10 @@ import java.util.List;
 import java.util.Map;
 
 import static com.google.common.base.Preconditions.checkNotNull;
-import static org.apache.streams.schema.FileUtil.dropExtension;
-import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
-import static org.apache.streams.schema.FileUtil.swapExtension;
-import static org.apache.streams.schema.FileUtil.writeFile;
+import static org.apache.streams.util.schema.FileUtil.dropExtension;
+import static org.apache.streams.util.schema.FileUtil.dropSourcePathPrefix;
+import static org.apache.streams.util.schema.FileUtil.swapExtension;
+import static org.apache.streams.util.schema.FileUtil.writeFile;
 
 public class StreamsPigResourceGenerator implements Runnable {
 
@@ -38,7 +38,7 @@ public class StreamsPigResourceGenerator implements Runnable {
 
     private StreamsPigGenerationConfig config;
 
-    private SchemaStore schemaStore = new SchemaStore();
+    private SchemaStore schemaStore = new SchemaStoreImpl();
 
     private int currentDepth = 0;
 
@@ -57,16 +57,8 @@ public class StreamsPigResourceGenerator implements Runnable {
         config.setTargetDirectory(targetDirectory);
 
         StreamsPigResourceGenerator streamsPigResourceGenerator = new StreamsPigResourceGenerator(config);
-        Thread thread = new Thread(streamsPigResourceGenerator);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
-        return;
+        streamsPigResourceGenerator.run();
+
     }
 
     public StreamsPigResourceGenerator(StreamsPigGenerationConfig config) {
@@ -160,13 +152,9 @@ public class StreamsPigResourceGenerator implements Runnable {
                 if (fieldType != null ) {
                     switch (fieldType) {
                         case ARRAY:
-                            ObjectNode itemsNode = FieldUtil.resolveItemsNode(fieldNode);
-                            if( itemsNode == null ) {
-                                ObjectNode resolvedItems = schemaStore.resolveProperties(schema, fieldNode, fieldId);
-                                itemsNode = FieldUtil.resolveItemsNode();
-                            }
-                            if( itemsNode != null && currentDepth <= config.getMaxDepth()) {
-                                StringBuilder arrayItemsBuilder = appendArrayItems(new StringBuilder(), schema, fieldId, itemsNode, seperator);
+                            ObjectNode resolvedItems = schemaStore.resolveItems(schema, fieldNode, fieldId);
+                            if( resolvedItems != null && currentDepth <= config.getMaxDepth()) {
+                                StringBuilder arrayItemsBuilder = appendArrayItems(new StringBuilder(), schema, fieldId, resolvedItems, seperator);
                                 if( !Strings.isNullOrEmpty(arrayItemsBuilder.toString())) {
                                     fieldStrings.add(arrayItemsBuilder.toString());
                                 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGeneratorMojo.java b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGeneratorMojo.java
index 4763b60..571c75a 100644
--- a/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGeneratorMojo.java
@@ -15,10 +15,10 @@ import org.slf4j.LoggerFactory;
 import java.io.File;
 import java.util.List;
 
-@Mojo(  name = "pig",
+@Mojo(  name = "generate-resources",
         defaultPhase = LifecyclePhase.GENERATE_RESOURCES
 )
-@Execute(   goal = "pig",
+@Execute(   goal = "generate-resources",
             phase = LifecyclePhase.GENERATE_RESOURCES
 )
 public class StreamsPigResourceGeneratorMojo extends AbstractMojo {
@@ -30,15 +30,6 @@ public class StreamsPigResourceGeneratorMojo extends AbstractMojo {
     @Component
     private MavenProject project;
 
-//    @Component
-//    private Settings settings;
-//
-//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
-//    protected ArtifactRepository localRepository;
-//
-//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
-//    private PluginDescriptor plugin;
-//
     @Parameter( defaultValue = "${project.basedir}", readonly = true )
     private File basedir;
 
@@ -64,30 +55,7 @@ public class StreamsPigResourceGeneratorMojo extends AbstractMojo {
         config.setTargetDirectory(targetDirectory);
 
         StreamsPigResourceGenerator streamsPigResourceGenerator = new StreamsPigResourceGenerator(config);
-
-        Thread.UncaughtExceptionHandler h = new Thread.UncaughtExceptionHandler() {
-            public void uncaughtException(Thread th, Throwable ex) {
-                LOGGER.error("Exception", ex);
-                mojoFailureException = new MojoFailureException("Exception", ex);
-            }
-        };
-        Thread.setDefaultUncaughtExceptionHandler(h);
-        Thread thread = new Thread(streamsPigResourceGenerator);
-        thread.setUncaughtExceptionHandler(h);
-        try {
-            thread.start();
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-            mojoFailureException = new MojoFailureException("Exception", e);
-        }
-
-        if( mojoFailureException != null )
-            throw mojoFailureException;
-
-        return;
+        streamsPigResourceGenerator.run();
     }
 
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pig/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/site/markdown/index.md b/streams-plugins/streams-plugin-pig/src/site/markdown/index.md
index d0d4791..5ab4375 100644
--- a/streams-plugins/streams-plugin-pig/src/site/markdown/index.md
+++ b/streams-plugins/streams-plugin-pig/src/site/markdown/index.md
@@ -3,17 +3,33 @@ org.apache.streams.plugins:streams-plugin-pig
 
 streams-plugin-pig generates resources from json schemas to assist with analysis of json data using Apache Pig.
 
-#### Usage
+### Usage
+
+Output will be placed in target/generated-resources/pig by default
+
+##### Maven
 
 Run within a module containing a src/main/jsonschema directory
 
     mvn org.apache.streams.plugins:streams-plugin-pig:0.3-incubating-SNAPSHOT:pig
 
-Output will be placed in target/generated-resources/pig by default
+[streams-plugin-pig/pom.xml](streams-plugin-pig/pom.xml "streams-plugin-pig/pom.xml")
 
-#### Example
+##### SDK
 
-[streams-plugin-pig/pom.xml](streams-plugin-pig/pom.xml "streams-plugin-pig/pom.xml")
+Embed within your own java code
+
+    StreamsPigGenerationConfig config = new StreamsPigGenerationConfig();
+    config.setSourceDirectory("src/main/jsonschema");
+    config.setTargetDirectory("target/generated-resources");
+    StreamsPigGenerationConfig generator = new StreamsPigGenerationConfig(config);
+    generator.run();
+  
+##### CLI
+
+Run from CLI without Maven
+
+    java -jar streams-plugin-pig-jar-with-dependencies.jar StreamsPigResourceGenerator src/main/jsonschema target/generated-resources
 
 #### Documentation
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorCLITest.java
index c94bca9..8190d50 100644
--- a/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorCLITest.java
+++ b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorCLITest.java
@@ -19,8 +19,8 @@ public class StreamsPigResourceGeneratorCLITest {
     @Test
     public void testStreamsPigResourceGeneratorCLI() throws Exception {
 
-        String sourceDirectory = "target/test-classes/streams-schemas";
-        String targetDirectory = "target/generated-resources/hive-cli";
+        String sourceDirectory = "target/test-classes/streams-schema-activitystreams";
+        String targetDirectory = "target/generated-resources/pig-cli";
 
         List<String> argsList = Lists.newArrayList(sourceDirectory, targetDirectory);
         StreamsPigResourceGenerator.main(argsList.toArray(new String[0]));

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorMojoTest.java
index 401c506..76c4eb2 100644
--- a/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorMojoTest.java
+++ b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorMojoTest.java
@@ -31,7 +31,7 @@ public class StreamsPigResourceGeneratorMojoTest extends TestCase {
 
 
     @Test
-    public void testStreamsHiveResourceGeneratorMojo() throws Exception {
+    public void testStreamsPigResourceGeneratorMojo() throws Exception {
 
         File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/streams-plugin-pig" );
 
@@ -50,7 +50,7 @@ public class StreamsPigResourceGeneratorMojoTest extends TestCase {
 
         verifier.resetStreams();
 
-        File testOutput = new File(testDir.getAbsolutePath() + "/target/generated-resources/test-mojo");
+        File testOutput = new File(testDir.getAbsolutePath() + "/target/generated-resources/pig-mojo");
 
         assert( testOutput != null );
         assert( testOutput.exists() == true );

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorTest.java b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorTest.java
index a1ab281..98442ad 100644
--- a/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorTest.java
@@ -17,7 +17,7 @@ import java.io.File;
 import java.util.Collection;
 import java.util.Iterator;
 
-import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
+import static org.apache.streams.util.schema.FileUtil.dropSourcePathPrefix;
 
 /**
  * Test that Activity beans are compatible with the example activities in the spec.
@@ -45,28 +45,20 @@ public class StreamsPigResourceGeneratorTest {
 
         StreamsPigGenerationConfig config = new StreamsPigGenerationConfig();
 
-        String sourceDirectory = "target/test-classes/streams-schemas";
+        String sourceDirectory = "target/test-classes/streams-schema-activitystreams";
 
         config.setSourceDirectory(sourceDirectory);
 
-        config.setTargetDirectory("target/generated-sources/test");
+        config.setTargetDirectory("target/generated-resources/pig");
 
         config.setExclusions(Sets.newHashSet("attachments"));
 
         config.setMaxDepth(2);
 
         StreamsPigResourceGenerator streamsPigResourceGenerator = new StreamsPigResourceGenerator(config);
-        Thread thread = new Thread(streamsPigResourceGenerator);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
+        streamsPigResourceGenerator.run();
 
-        File testOutput = new File( "./target/generated-sources/test");
+        File testOutput = config.getTargetDirectory();
 
         assert( testOutput != null );
         assert( testOutput.exists() == true );
@@ -104,19 +96,5 @@ public class StreamsPigResourceGeneratorTest {
             LOGGER.info("Fails: {}", fails);
             Assert.fail();
         }
-
-
-//        assert( new File(testOutput + "/traits").exists() == true );
-//        assert( new File(testOutput + "/traits").isDirectory() == true );
-//        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
-//        assert( new File(testOutput + "/objectTypes").exists() == true );
-//        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
-//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
-//        assert( new File(testOutput + "/verbs").exists() == true );
-//        assert( new File(testOutput + "/verbs").isDirectory() == true );
-//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml b/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml
index 7027446..f3976fa 100644
--- a/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml
+++ b/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml
@@ -18,9 +18,10 @@
         </dependency>
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-schemas</artifactId>
+            <artifactId>streams-schema-activitystreams</artifactId>
             <version>${project.version}</version>
             <scope>test</scope>
+            <type>test-jar</type>
         </dependency>
     </dependencies>
 
@@ -32,19 +33,19 @@
                 <version>0.3-incubating-SNAPSHOT</version>
                 <configuration>
                     <sourcePaths>
-                        <sourcePath>target/test-classes/streams-schemas/activity.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/collection.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/media_link.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/object.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/objectTypes</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/verbs</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/activity.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/collection.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/media_link.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/object.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/objectTypes</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/verbs</sourcePath>
                     </sourcePaths>
-                    <targetDirectory>target/generated-resources/test-mojo</targetDirectory>
+                    <targetDirectory>target/generated-resources/pig-mojo</targetDirectory>
                 </configuration>
                 <executions>
                     <execution>
                         <goals>
-                            <goal>pig</goal>
+                            <goal>generate-resources</goal>
                         </goals>
                     </execution>
                 </executions>
@@ -55,9 +56,9 @@
                 <version>2.10</version>
                 <configuration>
                     <includes>**/*.json</includes>
-                    <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                    <outputDirectory>${project.build.directory}/test-classes/streams-schema-activitystreams</outputDirectory>
                     <includeGroupIds>org.apache.streams</includeGroupIds>
-                    <includeArtifactIds>streams-schemas</includeArtifactIds>
+                    <includeArtifactIds>streams-schema-activitystreams</includeArtifactIds>
                     <includeTypes>jar,test-jar</includeTypes>
                 </configuration>
                 <executions>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/pom.xml b/streams-plugins/streams-plugin-pojo/pom.xml
index bfa3480..da7c0b2 100644
--- a/streams-plugins/streams-plugin-pojo/pom.xml
+++ b/streams-plugins/streams-plugin-pojo/pom.xml
@@ -44,10 +44,17 @@
         </dependency>
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-schemas</artifactId>
+            <artifactId>streams-util</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schema-activitystreams</artifactId>
+            <version>${project.version}</version>
+            <type>test-jar</type>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
             <groupId>org.jsonschema2pojo</groupId>
             <artifactId>jsonschema2pojo-core</artifactId>
             <version>0.4.10</version>
@@ -224,9 +231,9 @@
                 <artifactId>maven-dependency-plugin</artifactId>
                 <configuration>
                     <includes>**/*.json</includes>
-                    <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                    <outputDirectory>${project.build.directory}/test-classes/streams-schema-activitystreams</outputDirectory>
                     <includeGroupIds>org.apache.streams</includeGroupIds>
-                    <includeArtifactIds>streams-schemas</includeArtifactIds>
+                    <includeArtifactIds>streams-schema-activitystreams</includeArtifactIds>
                     <includeTypes>jar,test-jar</includeTypes>
                 </configuration>
                 <executions>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java
index f7b6617..504eb80 100644
--- a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java
+++ b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java
@@ -25,7 +25,7 @@ public class StreamsPojoSourceGenerator implements Runnable {
         StreamsPojoGenerationConfig config = new StreamsPojoGenerationConfig();
 
         String sourceDirectory = "./target/test-classes/activities";
-        String targetDirectory = "./target/generated-sources/streams-plugin-pojo";
+        String targetDirectory = "./target/generated-sources/pojo";
         String targetPackage = "";
 
         if( args.length > 0 )
@@ -40,15 +40,8 @@ public class StreamsPojoSourceGenerator implements Runnable {
         config.setTargetDirectory(targetDirectory);
 
         StreamsPojoSourceGenerator streamsPojoSourceGenerator = new StreamsPojoSourceGenerator(config);
-        Thread thread = new Thread(streamsPojoSourceGenerator);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
+        streamsPojoSourceGenerator.run();
+
         return;
     }
 
@@ -68,8 +61,6 @@ public class StreamsPojoSourceGenerator implements Runnable {
         }
     }
 
-
-
     private void writeFile(String pojoFile, String pojoHive) {
         try {
             File path = new File(pojoFile);

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
index 8cf1697..2a4978a 100644
--- a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
@@ -30,10 +30,10 @@ import java.util.List;
 
 import static org.apache.commons.lang.StringUtils.isNotBlank;
 
-@Mojo(  name = "pojo",
+@Mojo(  name = "generate-sources",
         defaultPhase = LifecyclePhase.GENERATE_SOURCES
 )
-@Execute(   goal = "pojo",
+@Execute(   goal = "generate-sources",
             phase = LifecyclePhase.GENERATE_SOURCES
 )
 public class StreamsPojoSourceGeneratorMojo extends AbstractMojo {
@@ -45,16 +45,6 @@ public class StreamsPojoSourceGeneratorMojo extends AbstractMojo {
     @Component
     public MavenProject project;
 
-//    @Component
-//    private Settings settings;
-//
-//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
-//    protected ArtifactRepository localRepository;
-//
-//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
-//    private PluginDescriptor plugin;
-//
-
     @Parameter( defaultValue = "${project.basedir}", readonly = true )
     public File basedir;
 
@@ -64,7 +54,7 @@ public class StreamsPojoSourceGeneratorMojo extends AbstractMojo {
     @Parameter( readonly = true ) // Maven 3 only
     public List<String> sourcePaths;
 
-    @Parameter(defaultValue = "./target/generated-sources/streams-plugin-pojo", readonly = true)
+    @Parameter(defaultValue = "./target/generated-sources/pojo", readonly = true)
     public String targetDirectory;
 
     @Parameter(readonly = true)
@@ -84,30 +74,7 @@ public class StreamsPojoSourceGeneratorMojo extends AbstractMojo {
         config.setTargetDirectory(targetDirectory);
 
         StreamsPojoSourceGenerator streamsPojoSourceGenerator = new StreamsPojoSourceGenerator(config);
-
-        Thread.UncaughtExceptionHandler h = new Thread.UncaughtExceptionHandler() {
-            public void uncaughtException(Thread th, Throwable ex) {
-                LOGGER.error("Exception", ex);
-                mojoFailureException = new MojoFailureException("Exception", ex);
-            }
-        };
-        Thread.setDefaultUncaughtExceptionHandler(h);
-        Thread thread = new Thread(streamsPojoSourceGenerator);
-        thread.setUncaughtExceptionHandler(h);
-        try {
-            thread.start();
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-            throw new MojoFailureException("Exception", e);
-        }
-
-        if( mojoFailureException != null )
-            throw mojoFailureException;
-
-        return;
+        streamsPojoSourceGenerator.run();
 
     }
 
@@ -125,117 +92,4 @@ public class StreamsPojoSourceGeneratorMojo extends AbstractMojo {
 
     }
 
-//    public List<Class<?>> detectSerializableClasses() {
-//
-//        Set<Class<? extends Serializable>> classes =
-//                reflections.getSubTypesOf(java.io.Serializable.class);
-//
-//        List<Class<?>> result = Lists.newArrayList();
-//
-//        for( Class clazz : classes ) {
-//            result.add(clazz);
-//        }
-//
-//        return result;
-//    }
-//
-//    public List<Class<?>> detectPojoClasses(List<Class<?>> classes) {
-//
-//        List<Class<?>> result = Lists.newArrayList();
-//
-//        for( Class clazz : classes ) {
-//            try {
-//                clazz.newInstance().toString();
-//            } catch( Exception e) {}
-//            // super-halfass way to know if this is a jsonschema2pojo
-//            if( clazz.getAnnotations().length >= 1 )
-//                result.add(clazz);
-//        }
-//
-//        return result;
-//    }
-//
-//    public String renderPojo(Class<?> pojoClass) {
-//        StringBuffer stringBuffer = new StringBuffer();
-//        stringBuffer.append("CREATE TABLE ");
-//        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".hive"));
-//        stringBuffer.append(LS);
-//        stringBuffer.append("(");
-//        stringBuffer.append(LS);
-//
-//        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
-//        appendFields(stringBuffer, fields, "", ",");
-//
-//        stringBuffer.append(")");
-//
-//        return stringBuffer.toString();
-//    }
-//
-//    private void appendFields(StringBuffer stringBuffer, Set<Field> fields, String varDef, String fieldDelimiter) {
-//        if( fields.size() > 0 ) {
-//            stringBuffer.append(LS);
-//            Map<String,Field> fieldsToAppend = uniqueFields(fields);
-//            for( Iterator<Field> iter = fieldsToAppend.values().iterator(); iter.hasNext(); ) {
-//                Field field = iter.next();
-//                stringBuffer.append(name(field));
-//                stringBuffer.append(": ");
-//                stringBuffer.append(type(field));
-//                if( iter.hasNext()) stringBuffer.append(fieldDelimiter);
-//                stringBuffer.append(LS);
-//            }
-//        } else {
-//            stringBuffer.append(LS);
-//        }
-//    }
-//
-//    private String value(Field field) {
-//        if( field.getName().equals("verb")) {
-//            return "\"post\"";
-//        } else if( field.getName().equals("objectType")) {
-//            return "\"application\"";
-//        } else return null;
-//    }
-//
-//    private String type(Field field) {
-//        if( field.getType().equals(java.lang.String.class)) {
-//            return "STRING";
-//        } else if( field.getType().equals(java.lang.Integer.class)) {
-//            return "INT";
-//        } else if( field.getType().equals(org.joda.time.DateTime.class)) {
-//            return "DATE";
-//        }else if( field.getType().equals(java.util.Map.class)) {
-//            return "MAP";
-//        } else if( field.getType().equals(java.util.List.class)) {
-//            return "ARRAY";
-//        }
-//        return field.getType().getCanonicalName().replace(".pojo.json", ".scala");
-//    }
-//
-//    private Map<String,Field> uniqueFields(Set<Field> fieldset) {
-//        Map<String,Field> fields = Maps.newTreeMap();
-//        Field item = null;
-//        for( Iterator<Field> it = fieldset.iterator(); it.hasNext(); item = it.next() ) {
-//            if( item != null && item.getName() != null ) {
-//                Field added = fields.put(item.getName(), item);
-//            }
-//            // ensure right class will get used
-//        }
-//        return fields;
-//    }
-//
-//    private String name(Field field) {
-//        if( field.getName().equals("object"))
-//            return "obj";
-//        else return field.getName();
-//    }
-//
-//    private boolean override(Field field) {
-//        try {
-//            if( field.getDeclaringClass().getSuperclass().getField(field.getName()) != null )
-//                return true;
-//            else return false;
-//        } catch( Exception e ) {
-//            return false;
-//        }
-//    }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pojo/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/site/markdown/index.md b/streams-plugins/streams-plugin-pojo/src/site/markdown/index.md
index d1bd848..996fa86 100644
--- a/streams-plugins/streams-plugin-pojo/src/site/markdown/index.md
+++ b/streams-plugins/streams-plugin-pojo/src/site/markdown/index.md
@@ -3,17 +3,33 @@ org.apache.streams.plugins:streams-plugin-pojo
 
 streams-plugin-pojo generates source files from json schemas suitable for writing Apache Streams components and libraries in Java.
 
-#### Usage
+### Usage
+
+Output will be placed in target/generated-sources/pojo by default
+
+##### Maven
 
 Run within a module containing a src/main/jsonschema directory
 
     mvn org.apache.streams.plugins:streams-plugin-pojo:0.3-incubating-SNAPSHOT:pojo
 
-Output will be placed in target/generated-sources/pojo by default
+[streams-plugin-pojo/pom.xml](streams-plugin-pojo/pom.xml "streams-plugin-pojo/pom.xml")
 
-#### Example
+##### SDK
 
-[streams-plugin-pojo/pom.xml](streams-plugin-pojo/pom.xml "streams-plugin-pojo/pom.xml")
+Embed within your own java code
+
+    StreamsPojoGenerationConfig config = new StreamsPojoGenerationConfig();
+    config.setSourceDirectory("src/main/jsonschema");
+    config.setTargetDirectory("target/generated-resources");
+    StreamsPojoSourceGenerator generator = new StreamsPojoSourceGenerator(config);
+    generator.run();
+  
+##### CLI
+
+Run from CLI without Maven
+
+    java -jar streams-plugin-pojo-jar-with-dependencies.jar StreamsPojoSourceGenerator src/main/jsonschema target/generated-sources
 
 #### Documentation
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorCLITest.java b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorCLITest.java
index f808b28..07049ed 100644
--- a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorCLITest.java
+++ b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorCLITest.java
@@ -23,7 +23,7 @@ public class StreamsPojoSourceGeneratorCLITest {
     @Test
     public void testStreamsPojoSourceGeneratorCLI() throws Exception {
 
-        String sourceDirectory = "target/test-classes/streams-schemas";
+        String sourceDirectory = "target/test-classes/streams-schema-activitystreams";
         String targetDirectory = "target/generated-sources/test-cli";
 
         List<String> argsList = Lists.newArrayList(sourceDirectory, targetDirectory);

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java
index 1968d90..41d762d 100644
--- a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java
+++ b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java
@@ -53,7 +53,7 @@ public class StreamsPojoSourceGeneratorMojoTest extends TestCase {
 
         verifier.resetStreams();
 
-        File testOutput = new File(testDir.getAbsolutePath() + "/target/generated-sources/test-mojo");
+        File testOutput = new File(testDir.getAbsolutePath() + "/target/generated-sources/pojo-mojo");
 
         assert( testOutput != null );
         assert( testOutput.exists() == true );

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
index 8d904af..6e7400e 100644
--- a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
@@ -43,53 +43,30 @@ public class StreamsPojoSourceGeneratorTest {
         StreamsPojoGenerationConfig config = new StreamsPojoGenerationConfig();
 
         List<String> sourcePaths = Lists.newArrayList(
-            "target/test-classes/streams-schemas/activity.json",
-            "target/test-classes/streams-schemas/collection.json",
-            "target/test-classes/streams-schemas/media_link.json",
-            "target/test-classes/streams-schemas/object.json",
-            "target/test-classes/streams-schemas/objectTypes",
-            "target/test-classes/streams-schemas/verbs"
+            "target/test-classes/streams-schema-activitystreams/activity.json",
+            "target/test-classes/streams-schema-activitystreams/collection.json",
+            "target/test-classes/streams-schema-activitystreams/media_link.json",
+            "target/test-classes/streams-schema-activitystreams/object.json",
+            "target/test-classes/streams-schema-activitystreams/objectTypes",
+            "target/test-classes/streams-schema-activitystreams/verbs"
         );
         config.setSourcePaths(sourcePaths);
 
 //        config.setSourceDirectory("target/test-classes/streams-schemas");
-        config.setTargetPackage("org.apache.streams.pojo.test");
-        config.setTargetDirectory("target/generated-sources/test");
+        config.setTargetPackage("org.apache.streams.pojo");
+        config.setTargetDirectory("target/generated-sources/pojo");
 
         StreamsPojoSourceGenerator streamsPojoSourceGenerator = new StreamsPojoSourceGenerator(config);
-        Thread thread = new Thread(streamsPojoSourceGenerator);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
-
-        File testOutput = new File( "target/generated-sources/test");
+        streamsPojoSourceGenerator.run();
 
-        assert( testOutput != null );
-        assert( testOutput.exists() == true );
-        assert( testOutput.isDirectory() == true );
+        assert( config.getTargetDirectory() != null );
+        assert( config.getTargetDirectory().exists() == true );
+        assert( config.getTargetDirectory().isDirectory() == true );
 
-        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(config.getTargetDirectory())
                 .filter(javaFilter);
         Collection<File> outputCollection = Lists.newArrayList(outputIterator);
         assert( outputCollection.size() > 133 );
 
-//        assert( testOutput.listFiles(javaFilter).length == 11 );
-//        assert( new File(testOutput + "/traits").exists() == true );
-//        assert( new File(testOutput + "/traits").isDirectory() == true );
-//        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
-//        assert( new File(testOutput + "/objectTypes").exists() == true );
-//        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
-//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
-//        assert( new File(testO`utput + "/verbs").exists() == true );
-//        assert( new File(testOutput + "/verbs").isDirectory() == true );
-//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
-    }
+  }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml b/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
index 21fd50e..2ca3f7c 100644
--- a/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
+++ b/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
@@ -23,9 +23,15 @@
         </dependency>
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-schemas</artifactId>
+            <artifactId>streams-util</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schema-activitystreams</artifactId>
             <version>${project.version}</version>
             <scope>test</scope>
+            <type>test-jar</type>
         </dependency>
         <dependency>
             <groupId>com.fasterxml.jackson.core</groupId>
@@ -62,20 +68,20 @@
                 <version>0.3-incubating-SNAPSHOT</version>
                 <configuration>
                     <sourcePaths>
-                        <sourcePath>target/test-classes/streams-schemas/activity.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/collection.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/media_link.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/object.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/objectTypes</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/verbs</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/activity.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/collection.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/media_link.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/object.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/objectTypes</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/verbs</sourcePath>
                     </sourcePaths>
-                    <targetPackage>org.apache.streams.pojo.testmojo</targetPackage>
-                    <targetDirectory>target/generated-sources/test-mojo</targetDirectory>
+                    <targetPackage>org.apache.streams.pojo.mojo</targetPackage>
+                    <targetDirectory>target/generated-sources/pojo-mojo</targetDirectory>
                 </configuration>
                 <executions>
                     <execution>
                         <goals>
-                            <goal>pojo</goal>
+                            <goal>generate-sources</goal>
                         </goals>
                     </execution>
                 </executions>
@@ -86,9 +92,9 @@
                 <version>2.10</version>
                 <configuration>
                     <includes>**/*.json</includes>
-                    <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                    <outputDirectory>${project.build.directory}/test-classes/streams-schema-activitystreams</outputDirectory>
                     <includeGroupIds>org.apache.streams</includeGroupIds>
-                    <includeArtifactIds>streams-schemas</includeArtifactIds>
+                    <includeArtifactIds>streams-schema-activitystreams</includeArtifactIds>
                     <includeTypes>jar,test-jar</includeTypes>
                 </configuration>
                 <executions>



[21/53] [abbrv] incubator-streams git commit: refactoring, testing, documentation, CLI modes

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/accept.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/accept.json b/streams-util/src/test/resources/activities/accept.json
new file mode 100644
index 0000000..c1dfd5f
--- /dev/null
+++ b/streams-util/src/test/resources/activities/accept.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "accept",
+  "object": {
+    "objectType": "job",
+    "displayName": "Director of Marketing"
+  },
+  "title": "Sally accepted the Director of Marketing job."
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/access.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/access.json b/streams-util/src/test/resources/activities/access.json
new file mode 100644
index 0000000..93bc6e2
--- /dev/null
+++ b/streams-util/src/test/resources/activities/access.json
@@ -0,0 +1,17 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "access",
+  "object": {
+    "objectType": "file",
+    "displayName": "4Q2012 Sales Forecast.xls"
+  },
+  "published": "2012-12-12T12:12:12Z",
+  "title": "Joe accessed the file \"4Q2012 Sales Forecast.xls\""
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/acknowledge.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/acknowledge.json b/streams-util/src/test/resources/activities/acknowledge.json
new file mode 100644
index 0000000..2b69fa7
--- /dev/null
+++ b/streams-util/src/test/resources/activities/acknowledge.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "acknowledge",
+  "object": {
+    "objectType": "issue",
+    "displayName": "#123: There is a problem with the build"
+  },
+  "content": "Sally acknowledged Issue #123"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/add.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/add.json b/streams-util/src/test/resources/activities/add.json
new file mode 100644
index 0000000..b4e8151
--- /dev/null
+++ b/streams-util/src/test/resources/activities/add.json
@@ -0,0 +1,21 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "add",
+  "object": {
+    "objectType": "image",
+    "displayName": "My cat",
+    "fullImage": {"url": "http://example.org/cat.jpg"}
+  },
+  "target": {
+    "objectType": "collection",
+    "displayName": "Joe's Photo Album",
+    "objectTypes": ["image"]
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/agree.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/agree.json b/streams-util/src/test/resources/activities/agree.json
new file mode 100644
index 0000000..3034cd8
--- /dev/null
+++ b/streams-util/src/test/resources/activities/agree.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "agree",
+  "object": {
+    "objectType": "article",
+    "displayName": "Some Random Article Online"
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/append.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/append.json b/streams-util/src/test/resources/activities/append.json
new file mode 100644
index 0000000..d8fb3be
--- /dev/null
+++ b/streams-util/src/test/resources/activities/append.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "append",
+  "object": {"content": "This is some text"},
+  "target": {
+    "objectType": "file",
+    "displayName": "log.txt"
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/approve.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/approve.json b/streams-util/src/test/resources/activities/approve.json
new file mode 100644
index 0000000..b6f378e
--- /dev/null
+++ b/streams-util/src/test/resources/activities/approve.json
@@ -0,0 +1,20 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "approve",
+  "object": {
+    "objectType": "task",
+    "actor": {"displayName": "Joe"},
+    "verb": "join",
+    "object": {
+      "objectType": "group",
+      "displayName": "Administrators"
+    }
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/archive.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/archive.json b/streams-util/src/test/resources/activities/archive.json
new file mode 100644
index 0000000..557dcdf
--- /dev/null
+++ b/streams-util/src/test/resources/activities/archive.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "archive",
+  "object": {
+    "objectType": "file",
+    "displayName": "4Q2012 Sales Forecast.xls"
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/assign.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/assign.json b/streams-util/src/test/resources/activities/assign.json
new file mode 100644
index 0000000..51b8a51
--- /dev/null
+++ b/streams-util/src/test/resources/activities/assign.json
@@ -0,0 +1,20 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "assign",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #123: Some Issue"
+  },
+  "target": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "title": "Sally assigned Issue #123 to Joe"
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/at.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/at.json b/streams-util/src/test/resources/activities/at.json
new file mode 100644
index 0000000..64a77f9
--- /dev/null
+++ b/streams-util/src/test/resources/activities/at.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "at",
+  "object": {
+    "objectType": "place",
+    "displayName": "Acme, Co."
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/attach.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/attach.json b/streams-util/src/test/resources/activities/attach.json
new file mode 100644
index 0000000..716616b
--- /dev/null
+++ b/streams-util/src/test/resources/activities/attach.json
@@ -0,0 +1,20 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "attach",
+  "object": {
+    "objectType": "binary",
+    "data": "dGhpcyBpcyB1bmNvbXByZXNzZWQgZGF0YQo="
+  },
+  "target": {
+    "objectType": "issue",
+    "displayName": "Issue #123"
+  },
+  "title": "Sally added an attachment to Issue #123"
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/attend.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/attend.json b/streams-util/src/test/resources/activities/attend.json
new file mode 100644
index 0000000..f8c0838
--- /dev/null
+++ b/streams-util/src/test/resources/activities/attend.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "attend",
+  "object": {
+    "objectType": "event",
+    "displayName": "Sally's Meeting"
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/author.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/author.json b/streams-util/src/test/resources/activities/author.json
new file mode 100644
index 0000000..1903700
--- /dev/null
+++ b/streams-util/src/test/resources/activities/author.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "author",
+  "object": {
+    "objectType": "file",
+    "displayName": "4Q2012 Sales Forecast.xls"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/authorize.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/authorize.json b/streams-util/src/test/resources/activities/authorize.json
new file mode 100644
index 0000000..2d9d1b3
--- /dev/null
+++ b/streams-util/src/test/resources/activities/authorize.json
@@ -0,0 +1,23 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "authorize",
+  "object": {
+    "objectType": "task",
+    "actor": {
+      "objectType": "person",
+      "displayName": "Sally"
+    },
+    "verb": "access",
+    "object": {
+      "objectType": "place",
+      "displayName": "Joe's Home"
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/borrow.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/borrow.json b/streams-util/src/test/resources/activities/borrow.json
new file mode 100644
index 0000000..e21809a
--- /dev/null
+++ b/streams-util/src/test/resources/activities/borrow.json
@@ -0,0 +1,21 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "borrow",
+  "object": {
+    "objectType": "book",
+    "displayName": "Cloud Atlas"
+  },
+  "target": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "title": "Sally borrowed the book 'Cloud Atlas' from Joe"
+}
+    

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/build.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/build.json b/streams-util/src/test/resources/activities/build.json
new file mode 100644
index 0000000..78878e1
--- /dev/null
+++ b/streams-util/src/test/resources/activities/build.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "build",
+  "object": {
+    "objectType": "application",
+    "displayName": "MyApp Builder 12345"
+  }
+}
+   

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/cancel.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/cancel.json b/streams-util/src/test/resources/activities/cancel.json
new file mode 100644
index 0000000..b7aba81
--- /dev/null
+++ b/streams-util/src/test/resources/activities/cancel.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "cancel",
+  "object": {
+    "objectType": "offer",
+    "displayName": "Free Money!"
+  },
+  "title": "Sally cancelled the offer for free money."
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/checkin.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/checkin.json b/streams-util/src/test/resources/activities/checkin.json
new file mode 100644
index 0000000..97216b9
--- /dev/null
+++ b/streams-util/src/test/resources/activities/checkin.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "checkin",
+  "object": {
+    "objectType": "place",
+    "displayName": "Acme, Co"
+  },
+  "title": "Joe checked in at Acme, Co"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/close.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/close.json b/streams-util/src/test/resources/activities/close.json
new file mode 100644
index 0000000..362e3f6
--- /dev/null
+++ b/streams-util/src/test/resources/activities/close.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "close",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #123"
+  },
+  "title": "Joe closed issue #123"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/complete.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/complete.json b/streams-util/src/test/resources/activities/complete.json
new file mode 100644
index 0000000..06694a7
--- /dev/null
+++ b/streams-util/src/test/resources/activities/complete.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "complete",
+  "object": {
+    "objectType": "process",
+    "displayName": "Some long process"
+  }
+}
+    

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/confirm.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/confirm.json b/streams-util/src/test/resources/activities/confirm.json
new file mode 100644
index 0000000..9307c38
--- /dev/null
+++ b/streams-util/src/test/resources/activities/confirm.json
@@ -0,0 +1,17 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "confirm",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #123"
+  },
+  "title": "Joe confirmed issue #123"
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/consume.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/consume.json b/streams-util/src/test/resources/activities/consume.json
new file mode 100644
index 0000000..ed907e3
--- /dev/null
+++ b/streams-util/src/test/resources/activities/consume.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "consume",
+  "object": {
+    "objectType": "product",
+    "displayName": "Some amazing product"
+  }
+}
+    

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/create.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/create.json b/streams-util/src/test/resources/activities/create.json
new file mode 100644
index 0000000..5d8afb3
--- /dev/null
+++ b/streams-util/src/test/resources/activities/create.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "create",
+  "object": {
+    "objectType": "product",
+    "displayName": "Some amazing product"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/delete.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/delete.json b/streams-util/src/test/resources/activities/delete.json
new file mode 100644
index 0000000..6943046
--- /dev/null
+++ b/streams-util/src/test/resources/activities/delete.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "delete",
+  "object": {
+    "objectType": "file",
+    "displayName": "4Q2012 Sales Forecast.xls"
+  },
+  "title": "Joe is probably going to get fired."
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/deliver.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/deliver.json b/streams-util/src/test/resources/activities/deliver.json
new file mode 100644
index 0000000..620f0b5
--- /dev/null
+++ b/streams-util/src/test/resources/activities/deliver.json
@@ -0,0 +1,20 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "deliver",
+  "object": {
+    "objectType": "note",
+    "displayName": "Bad News",
+    "content": "Joe deleted the sales forecast"
+  },
+  "target": {
+    "objectType": "person",
+    "displayName": "Joe's Boss"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/deny.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/deny.json b/streams-util/src/test/resources/activities/deny.json
new file mode 100644
index 0000000..b83ca60
--- /dev/null
+++ b/streams-util/src/test/resources/activities/deny.json
@@ -0,0 +1,23 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "deny",
+  "object": {
+    "objectType": "task",
+    "actor": {
+      "objectType": "person",
+      "displayName": "Joe"
+    },
+    "verb": "delete",
+    "object": {
+      "objectType": "file",
+      "displayName": "4Q2012 Sales Forecast.xls"
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/disagree.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/disagree.json b/streams-util/src/test/resources/activities/disagree.json
new file mode 100644
index 0000000..8614e88
--- /dev/null
+++ b/streams-util/src/test/resources/activities/disagree.json
@@ -0,0 +1,30 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "disagree",
+  "object": {
+    "actor": {
+      "objectType": "person",
+      "displayName": "Joe"
+    },
+    "verb": "deny",
+    "object": {
+      "objectType": "task",
+      "actor": {
+        "objectType": "person",
+        "displayName": "Joe"
+      },
+      "verb": "delete",
+      "object": {
+        "objectType": "file",
+        "displayName": "4Q2012 Sales Forecast.xls"
+      }
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/dislike.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/dislike.json b/streams-util/src/test/resources/activities/dislike.json
new file mode 100644
index 0000000..16c2148
--- /dev/null
+++ b/streams-util/src/test/resources/activities/dislike.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "dislike",
+  "object": {
+    "objectType": "person",
+    "displayName": "Sally"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/experience.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/experience.json b/streams-util/src/test/resources/activities/experience.json
new file mode 100644
index 0000000..d81d024
--- /dev/null
+++ b/streams-util/src/test/resources/activities/experience.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally"
+  },
+  "verb": "experience",
+  "object": {
+    "objectType": "event",
+    "displayName": "Disciplinary Action for Joe"
+  }
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/favorite.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/favorite.json b/streams-util/src/test/resources/activities/favorite.json
new file mode 100644
index 0000000..3df99bf
--- /dev/null
+++ b/streams-util/src/test/resources/activities/favorite.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe's Boss"
+  },
+  "verb": "favorite",
+  "object": {
+    "objectType": "person",
+    "displayName": "Sally"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/find.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/find.json b/streams-util/src/test/resources/activities/find.json
new file mode 100644
index 0000000..9c25c59
--- /dev/null
+++ b/streams-util/src/test/resources/activities/find.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "find",
+  "object": {
+    "objectType": "application",
+    "displayName": "Unapproved Software Application"
+  },
+  "location": {
+    "objectType": "place",
+    "displayName": "Sally's Computer"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/flag-as-inappropriate.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/flag-as-inappropriate.json b/streams-util/src/test/resources/activities/flag-as-inappropriate.json
new file mode 100644
index 0000000..6f4d202
--- /dev/null
+++ b/streams-util/src/test/resources/activities/flag-as-inappropriate.json
@@ -0,0 +1,24 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Sally's Boss"
+  },
+  "verb": "flag-as-inappropriate",
+  "object": {
+    "objectType": "application",
+    "displayName": "Unapproved Software Application",
+    "location": {
+      "displayName": "Sally's Computer"
+    }
+  },
+  "context": {
+    "objectType": "issue",
+    "displayName": "Issue #125",
+    "types": ["http://example.org/violation-of-corporate-policy"]
+  }
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/follow.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/follow.json b/streams-util/src/test/resources/activities/follow.json
new file mode 100644
index 0000000..fc8c992
--- /dev/null
+++ b/streams-util/src/test/resources/activities/follow.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe"
+  },
+  "verb": "follow",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #125"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/give.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/give.json b/streams-util/src/test/resources/activities/give.json
new file mode 100644
index 0000000..f145296
--- /dev/null
+++ b/streams-util/src/test/resources/activities/give.json
@@ -0,0 +1,28 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Joe's Boss"
+  },
+  "verb": "give",
+  "object": {
+    "objectType": "note",
+    "displayName": "Notice of Employment Termination"
+  },
+  "target": {
+    "objectType": "collection",
+    "items": [
+      {
+        "objectType": "person",
+        "displayName": "Joe"
+      },
+      {
+        "objectType": "person",
+        "displayName": "Sally"
+      }
+    ]
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/host.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/host.json b/streams-util/src/test/resources/activities/host.json
new file mode 100644
index 0000000..3331353
--- /dev/null
+++ b/streams-util/src/test/resources/activities/host.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Bob"
+  },
+  "verb": "host",
+  "object": {
+    "objectType": "event",
+    "displayName": "Job Interview"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/ignore.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/ignore.json b/streams-util/src/test/resources/activities/ignore.json
new file mode 100644
index 0000000..012013a
--- /dev/null
+++ b/streams-util/src/test/resources/activities/ignore.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "ignore",
+  "object": {
+    "objectType": "note",
+    "displayName": "Joe's request for his job back."
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/insert.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/insert.json b/streams-util/src/test/resources/activities/insert.json
new file mode 100644
index 0000000..57bda66
--- /dev/null
+++ b/streams-util/src/test/resources/activities/insert.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Bob"
+  },
+  "verb": "insert",
+  "object": {
+    "objectType": "note",
+    "displayName": "Notes about Employee Disciplinary Actions"
+  },
+  "target": {
+    "objectType": "file",
+    "displayName": "2013 Corporate Policy Updates.doc"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/install.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/install.json b/streams-util/src/test/resources/activities/install.json
new file mode 100644
index 0000000..1ecdecd
--- /dev/null
+++ b/streams-util/src/test/resources/activities/install.json
@@ -0,0 +1,18 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "install",
+  "object": {
+    "objectType": "application",
+    "displayName": "Approved Software Scanning Tool",
+    "location": {
+      "displayName": "All computers in Building A"
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/interact.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/interact.json b/streams-util/src/test/resources/activities/interact.json
new file mode 100644
index 0000000..f427513
--- /dev/null
+++ b/streams-util/src/test/resources/activities/interact.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Bob"
+  },
+  "verb": "interact",
+  "object": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "title": "Bob called Laura."
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/invite.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/invite.json b/streams-util/src/test/resources/activities/invite.json
new file mode 100644
index 0000000..7c84b78
--- /dev/null
+++ b/streams-util/src/test/resources/activities/invite.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "invite",
+  "object": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "target": {
+    "objectType": "event",
+    "displayName": "Job Interview"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/join.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/join.json b/streams-util/src/test/resources/activities/join.json
new file mode 100644
index 0000000..7996a9b
--- /dev/null
+++ b/streams-util/src/test/resources/activities/join.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "join",
+  "object": {
+    "objectType": "organization",
+    "displayName": "Acme, Co"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/leave.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/leave.json b/streams-util/src/test/resources/activities/leave.json
new file mode 100644
index 0000000..08516c5
--- /dev/null
+++ b/streams-util/src/test/resources/activities/leave.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "leave",
+  "object": {
+    "objectType": "organization",
+    "displayName": "Other, Co"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/like.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/like.json b/streams-util/src/test/resources/activities/like.json
new file mode 100644
index 0000000..853676f
--- /dev/null
+++ b/streams-util/src/test/resources/activities/like.json
@@ -0,0 +1,22 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "like",
+  "object": {
+    "actor": {
+      "objectType": "person",
+      "displayName": "Mark"
+    },
+    "verb": "join",
+    "object": {
+      "objectType": "organization",
+      "displayName": "Acme, Co"
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/listen.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/listen.json b/streams-util/src/test/resources/activities/listen.json
new file mode 100644
index 0000000..1268060
--- /dev/null
+++ b/streams-util/src/test/resources/activities/listen.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "listen",
+  "object": {
+    "objectType": "audio",
+    "displayName": "Welcome to the Company (Podcast).mp3"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/lose.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/lose.json b/streams-util/src/test/resources/activities/lose.json
new file mode 100644
index 0000000..073e914
--- /dev/null
+++ b/streams-util/src/test/resources/activities/lose.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "organization",
+    "displayName": "New York Yankees"
+  },
+  "verb": "lose",
+  "object": {
+    "objectType": "game",
+    "displayName": "World Series"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/make-friend.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/make-friend.json b/streams-util/src/test/resources/activities/make-friend.json
new file mode 100644
index 0000000..1acf539
--- /dev/null
+++ b/streams-util/src/test/resources/activities/make-friend.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "make-friend",
+  "object": {
+    "objectType": "person",
+    "displayName": "Laura"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/open.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/open.json b/streams-util/src/test/resources/activities/open.json
new file mode 100644
index 0000000..4bf47cd
--- /dev/null
+++ b/streams-util/src/test/resources/activities/open.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "open",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #126"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/play.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/play.json b/streams-util/src/test/resources/activities/play.json
new file mode 100644
index 0000000..0605662
--- /dev/null
+++ b/streams-util/src/test/resources/activities/play.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "play",
+  "object": {
+    "objectType": "audio",
+    "displayName": "Call Me Maybe"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/post.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/post.json b/streams-util/src/test/resources/activities/post.json
new file mode 100644
index 0000000..73cfff7
--- /dev/null
+++ b/streams-util/src/test/resources/activities/post.json
@@ -0,0 +1,25 @@
+{
+  "published": "2011-02-10T15:04:55Z",
+  "actor": {
+    "url": "http://example.org/martin",
+    "objectType" : "person",
+    "id": "tag:example.org,2011:martin",
+    "image": {
+      "url": "http://example.org/martin/image",
+      "width": 250,
+      "height": 250
+    },
+    "displayName": "Martin Smith"
+  },
+  "verb": "post",
+  "object" : {
+    "url": "http://example.org/blog/2011/02/entry",
+    "id": "tag:example.org,2011:abc123/xyz"
+  },
+  "target" : {
+    "url": "http://example.org/blog/",
+    "objectType": "blog",
+    "id": "tag:example.org,2011:abc123",
+    "displayName": "Martin's Blog"
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/present.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/present.json b/streams-util/src/test/resources/activities/present.json
new file mode 100644
index 0000000..8f4df12
--- /dev/null
+++ b/streams-util/src/test/resources/activities/present.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "present",
+  "object": {
+    "objectType": "file",
+    "displayName": "1Q2013 Sales Forecast.ppt"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/purchase.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/purchase.json b/streams-util/src/test/resources/activities/purchase.json
new file mode 100644
index 0000000..3354597
--- /dev/null
+++ b/streams-util/src/test/resources/activities/purchase.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "purchase",
+  "object": {
+    "objectType": "video",
+    "displayName": "The Avengers"
+  },
+  "title": "Mark purchased the movie, The Avengers"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/qualify.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/qualify.json b/streams-util/src/test/resources/activities/qualify.json
new file mode 100644
index 0000000..630bda0
--- /dev/null
+++ b/streams-util/src/test/resources/activities/qualify.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "qualify",
+  "object": {
+    "objectType": "offer",
+    "displayName": "Free Money!"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/read.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/read.json b/streams-util/src/test/resources/activities/read.json
new file mode 100644
index 0000000..3509886
--- /dev/null
+++ b/streams-util/src/test/resources/activities/read.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "read",
+  "object": {
+    "objectType": "book",
+    "displayName": "Cloud Atlas"
+  }
+}
+      

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/receive.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/receive.json b/streams-util/src/test/resources/activities/receive.json
new file mode 100644
index 0000000..d61245e
--- /dev/null
+++ b/streams-util/src/test/resources/activities/receive.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "receive",
+  "object": {
+    "objectType": "badge",
+    "displayName": "Most Checkins in 24 hours"
+  },
+  "title": "Laura was awarded a badge for \"Most Checkins in 24 hours\""
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/reject.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/reject.json b/streams-util/src/test/resources/activities/reject.json
new file mode 100644
index 0000000..84d1ab1
--- /dev/null
+++ b/streams-util/src/test/resources/activities/reject.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "reject",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #126"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/remove-friend.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/remove-friend.json b/streams-util/src/test/resources/activities/remove-friend.json
new file mode 100644
index 0000000..0a593e9
--- /dev/null
+++ b/streams-util/src/test/resources/activities/remove-friend.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "remove-friend",
+  "object": {
+    "objectType": "person",
+    "displayName": "Laura"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/remove.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/remove.json b/streams-util/src/test/resources/activities/remove.json
new file mode 100644
index 0000000..1f386e9
--- /dev/null
+++ b/streams-util/src/test/resources/activities/remove.json
@@ -0,0 +1,23 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "remove",
+  "object": {
+    "objectType": "image",
+    "displayName": "Cat Photo",
+    "fullImage": {
+      "url": "http://example.org/cats.jpg"
+    }
+  },
+  "target": {
+    "objectType": "collection",
+    "displayName": "Cat Photo Album",
+    "objectTypes": ["image"]
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/replace.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/replace.json b/streams-util/src/test/resources/activities/replace.json
new file mode 100644
index 0000000..f19a35c
--- /dev/null
+++ b/streams-util/src/test/resources/activities/replace.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "replace",
+  "object": {
+    "objectType": "file",
+    "displayName": "Updated 1Q2014 Sales Forecast.xls"
+  },
+  "target": {
+    "objectType": "file",
+    "displayName": "1Q2014 Sales Forecast.xls"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/request-friend.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/request-friend.json b/streams-util/src/test/resources/activities/request-friend.json
new file mode 100644
index 0000000..3e571ee
--- /dev/null
+++ b/streams-util/src/test/resources/activities/request-friend.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "request-friend",
+  "object": {
+    "objectType": "person",
+    "displayName": "Laura"
+  }
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/request.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/request.json b/streams-util/src/test/resources/activities/request.json
new file mode 100644
index 0000000..3e7c285
--- /dev/null
+++ b/streams-util/src/test/resources/activities/request.json
@@ -0,0 +1,23 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "request",
+  "object": {
+    "objectType": "task",
+    "actor": {
+      "objectType": "person",
+      "displayName": "Mark"
+    },
+    "verb": "join",
+    "object": {
+      "objectType": "event",
+      "displayName": "The Big Meeting"
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/resolve.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/resolve.json b/streams-util/src/test/resources/activities/resolve.json
new file mode 100644
index 0000000..14998cf
--- /dev/null
+++ b/streams-util/src/test/resources/activities/resolve.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "resolve",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #126"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/retract.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/retract.json b/streams-util/src/test/resources/activities/retract.json
new file mode 100644
index 0000000..9229868
--- /dev/null
+++ b/streams-util/src/test/resources/activities/retract.json
@@ -0,0 +1,26 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "retract",
+  "object": {
+    "actor": {
+      "objectType": "person",
+      "displayName": "Mark"
+    },
+    "verb": "return",
+    "object": {
+      "objectType": "book",
+      "displayName": "Cloud Atlas"
+    },
+    "target": {
+      "objectType": "person",
+      "displayName": "Laura"
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/return.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/return.json b/streams-util/src/test/resources/activities/return.json
new file mode 100644
index 0000000..d6b8861
--- /dev/null
+++ b/streams-util/src/test/resources/activities/return.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "return",
+  "object": {
+    "objectType": "book",
+    "displayName": "Cloud Atlas"
+  },
+  "target": {
+    "objectType": "person",
+    "displayName": "Laura"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/rsvp-maybe.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/rsvp-maybe.json b/streams-util/src/test/resources/activities/rsvp-maybe.json
new file mode 100644
index 0000000..b1ec1b5
--- /dev/null
+++ b/streams-util/src/test/resources/activities/rsvp-maybe.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "rsvp-maybe",
+  "object": {
+    "objectType": "event",
+    "displayName": "The Big Meeting"
+  },
+  "title": "Laura might attend The Big Meeting"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/rsvp-no.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/rsvp-no.json b/streams-util/src/test/resources/activities/rsvp-no.json
new file mode 100644
index 0000000..532b096
--- /dev/null
+++ b/streams-util/src/test/resources/activities/rsvp-no.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "rsvp-no",
+  "object": {
+    "objectType": "event",
+    "displayName": "The Big Meeting"
+  },
+  "title": "Mark will not attend the Big Meeting"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/rsvp-yes.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/rsvp-yes.json b/streams-util/src/test/resources/activities/rsvp-yes.json
new file mode 100644
index 0000000..170a5c4
--- /dev/null
+++ b/streams-util/src/test/resources/activities/rsvp-yes.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "rsvp-yes",
+  "object": {
+    "objectType": "event",
+    "displayName": "The Big Meeting"
+  },
+  "title": "Laura will attend the Big Meeting"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/satisfy.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/satisfy.json b/streams-util/src/test/resources/activities/satisfy.json
new file mode 100644
index 0000000..16151fa
--- /dev/null
+++ b/streams-util/src/test/resources/activities/satisfy.json
@@ -0,0 +1,21 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "satisfy",
+  "object": {
+    "objectType": "http://example.org/condition",
+    "displayName": "Some Condition"
+  },
+  "target": {
+    "objectType": "http://example.org/parole",
+    "displayName": "Terms of Parole"
+  },
+  "title": "Mark has satisfied a condition of his parole."
+}
+      

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/save.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/save.json b/streams-util/src/test/resources/activities/save.json
new file mode 100644
index 0000000..70c0f5f
--- /dev/null
+++ b/streams-util/src/test/resources/activities/save.json
@@ -0,0 +1,20 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "save",
+  "object": {
+    "objectType": "note",
+    "displayName": "A note about something important"
+  },
+  "target": {
+    "objectType": "collection",
+    "displayName": "Laura's Reading List"
+  },
+  "title": "Laura saved the note to her reading list"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/schedule.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/schedule.json b/streams-util/src/test/resources/activities/schedule.json
new file mode 100644
index 0000000..f214290
--- /dev/null
+++ b/streams-util/src/test/resources/activities/schedule.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "schedule",
+  "object": {
+    "objectType": "event",
+    "displayName": "The Big Meeting"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/search.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/search.json b/streams-util/src/test/resources/activities/search.json
new file mode 100644
index 0000000..511b612
--- /dev/null
+++ b/streams-util/src/test/resources/activities/search.json
@@ -0,0 +1,21 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "search",
+  "object": {
+    "objectType": "place",
+    "displayName": "Big Hotel",
+    "address": {
+      "locality": "New York",
+      "region": "NY"
+    }
+  },
+  "title": "Laura searched for a hotel in New York City, NY"
+}
+      

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/sell.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/sell.json b/streams-util/src/test/resources/activities/sell.json
new file mode 100644
index 0000000..ab07fb0
--- /dev/null
+++ b/streams-util/src/test/resources/activities/sell.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "sell",
+  "object": {
+    "objectType": "product",
+    "displayName": "A cool product"
+  },
+  "target": {
+    "objectType": "person",
+    "displayName": "Laura"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/send.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/send.json b/streams-util/src/test/resources/activities/send.json
new file mode 100644
index 0000000..b392ce8
--- /dev/null
+++ b/streams-util/src/test/resources/activities/send.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "send",
+  "object": {
+    "objectType": "note",
+    "content": "Thank you for the cool product."
+  },
+  "target": {
+    "objectType": "person",
+    "displayName": "Mark"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/share.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/share.json b/streams-util/src/test/resources/activities/share.json
new file mode 100644
index 0000000..dc7b9f1
--- /dev/null
+++ b/streams-util/src/test/resources/activities/share.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "share",
+  "object": {
+    "objectType": "note",
+    "displayName": "An important note"
+  },
+  "title": "Mark shared an important note."
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/sponsor.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/sponsor.json b/streams-util/src/test/resources/activities/sponsor.json
new file mode 100644
index 0000000..156c322
--- /dev/null
+++ b/streams-util/src/test/resources/activities/sponsor.json
@@ -0,0 +1,17 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "organization",
+    "displayName": "Acme, Co"
+  },
+  "verb": "sponsor",
+  "object": {
+    "objectType": "game",
+    "displayName": "World Series"
+  },
+  "title": "Acme, Co sponsored the World Series"
+}
+      

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/start.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/start.json b/streams-util/src/test/resources/activities/start.json
new file mode 100644
index 0000000..b9aede2
--- /dev/null
+++ b/streams-util/src/test/resources/activities/start.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "start",
+  "object": {
+    "objectType": "process",
+    "displayName": "A Long Running Process"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/stop-following.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/stop-following.json b/streams-util/src/test/resources/activities/stop-following.json
new file mode 100644
index 0000000..04b83e7
--- /dev/null
+++ b/streams-util/src/test/resources/activities/stop-following.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "stop-following",
+  "object": {
+    "objectType": "person",
+    "displayName": "Mark"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/submit.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/submit.json b/streams-util/src/test/resources/activities/submit.json
new file mode 100644
index 0000000..0fd3c34
--- /dev/null
+++ b/streams-util/src/test/resources/activities/submit.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "submit",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #127"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/tag.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/tag.json b/streams-util/src/test/resources/activities/tag.json
new file mode 100644
index 0000000..dba6112
--- /dev/null
+++ b/streams-util/src/test/resources/activities/tag.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "tag",
+  "object": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "target": {
+    "objectType": "image",
+    "displayName": "Pictures of my cats"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/terminate.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/terminate.json b/streams-util/src/test/resources/activities/terminate.json
new file mode 100644
index 0000000..f4d886e
--- /dev/null
+++ b/streams-util/src/test/resources/activities/terminate.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "terminate",
+  "object": {
+    "objectType": "process",
+    "displayName": "A long running process"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/tie.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/tie.json b/streams-util/src/test/resources/activities/tie.json
new file mode 100644
index 0000000..71a3c39
--- /dev/null
+++ b/streams-util/src/test/resources/activities/tie.json
@@ -0,0 +1,24 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "collection",
+    "items": [
+      {
+        "objectType": "organization",
+        "displayName": "New York Giants"
+      },
+      {
+        "objectType": "organization",
+        "displayName": "Oakland Raiders"
+      }
+    ]
+  },
+  "verb": "tie",
+  "object": {
+    "objectType": "game",
+    "displayName": "Super Bowl"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/unfavorite.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/unfavorite.json b/streams-util/src/test/resources/activities/unfavorite.json
new file mode 100644
index 0000000..b1e7bcd
--- /dev/null
+++ b/streams-util/src/test/resources/activities/unfavorite.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "unfavorite",
+  "object": {
+    "objectType": "article",
+    "displayName": "Some article"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/unlike.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/unlike.json b/streams-util/src/test/resources/activities/unlike.json
new file mode 100644
index 0000000..9bc583f
--- /dev/null
+++ b/streams-util/src/test/resources/activities/unlike.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "unlike",
+  "object": {
+    "objectType": "article",
+    "displayName": "Some article"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/unsatisfy.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/unsatisfy.json b/streams-util/src/test/resources/activities/unsatisfy.json
new file mode 100644
index 0000000..739823c
--- /dev/null
+++ b/streams-util/src/test/resources/activities/unsatisfy.json
@@ -0,0 +1,20 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "unsatisfy",
+  "object": {
+    "objectType": "http://example.org/condition",
+    "displayName": "Some Condition"
+  },
+  "target": {
+    "objectType": "http://example.org/parole",
+    "displayName": "Terms of Parole"
+  },
+  "title": "Mark has not satisfied a condition of his parole."
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/unsave.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/unsave.json b/streams-util/src/test/resources/activities/unsave.json
new file mode 100644
index 0000000..a9a21f0
--- /dev/null
+++ b/streams-util/src/test/resources/activities/unsave.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "unsave",
+  "object": {
+    "objectType": "article",
+    "displayName": "Some article"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/unshare.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/unshare.json b/streams-util/src/test/resources/activities/unshare.json
new file mode 100644
index 0000000..4d45a6d
--- /dev/null
+++ b/streams-util/src/test/resources/activities/unshare.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "unshare",
+  "object": {
+    "objectType": "article",
+    "displayName": "Some article"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/update.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/update.json b/streams-util/src/test/resources/activities/update.json
new file mode 100644
index 0000000..7dbed20
--- /dev/null
+++ b/streams-util/src/test/resources/activities/update.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "update",
+  "object": {
+    "objectType": "article",
+    "displayName": "Some article"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/use.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/use.json b/streams-util/src/test/resources/activities/use.json
new file mode 100644
index 0000000..699c4b8
--- /dev/null
+++ b/streams-util/src/test/resources/activities/use.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "use",
+  "object": {
+    "objectType": "product",
+    "displayName": "A cool product"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/watch.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/watch.json b/streams-util/src/test/resources/activities/watch.json
new file mode 100644
index 0000000..2052f06
--- /dev/null
+++ b/streams-util/src/test/resources/activities/watch.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "watch",
+  "object": {
+    "objectType": "video",
+    "displayName": "Some random movie"
+  }
+}
+      

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/activities/win.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/activities/win.json b/streams-util/src/test/resources/activities/win.json
new file mode 100644
index 0000000..2cf9d5a
--- /dev/null
+++ b/streams-util/src/test/resources/activities/win.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "organization",
+    "displayName": "Arizona Diamond Backs"
+  },
+  "verb": "win",
+  "object": {
+    "objectType": "game",
+    "displayName": "World Series"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/media_link.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/media_link.json b/streams-util/src/test/resources/media_link.json
new file mode 100644
index 0000000..0bed6f0
--- /dev/null
+++ b/streams-util/src/test/resources/media_link.json
@@ -0,0 +1,7 @@
+{
+    "$schema": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/media_link.json#",
+    "duration": 30000,
+    "height": 480,
+    "width": 640,
+    "url": "http://youtube.com/s7hc30sb"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/objects/event.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/event.json b/streams-util/src/test/resources/objects/event.json
new file mode 100644
index 0000000..ae1108e
--- /dev/null
+++ b/streams-util/src/test/resources/objects/event.json
@@ -0,0 +1,18 @@
+{
+    "objectType": "event",
+    "displayName": "Meeting with Joe",
+    "startTime": "2012-12-12T12:00:00Z",
+    "endTime: "2012-12-12T13:00:00Z",
+    "invited": {
+      "items": [
+        {"objectType": "person",
+         "displayName": "Joe"}
+      ]
+    },
+    "attending": {
+      "items": [
+        {"objectType": "person",
+         "displayName": "Joe"}
+      ]
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/objects/group.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/group.json b/streams-util/src/test/resources/objects/group.json
new file mode 100644
index 0000000..9721874
--- /dev/null
+++ b/streams-util/src/test/resources/objects/group.json
@@ -0,0 +1,16 @@
+{
+  "objectType": "group",
+  "displayName": "My Work Group",
+  "members": {
+	"items": [
+	  {
+		"objectType": "person",
+		"displayName": "Laura"
+	  },
+	  {
+		"objectType": "person",
+		"displayName": "Mark"
+	  }
+	]
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/objects/issue.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/issue.json b/streams-util/src/test/resources/objects/issue.json
new file mode 100644
index 0000000..86bc6d2
--- /dev/null
+++ b/streams-util/src/test/resources/objects/issue.json
@@ -0,0 +1,9 @@
+{
+   "objectType": "issue",
+   "displayName": "Terms of Use Violation",
+   "url": "http://.../terms-of-use",
+   "types": [
+	 "http://example.org/codes/inappropriateMaterial",
+	 "http://example.org/codes/copyrightViolation"
+   ]
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/objects/note.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/note.json b/streams-util/src/test/resources/objects/note.json
new file mode 100644
index 0000000..15a4495
--- /dev/null
+++ b/streams-util/src/test/resources/objects/note.json
@@ -0,0 +1,12 @@
+{
+  "objectType": "note",
+  "displayName": "A note with a binary attachment",
+  "attachments": [
+	{
+	  "objectType": "binary",
+	  "data": "dGhpcyBpcyB1bmNvbXByZXNzZWQgZGF0YQo=",
+	  "md5": "827ae7e1ab45e4dd591d087c741e5770",
+	  "length": 25
+	}
+  ]
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/objects/permission.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/permission.json b/streams-util/src/test/resources/objects/permission.json
new file mode 100644
index 0000000..24b6fa2
--- /dev/null
+++ b/streams-util/src/test/resources/objects/permission.json
@@ -0,0 +1,9 @@
+{
+    "objectType": "permission",
+    "displayName": "Permission to Edit File: 2Q2014 Sales Forecast.xls",
+    "scope": {
+      "objectType": "file",
+      "displayName": "2Q2014 Sales Forecast.xls"
+    },
+    "actions": ["modify", "delete", "create"]
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/objects/place.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/place.json b/streams-util/src/test/resources/objects/place.json
new file mode 100644
index 0000000..8e454be
--- /dev/null
+++ b/streams-util/src/test/resources/objects/place.json
@@ -0,0 +1,9 @@
+{
+  "objectType": "place",
+  "displayName": "Some Random Location on Earth",
+  "position": {
+	"latitude": 34.34,
+	"longitude": -127.23,
+	"altitude": 100.05
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/objects/task.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/task.json b/streams-util/src/test/resources/objects/task.json
new file mode 100644
index 0000000..f4878dc
--- /dev/null
+++ b/streams-util/src/test/resources/objects/task.json
@@ -0,0 +1,16 @@
+{
+    "objectType": "task",
+    "displayName": "James needs to read the spec",
+    "by": "2012-12-12T12:12:12Z",
+    "verb": "read",
+    "actor": {
+      "objectType": "person",
+      "displayName": "James"
+    },
+    "object": {
+      "objectType": "file",
+      "displayName": "A specification",
+      "url": "http://example.org/spec.html"
+    },
+    "required": true
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/resources/objects/video.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/objects/video.json b/streams-util/src/test/resources/objects/video.json
new file mode 100644
index 0000000..bc19e89
--- /dev/null
+++ b/streams-util/src/test/resources/objects/video.json
@@ -0,0 +1,8 @@
+{
+    "objectType": "video",
+    "displayName": "Cute little kittens",
+    "embedCode": "<video width="320" height="240" controls="controls">...</video>",
+    "stream": {
+      "url": "http://example.org/my_video.mpg"
+    }
+}


[30/53] [abbrv] incubator-streams git commit: refactoring, testing, documentation, CLI modes

Posted by mf...@apache.org.
refactoring, testing, documentation, CLI modes

break up streams-schemas into streams-util and streams-schema-activitystreams
add index.md to each plugin
specify basepath of jsonschema project-wide
harmonize plugin behavior, code style, docs
ensure all tests pass
add CLI modes


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/d9674f7c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/d9674f7c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/d9674f7c

Branch: refs/heads/invalid_headers
Commit: d9674f7c0706d0e170f123c461d22e56e8f73807
Parents: 61f2736
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Wed Jun 1 12:32:14 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Jun 1 12:52:22 2016 -0500

----------------------------------------------------------------------
 .../spring/streams-cassandra-context.xml        |  25 --
 .../streams-plugin-cassandra/pom.xml            |  13 +-
 .../StreamsCassandraGenerationConfig.java       |   2 +-
 .../StreamsCassandraResourceGenerator.java      |  42 +--
 .../StreamsCassandraResourceGeneratorMojo.java  |  37 +-
 .../src/site/markdown/index.md                  |  22 +-
 ...treamsCassandraResourceGeneratorCLITest.java |  10 +-
 ...reamsCassandraResourceGeneratorMojoTest.java |   9 +-
 .../StreamsCassandraResourceGeneratorTest.java  |  58 +--
 .../resources/streams-plugin-cassandra/pom.xml  |  21 +-
 .../streams-plugin-elasticsearch/pom.xml        |  13 +-
 .../StreamsElasticsearchGenerationConfig.java   |   2 +-
 .../StreamsElasticsearchResourceGenerator.java  |  75 ++--
 ...reamsElasticsearchResourceGeneratorMojo.java |  29 +-
 .../src/site/markdown/index.md                  |  24 +-
 ...msElasticsearchResourceGeneratorCLITest.java |  39 ++
 ...reamsElasticsearchResourceGeneratorTest.java |  59 +--
 .../streams-plugin-elasticsearch/pom.xml        |  23 +-
 streams-plugins/streams-plugin-hbase/pom.xml    |  13 +-
 .../hbase/StreamsHbaseGenerationConfig.java     |   2 +-
 .../hbase/StreamsHbaseResourceGenerator.java    |  41 +-
 .../StreamsHbaseResourceGeneratorMojo.java      |  28 +-
 .../src/site/markdown/index.md                  |  26 +-
 .../StreamsHbaseResourceGeneratorCLITest.java   |   2 +-
 .../StreamsHbaseResourceGeneratorMojoTest.java  |   2 +-
 .../test/StreamsHbaseResourceGeneratorTest.java |  31 +-
 .../test/resources/streams-plugin-hbase/pom.xml |  23 +-
 streams-plugins/streams-plugin-hive/pom.xml     |  13 +-
 .../hive/StreamsHiveGenerationConfig.java       |   3 +-
 .../hive/StreamsHiveResourceGenerator.java      |  35 +-
 .../hive/StreamsHiveResourceGeneratorMojo.java  |  38 +-
 .../src/site/markdown/index.md                  |  28 +-
 .../StreamsHiveResourceGeneratorCLITest.java    |   2 +-
 .../StreamsHiveResourceGeneratorMojoTest.java   |   2 +-
 .../test/StreamsHiveResourceGeneratorTest.java  |  32 +-
 .../test/resources/streams-plugin-hive/pom.xml  |  23 +-
 streams-plugins/streams-plugin-pig/pom.xml      |  13 +-
 .../plugins/pig/StreamsPigGenerationConfig.java |   3 +-
 .../pig/StreamsPigResourceGenerator.java        |  46 +--
 .../pig/StreamsPigResourceGeneratorMojo.java    |  38 +-
 .../src/site/markdown/index.md                  |  24 +-
 .../StreamsPigResourceGeneratorCLITest.java     |   4 +-
 .../StreamsPigResourceGeneratorMojoTest.java    |   4 +-
 .../test/StreamsPigResourceGeneratorTest.java   |  32 +-
 .../test/resources/streams-plugin-pig/pom.xml   |  23 +-
 streams-plugins/streams-plugin-pojo/pom.xml     |  13 +-
 .../plugins/StreamsPojoSourceGenerator.java     |  15 +-
 .../plugins/StreamsPojoSourceGeneratorMojo.java | 154 +-------
 .../src/site/markdown/index.md                  |  24 +-
 .../test/StreamsPojoSourceGeneratorCLITest.java |   2 +-
 .../StreamsPojoSourceGeneratorMojoTest.java     |   2 +-
 .../test/StreamsPojoSourceGeneratorTest.java    |  51 +--
 .../test/resources/streams-plugin-pojo/pom.xml  |  30 +-
 streams-plugins/streams-plugin-scala/pom.xml    |  12 +
 .../streams/plugins/StreamsPojoScala.java       | 371 -------------------
 .../streams/plugins/StreamsPojoScalaMojo.java   |  71 ----
 .../plugins/StreamsScalaSourceGenerator.java    | 351 ++++++++++++++++++
 .../StreamsScalaSourceGeneratorMojo.java        |  59 +++
 .../src/site/markdown/index.md                  |  36 ++
 .../plugins/test/StreamsPojoScalaTest.java      |  55 ---
 .../test/StreamsScalaSourceGeneratorTest.java   |  55 +++
 streams-runtimes/streams-runtime-local/pom.xml  |   2 +-
 streams-schemas/pom.xml                         |  77 +---
 .../org/apache/streams/schema/FieldType.java    |  13 -
 .../org/apache/streams/schema/FieldUtil.java    |  59 ---
 .../org/apache/streams/schema/FileUtil.java     |  76 ----
 .../apache/streams/schema/GenerationConfig.java | 115 ------
 .../java/org/apache/streams/schema/Schema.java  |  57 ---
 .../org/apache/streams/schema/SchemaStore.java  | 283 --------------
 .../org/apache/streams/schema/SchemaUtil.java   |  50 ---
 .../java/org/apache/streams/schema/URIUtil.java |  31 --
 .../src/main/jsonschema/activity.json           | 108 ------
 .../src/main/jsonschema/collection.json         |  47 ---
 .../src/main/jsonschema/media_link.json         |  34 --
 streams-schemas/src/main/jsonschema/object.json |  98 -----
 .../src/main/jsonschema/objectTypes/alert.json  |  19 -
 .../jsonschema/objectTypes/application.json     |  19 -
 .../main/jsonschema/objectTypes/article.json    |  19 -
 .../src/main/jsonschema/objectTypes/audio.json  |  19 -
 .../src/main/jsonschema/objectTypes/badge.json  |  19 -
 .../src/main/jsonschema/objectTypes/binary.json |  19 -
 .../main/jsonschema/objectTypes/bookmark.json   |  19 -
 .../main/jsonschema/objectTypes/comment.json    |  19 -
 .../src/main/jsonschema/objectTypes/device.json |  19 -
 .../src/main/jsonschema/objectTypes/event.json  |  51 ---
 .../src/main/jsonschema/objectTypes/file.json   |  25 --
 .../src/main/jsonschema/objectTypes/folder.json |  19 -
 .../src/main/jsonschema/objectTypes/game.json   |  19 -
 .../src/main/jsonschema/objectTypes/group.json  |  19 -
 .../src/main/jsonschema/objectTypes/image.json  |  22 --
 .../src/main/jsonschema/objectTypes/issue.json  |  25 --
 .../src/main/jsonschema/objectTypes/job.json    |  19 -
 .../src/main/jsonschema/objectTypes/list.json   |  28 --
 .../src/main/jsonschema/objectTypes/note.json   |  19 -
 .../src/main/jsonschema/objectTypes/offer.json  |  19 -
 .../jsonschema/objectTypes/organization.json    |  19 -
 .../src/main/jsonschema/objectTypes/page.json   |  19 -
 .../main/jsonschema/objectTypes/permission.json |  36 --
 .../src/main/jsonschema/objectTypes/person.json |  25 --
 .../jsonschema/objectTypes/photo-album.json     |  19 -
 .../src/main/jsonschema/objectTypes/photo.json  |  23 --
 .../src/main/jsonschema/objectTypes/place.json  |  39 --
 .../main/jsonschema/objectTypes/playlist.json   |  19 -
 .../main/jsonschema/objectTypes/process.json    |  19 -
 .../main/jsonschema/objectTypes/product.json    |  25 --
 .../main/jsonschema/objectTypes/property.json   |  48 ---
 .../main/jsonschema/objectTypes/question.json   |  28 --
 .../src/main/jsonschema/objectTypes/review.json |  22 --
 .../src/main/jsonschema/objectTypes/role.json   |  25 --
 .../main/jsonschema/objectTypes/service.json    |  19 -
 .../src/main/jsonschema/objectTypes/song.json   |  19 -
 .../src/main/jsonschema/objectTypes/status.json |  19 -
 .../src/main/jsonschema/objectTypes/task.json   |  40 --
 .../src/main/jsonschema/objectTypes/team.json   |  19 -
 .../src/main/jsonschema/objectTypes/video.json  |  19 -
 .../src/main/jsonschema/verbs/accept.json       |  24 --
 .../src/main/jsonschema/verbs/access.json       |  24 --
 .../src/main/jsonschema/verbs/acknowledge.json  |  24 --
 .../src/main/jsonschema/verbs/add.json          |  24 --
 .../src/main/jsonschema/verbs/agree.json        |  24 --
 .../src/main/jsonschema/verbs/append.json       |  24 --
 .../src/main/jsonschema/verbs/approve.json      |  24 --
 .../src/main/jsonschema/verbs/archive.json      |  24 --
 .../src/main/jsonschema/verbs/assign.json       |  24 --
 .../src/main/jsonschema/verbs/at.json           |  24 --
 .../src/main/jsonschema/verbs/attach.json       |  24 --
 .../src/main/jsonschema/verbs/attend.json       |  24 --
 .../src/main/jsonschema/verbs/author.json       |  24 --
 .../src/main/jsonschema/verbs/authorize.json    |  24 --
 .../src/main/jsonschema/verbs/borrow.json       |  24 --
 .../src/main/jsonschema/verbs/build.json        |  24 --
 .../src/main/jsonschema/verbs/cancel.json       |  24 --
 .../src/main/jsonschema/verbs/checkin.json      |  24 --
 .../src/main/jsonschema/verbs/close.json        |  24 --
 .../src/main/jsonschema/verbs/complete.json     |  24 --
 .../src/main/jsonschema/verbs/confirm.json      |  24 --
 .../src/main/jsonschema/verbs/consume.json      |  24 --
 .../src/main/jsonschema/verbs/create.json       |  24 --
 .../src/main/jsonschema/verbs/delete.json       |  24 --
 .../src/main/jsonschema/verbs/deliver.json      |  24 --
 .../src/main/jsonschema/verbs/deny.json         |  24 --
 .../src/main/jsonschema/verbs/disagree.json     |  24 --
 .../src/main/jsonschema/verbs/dislike.json      |  24 --
 .../src/main/jsonschema/verbs/experience.json   |  24 --
 .../src/main/jsonschema/verbs/favorite.json     |  24 --
 .../src/main/jsonschema/verbs/find.json         |  24 --
 .../jsonschema/verbs/flag-as-inappropriate.json |  24 --
 .../src/main/jsonschema/verbs/follow.json       |  24 --
 .../src/main/jsonschema/verbs/give.json         |  24 --
 .../src/main/jsonschema/verbs/host.json         |  24 --
 .../src/main/jsonschema/verbs/ignore.json       |  24 --
 .../src/main/jsonschema/verbs/insert.json       |  24 --
 .../src/main/jsonschema/verbs/install.json      |  24 --
 .../src/main/jsonschema/verbs/interact.json     |  24 --
 .../src/main/jsonschema/verbs/invite.json       |  24 --
 .../src/main/jsonschema/verbs/join.json         |  24 --
 .../src/main/jsonschema/verbs/leave.json        |  24 --
 .../src/main/jsonschema/verbs/like.json         |  24 --
 .../src/main/jsonschema/verbs/listen.json       |  24 --
 .../src/main/jsonschema/verbs/lose.json         |  24 --
 .../src/main/jsonschema/verbs/make-friend.json  |  24 --
 .../src/main/jsonschema/verbs/open.json         |  24 --
 .../src/main/jsonschema/verbs/play.json         |  24 --
 .../src/main/jsonschema/verbs/post.json         |  24 --
 .../src/main/jsonschema/verbs/present.json      |  24 --
 .../src/main/jsonschema/verbs/purchase.json     |  24 --
 .../src/main/jsonschema/verbs/qualify.json      |  24 --
 .../src/main/jsonschema/verbs/read.json         |  24 --
 .../src/main/jsonschema/verbs/receive.json      |  24 --
 .../src/main/jsonschema/verbs/reject.json       |  24 --
 .../main/jsonschema/verbs/remove-friend.json    |  24 --
 .../src/main/jsonschema/verbs/remove.json       |  24 --
 .../src/main/jsonschema/verbs/replace.json      |  24 --
 .../main/jsonschema/verbs/request-friend.json   |  24 --
 .../src/main/jsonschema/verbs/request.json      |  24 --
 .../src/main/jsonschema/verbs/resolve.json      |  24 --
 .../src/main/jsonschema/verbs/retract.json      |  24 --
 .../src/main/jsonschema/verbs/return.json       |  24 --
 .../src/main/jsonschema/verbs/rsvp-maybe.json   |  24 --
 .../src/main/jsonschema/verbs/rsvp-no.json      |  24 --
 .../src/main/jsonschema/verbs/rsvp-yes.json     |  24 --
 .../src/main/jsonschema/verbs/satisfy.json      |  24 --
 .../src/main/jsonschema/verbs/save.json         |  24 --
 .../src/main/jsonschema/verbs/schedule.json     |  24 --
 .../src/main/jsonschema/verbs/search.json       |  24 --
 .../src/main/jsonschema/verbs/sell.json         |  24 --
 .../src/main/jsonschema/verbs/send.json         |  24 --
 .../src/main/jsonschema/verbs/share.json        |  24 --
 .../src/main/jsonschema/verbs/sponsor.json      |  24 --
 .../src/main/jsonschema/verbs/start.json        |  24 --
 .../main/jsonschema/verbs/stop-following.json   |  24 --
 .../src/main/jsonschema/verbs/submit.json       |  24 --
 .../src/main/jsonschema/verbs/tag.json          |  24 --
 .../src/main/jsonschema/verbs/terminate.json    |  24 --
 .../src/main/jsonschema/verbs/tie.json          |  24 --
 .../src/main/jsonschema/verbs/unfavorite.json   |  24 --
 .../src/main/jsonschema/verbs/unlike.json       |  24 --
 .../src/main/jsonschema/verbs/unsatisfy.json    |  24 --
 .../src/main/jsonschema/verbs/unsave.json       |  24 --
 .../src/main/jsonschema/verbs/unshare.json      |  24 --
 .../src/main/jsonschema/verbs/update.json       |  34 --
 .../src/main/jsonschema/verbs/use.json          |  24 --
 .../src/main/jsonschema/verbs/watch.json        |  24 --
 .../src/main/jsonschema/verbs/win.json          |  24 --
 streams-schemas/src/main/xmlschema/activity.xsd |  94 -----
 .../schema/test/SchemaOrderingTests.java        | 146 --------
 .../streams/schema/test/SchemaStoreTests.java   |  76 ----
 .../src/test/resources/activities/accept.json   |  16 -
 .../src/test/resources/activities/access.json   |  17 -
 .../test/resources/activities/acknowledge.json  |  16 -
 .../src/test/resources/activities/add.json      |  21 --
 .../src/test/resources/activities/agree.json    |  15 -
 .../src/test/resources/activities/append.json   |  16 -
 .../src/test/resources/activities/approve.json  |  20 -
 .../src/test/resources/activities/archive.json  |  15 -
 .../src/test/resources/activities/assign.json   |  20 -
 .../src/test/resources/activities/at.json       |  15 -
 .../src/test/resources/activities/attach.json   |  20 -
 .../src/test/resources/activities/attend.json   |  15 -
 .../src/test/resources/activities/author.json   |  15 -
 .../test/resources/activities/authorize.json    |  23 --
 .../src/test/resources/activities/borrow.json   |  21 --
 .../src/test/resources/activities/build.json    |  16 -
 .../src/test/resources/activities/cancel.json   |  16 -
 .../src/test/resources/activities/checkin.json  |  16 -
 .../src/test/resources/activities/close.json    |  16 -
 .../src/test/resources/activities/complete.json |  16 -
 .../src/test/resources/activities/confirm.json  |  17 -
 .../src/test/resources/activities/consume.json  |  16 -
 .../src/test/resources/activities/create.json   |  15 -
 .../src/test/resources/activities/delete.json   |  16 -
 .../src/test/resources/activities/deliver.json  |  20 -
 .../src/test/resources/activities/deny.json     |  23 --
 .../src/test/resources/activities/disagree.json |  30 --
 .../src/test/resources/activities/dislike.json  |  15 -
 .../test/resources/activities/experience.json   |  16 -
 .../src/test/resources/activities/favorite.json |  15 -
 .../src/test/resources/activities/find.json     |  19 -
 .../activities/flag-as-inappropriate.json       |  24 --
 .../src/test/resources/activities/follow.json   |  15 -
 .../src/test/resources/activities/give.json     |  28 --
 .../src/test/resources/activities/host.json     |  15 -
 .../src/test/resources/activities/ignore.json   |  15 -
 .../src/test/resources/activities/insert.json   |  19 -
 .../src/test/resources/activities/install.json  |  18 -
 .../src/test/resources/activities/interact.json |  16 -
 .../src/test/resources/activities/invite.json   |  19 -
 .../src/test/resources/activities/join.json     |  15 -
 .../src/test/resources/activities/leave.json    |  15 -
 .../src/test/resources/activities/like.json     |  22 --
 .../src/test/resources/activities/listen.json   |  15 -
 .../src/test/resources/activities/lose.json     |  15 -
 .../test/resources/activities/make-friend.json  |  15 -
 .../src/test/resources/activities/open.json     |  15 -
 .../src/test/resources/activities/play.json     |  15 -
 .../src/test/resources/activities/post.json     |  25 --
 .../src/test/resources/activities/present.json  |  15 -
 .../src/test/resources/activities/purchase.json |  16 -
 .../src/test/resources/activities/qualify.json  |  15 -
 .../src/test/resources/activities/read.json     |  16 -
 .../src/test/resources/activities/receive.json  |  16 -
 .../src/test/resources/activities/reject.json   |  15 -
 .../resources/activities/remove-friend.json     |  15 -
 .../src/test/resources/activities/remove.json   |  23 --
 .../src/test/resources/activities/replace.json  |  19 -
 .../resources/activities/request-friend.json    |  16 -
 .../src/test/resources/activities/request.json  |  23 --
 .../src/test/resources/activities/resolve.json  |  15 -
 .../src/test/resources/activities/retract.json  |  26 --
 .../src/test/resources/activities/return.json   |  19 -
 .../test/resources/activities/rsvp-maybe.json   |  16 -
 .../src/test/resources/activities/rsvp-no.json  |  16 -
 .../src/test/resources/activities/rsvp-yes.json |  16 -
 .../src/test/resources/activities/satisfy.json  |  21 --
 .../src/test/resources/activities/save.json     |  20 -
 .../src/test/resources/activities/schedule.json |  15 -
 .../src/test/resources/activities/search.json   |  21 --
 .../src/test/resources/activities/sell.json     |  19 -
 .../src/test/resources/activities/send.json     |  19 -
 .../src/test/resources/activities/share.json    |  16 -
 .../src/test/resources/activities/sponsor.json  |  17 -
 .../src/test/resources/activities/start.json    |  15 -
 .../resources/activities/stop-following.json    |  15 -
 .../src/test/resources/activities/submit.json   |  15 -
 .../src/test/resources/activities/tag.json      |  19 -
 .../test/resources/activities/terminate.json    |  15 -
 .../src/test/resources/activities/tie.json      |  24 --
 .../test/resources/activities/unfavorite.json   |  15 -
 .../src/test/resources/activities/unlike.json   |  15 -
 .../test/resources/activities/unsatisfy.json    |  20 -
 .../src/test/resources/activities/unsave.json   |  15 -
 .../src/test/resources/activities/unshare.json  |  15 -
 .../src/test/resources/activities/update.json   |  15 -
 .../src/test/resources/activities/use.json      |  15 -
 .../src/test/resources/activities/watch.json    |  16 -
 .../src/test/resources/activities/win.json      |  15 -
 .../src/test/resources/media_link.json          |   7 -
 .../src/test/resources/objects/event.json       |  18 -
 .../src/test/resources/objects/group.json       |  16 -
 .../src/test/resources/objects/issue.json       |   9 -
 .../src/test/resources/objects/note.json        |  12 -
 .../src/test/resources/objects/permission.json  |   9 -
 .../src/test/resources/objects/place.json       |   9 -
 .../src/test/resources/objects/task.json        |  16 -
 .../src/test/resources/objects/video.json       |   8 -
 .../streams-schema-activitystreams/pom.xml      |  82 ++++
 .../src/main/jsonschema/activity.json           | 108 ++++++
 .../src/main/jsonschema/collection.json         |  47 +++
 .../src/main/jsonschema/media_link.json         |  34 ++
 .../src/main/jsonschema/object.json             |  98 +++++
 .../src/main/jsonschema/objectTypes/alert.json  |  19 +
 .../jsonschema/objectTypes/application.json     |  19 +
 .../main/jsonschema/objectTypes/article.json    |  19 +
 .../src/main/jsonschema/objectTypes/audio.json  |  19 +
 .../src/main/jsonschema/objectTypes/badge.json  |  19 +
 .../src/main/jsonschema/objectTypes/binary.json |  19 +
 .../main/jsonschema/objectTypes/bookmark.json   |  19 +
 .../main/jsonschema/objectTypes/comment.json    |  19 +
 .../src/main/jsonschema/objectTypes/device.json |  19 +
 .../src/main/jsonschema/objectTypes/event.json  |  51 +++
 .../src/main/jsonschema/objectTypes/file.json   |  25 ++
 .../src/main/jsonschema/objectTypes/folder.json |  19 +
 .../src/main/jsonschema/objectTypes/game.json   |  19 +
 .../src/main/jsonschema/objectTypes/group.json  |  19 +
 .../src/main/jsonschema/objectTypes/image.json  |  22 ++
 .../src/main/jsonschema/objectTypes/issue.json  |  25 ++
 .../src/main/jsonschema/objectTypes/job.json    |  19 +
 .../src/main/jsonschema/objectTypes/list.json   |  28 ++
 .../src/main/jsonschema/objectTypes/note.json   |  19 +
 .../src/main/jsonschema/objectTypes/offer.json  |  19 +
 .../jsonschema/objectTypes/organization.json    |  19 +
 .../src/main/jsonschema/objectTypes/page.json   |  19 +
 .../main/jsonschema/objectTypes/permission.json |  36 ++
 .../src/main/jsonschema/objectTypes/person.json |  25 ++
 .../jsonschema/objectTypes/photo-album.json     |  19 +
 .../src/main/jsonschema/objectTypes/photo.json  |  23 ++
 .../src/main/jsonschema/objectTypes/place.json  |  39 ++
 .../main/jsonschema/objectTypes/playlist.json   |  19 +
 .../main/jsonschema/objectTypes/process.json    |  19 +
 .../main/jsonschema/objectTypes/product.json    |  25 ++
 .../main/jsonschema/objectTypes/property.json   |  48 +++
 .../main/jsonschema/objectTypes/question.json   |  28 ++
 .../src/main/jsonschema/objectTypes/review.json |  22 ++
 .../src/main/jsonschema/objectTypes/role.json   |  25 ++
 .../main/jsonschema/objectTypes/service.json    |  19 +
 .../src/main/jsonschema/objectTypes/song.json   |  19 +
 .../src/main/jsonschema/objectTypes/status.json |  19 +
 .../src/main/jsonschema/objectTypes/task.json   |  40 ++
 .../src/main/jsonschema/objectTypes/team.json   |  19 +
 .../src/main/jsonschema/objectTypes/video.json  |  19 +
 .../src/main/jsonschema/verbs/accept.json       |  24 ++
 .../src/main/jsonschema/verbs/access.json       |  24 ++
 .../src/main/jsonschema/verbs/acknowledge.json  |  24 ++
 .../src/main/jsonschema/verbs/add.json          |  24 ++
 .../src/main/jsonschema/verbs/agree.json        |  24 ++
 .../src/main/jsonschema/verbs/append.json       |  24 ++
 .../src/main/jsonschema/verbs/approve.json      |  24 ++
 .../src/main/jsonschema/verbs/archive.json      |  24 ++
 .../src/main/jsonschema/verbs/assign.json       |  24 ++
 .../src/main/jsonschema/verbs/at.json           |  24 ++
 .../src/main/jsonschema/verbs/attach.json       |  24 ++
 .../src/main/jsonschema/verbs/attend.json       |  24 ++
 .../src/main/jsonschema/verbs/author.json       |  24 ++
 .../src/main/jsonschema/verbs/authorize.json    |  24 ++
 .../src/main/jsonschema/verbs/borrow.json       |  24 ++
 .../src/main/jsonschema/verbs/build.json        |  24 ++
 .../src/main/jsonschema/verbs/cancel.json       |  24 ++
 .../src/main/jsonschema/verbs/checkin.json      |  24 ++
 .../src/main/jsonschema/verbs/close.json        |  24 ++
 .../src/main/jsonschema/verbs/complete.json     |  24 ++
 .../src/main/jsonschema/verbs/confirm.json      |  24 ++
 .../src/main/jsonschema/verbs/consume.json      |  24 ++
 .../src/main/jsonschema/verbs/create.json       |  24 ++
 .../src/main/jsonschema/verbs/delete.json       |  24 ++
 .../src/main/jsonschema/verbs/deliver.json      |  24 ++
 .../src/main/jsonschema/verbs/deny.json         |  24 ++
 .../src/main/jsonschema/verbs/disagree.json     |  24 ++
 .../src/main/jsonschema/verbs/dislike.json      |  24 ++
 .../src/main/jsonschema/verbs/experience.json   |  24 ++
 .../src/main/jsonschema/verbs/favorite.json     |  24 ++
 .../src/main/jsonschema/verbs/find.json         |  24 ++
 .../jsonschema/verbs/flag-as-inappropriate.json |  24 ++
 .../src/main/jsonschema/verbs/follow.json       |  24 ++
 .../src/main/jsonschema/verbs/give.json         |  24 ++
 .../src/main/jsonschema/verbs/host.json         |  24 ++
 .../src/main/jsonschema/verbs/ignore.json       |  24 ++
 .../src/main/jsonschema/verbs/insert.json       |  24 ++
 .../src/main/jsonschema/verbs/install.json      |  24 ++
 .../src/main/jsonschema/verbs/interact.json     |  24 ++
 .../src/main/jsonschema/verbs/invite.json       |  24 ++
 .../src/main/jsonschema/verbs/join.json         |  24 ++
 .../src/main/jsonschema/verbs/leave.json        |  24 ++
 .../src/main/jsonschema/verbs/like.json         |  24 ++
 .../src/main/jsonschema/verbs/listen.json       |  24 ++
 .../src/main/jsonschema/verbs/lose.json         |  24 ++
 .../src/main/jsonschema/verbs/make-friend.json  |  24 ++
 .../src/main/jsonschema/verbs/open.json         |  24 ++
 .../src/main/jsonschema/verbs/play.json         |  24 ++
 .../src/main/jsonschema/verbs/post.json         |  24 ++
 .../src/main/jsonschema/verbs/present.json      |  24 ++
 .../src/main/jsonschema/verbs/purchase.json     |  24 ++
 .../src/main/jsonschema/verbs/qualify.json      |  24 ++
 .../src/main/jsonschema/verbs/read.json         |  24 ++
 .../src/main/jsonschema/verbs/receive.json      |  24 ++
 .../src/main/jsonschema/verbs/reject.json       |  24 ++
 .../main/jsonschema/verbs/remove-friend.json    |  24 ++
 .../src/main/jsonschema/verbs/remove.json       |  24 ++
 .../src/main/jsonschema/verbs/replace.json      |  24 ++
 .../main/jsonschema/verbs/request-friend.json   |  24 ++
 .../src/main/jsonschema/verbs/request.json      |  24 ++
 .../src/main/jsonschema/verbs/resolve.json      |  24 ++
 .../src/main/jsonschema/verbs/retract.json      |  24 ++
 .../src/main/jsonschema/verbs/return.json       |  24 ++
 .../src/main/jsonschema/verbs/rsvp-maybe.json   |  24 ++
 .../src/main/jsonschema/verbs/rsvp-no.json      |  24 ++
 .../src/main/jsonschema/verbs/rsvp-yes.json     |  24 ++
 .../src/main/jsonschema/verbs/satisfy.json      |  24 ++
 .../src/main/jsonschema/verbs/save.json         |  24 ++
 .../src/main/jsonschema/verbs/schedule.json     |  24 ++
 .../src/main/jsonschema/verbs/search.json       |  24 ++
 .../src/main/jsonschema/verbs/sell.json         |  24 ++
 .../src/main/jsonschema/verbs/send.json         |  24 ++
 .../src/main/jsonschema/verbs/share.json        |  24 ++
 .../src/main/jsonschema/verbs/sponsor.json      |  24 ++
 .../src/main/jsonschema/verbs/start.json        |  24 ++
 .../main/jsonschema/verbs/stop-following.json   |  24 ++
 .../src/main/jsonschema/verbs/submit.json       |  24 ++
 .../src/main/jsonschema/verbs/tag.json          |  24 ++
 .../src/main/jsonschema/verbs/terminate.json    |  24 ++
 .../src/main/jsonschema/verbs/tie.json          |  24 ++
 .../src/main/jsonschema/verbs/unfavorite.json   |  24 ++
 .../src/main/jsonschema/verbs/unlike.json       |  24 ++
 .../src/main/jsonschema/verbs/unsatisfy.json    |  24 ++
 .../src/main/jsonschema/verbs/unsave.json       |  24 ++
 .../src/main/jsonschema/verbs/unshare.json      |  24 ++
 .../src/main/jsonschema/verbs/update.json       |  34 ++
 .../src/main/jsonschema/verbs/use.json          |  24 ++
 .../src/main/jsonschema/verbs/watch.json        |  24 ++
 .../src/main/jsonschema/verbs/win.json          |  24 ++
 .../src/main/xmlschema/activity.xsd             |  94 +++++
 streams-util/pom.xml                            |  89 ++++-
 .../java/org/apache/streams/util/GuidUtils.java |   2 +-
 .../org/apache/streams/util/RegexUtils.java     |   3 +
 .../apache/streams/util/SerializationUtil.java  |   3 +-
 .../apache/streams/util/schema/FieldType.java   |  14 +
 .../apache/streams/util/schema/FieldUtil.java   |  34 ++
 .../apache/streams/util/schema/FileUtil.java    |  77 ++++
 .../streams/util/schema/GenerationConfig.java   | 116 ++++++
 .../org/apache/streams/util/schema/Schema.java  |  57 +++
 .../apache/streams/util/schema/SchemaStore.java |  42 +++
 .../streams/util/schema/SchemaStoreImpl.java    | 347 +++++++++++++++++
 .../apache/streams/util/schema/SchemaUtil.java  |  49 +++
 .../org/apache/streams/util/schema/URIUtil.java |  30 ++
 .../util/schema/test/SchemaOrderingTest.java    | 150 ++++++++
 .../util/schema/test/SchemaStoreTest.java       |  71 ++++
 .../src/test/resources/activities/accept.json   |  16 +
 .../src/test/resources/activities/access.json   |  17 +
 .../test/resources/activities/acknowledge.json  |  16 +
 .../src/test/resources/activities/add.json      |  21 ++
 .../src/test/resources/activities/agree.json    |  15 +
 .../src/test/resources/activities/append.json   |  16 +
 .../src/test/resources/activities/approve.json  |  20 +
 .../src/test/resources/activities/archive.json  |  15 +
 .../src/test/resources/activities/assign.json   |  20 +
 .../src/test/resources/activities/at.json       |  15 +
 .../src/test/resources/activities/attach.json   |  20 +
 .../src/test/resources/activities/attend.json   |  15 +
 .../src/test/resources/activities/author.json   |  15 +
 .../test/resources/activities/authorize.json    |  23 ++
 .../src/test/resources/activities/borrow.json   |  21 ++
 .../src/test/resources/activities/build.json    |  16 +
 .../src/test/resources/activities/cancel.json   |  16 +
 .../src/test/resources/activities/checkin.json  |  16 +
 .../src/test/resources/activities/close.json    |  16 +
 .../src/test/resources/activities/complete.json |  16 +
 .../src/test/resources/activities/confirm.json  |  17 +
 .../src/test/resources/activities/consume.json  |  16 +
 .../src/test/resources/activities/create.json   |  15 +
 .../src/test/resources/activities/delete.json   |  16 +
 .../src/test/resources/activities/deliver.json  |  20 +
 .../src/test/resources/activities/deny.json     |  23 ++
 .../src/test/resources/activities/disagree.json |  30 ++
 .../src/test/resources/activities/dislike.json  |  15 +
 .../test/resources/activities/experience.json   |  16 +
 .../src/test/resources/activities/favorite.json |  15 +
 .../src/test/resources/activities/find.json     |  19 +
 .../activities/flag-as-inappropriate.json       |  24 ++
 .../src/test/resources/activities/follow.json   |  15 +
 .../src/test/resources/activities/give.json     |  28 ++
 .../src/test/resources/activities/host.json     |  15 +
 .../src/test/resources/activities/ignore.json   |  15 +
 .../src/test/resources/activities/insert.json   |  19 +
 .../src/test/resources/activities/install.json  |  18 +
 .../src/test/resources/activities/interact.json |  16 +
 .../src/test/resources/activities/invite.json   |  19 +
 .../src/test/resources/activities/join.json     |  15 +
 .../src/test/resources/activities/leave.json    |  15 +
 .../src/test/resources/activities/like.json     |  22 ++
 .../src/test/resources/activities/listen.json   |  15 +
 .../src/test/resources/activities/lose.json     |  15 +
 .../test/resources/activities/make-friend.json  |  15 +
 .../src/test/resources/activities/open.json     |  15 +
 .../src/test/resources/activities/play.json     |  15 +
 .../src/test/resources/activities/post.json     |  25 ++
 .../src/test/resources/activities/present.json  |  15 +
 .../src/test/resources/activities/purchase.json |  16 +
 .../src/test/resources/activities/qualify.json  |  15 +
 .../src/test/resources/activities/read.json     |  16 +
 .../src/test/resources/activities/receive.json  |  16 +
 .../src/test/resources/activities/reject.json   |  15 +
 .../resources/activities/remove-friend.json     |  15 +
 .../src/test/resources/activities/remove.json   |  23 ++
 .../src/test/resources/activities/replace.json  |  19 +
 .../resources/activities/request-friend.json    |  16 +
 .../src/test/resources/activities/request.json  |  23 ++
 .../src/test/resources/activities/resolve.json  |  15 +
 .../src/test/resources/activities/retract.json  |  26 ++
 .../src/test/resources/activities/return.json   |  19 +
 .../test/resources/activities/rsvp-maybe.json   |  16 +
 .../src/test/resources/activities/rsvp-no.json  |  16 +
 .../src/test/resources/activities/rsvp-yes.json |  16 +
 .../src/test/resources/activities/satisfy.json  |  21 ++
 .../src/test/resources/activities/save.json     |  20 +
 .../src/test/resources/activities/schedule.json |  15 +
 .../src/test/resources/activities/search.json   |  21 ++
 .../src/test/resources/activities/sell.json     |  19 +
 .../src/test/resources/activities/send.json     |  19 +
 .../src/test/resources/activities/share.json    |  16 +
 .../src/test/resources/activities/sponsor.json  |  17 +
 .../src/test/resources/activities/start.json    |  15 +
 .../resources/activities/stop-following.json    |  15 +
 .../src/test/resources/activities/submit.json   |  15 +
 .../src/test/resources/activities/tag.json      |  19 +
 .../test/resources/activities/terminate.json    |  15 +
 .../src/test/resources/activities/tie.json      |  24 ++
 .../test/resources/activities/unfavorite.json   |  15 +
 .../src/test/resources/activities/unlike.json   |  15 +
 .../test/resources/activities/unsatisfy.json    |  20 +
 .../src/test/resources/activities/unsave.json   |  15 +
 .../src/test/resources/activities/unshare.json  |  15 +
 .../src/test/resources/activities/update.json   |  15 +
 .../src/test/resources/activities/use.json      |  15 +
 .../src/test/resources/activities/watch.json    |  16 +
 .../src/test/resources/activities/win.json      |  15 +
 streams-util/src/test/resources/media_link.json |   7 +
 .../src/test/resources/objects/event.json       |  18 +
 .../src/test/resources/objects/group.json       |  16 +
 .../src/test/resources/objects/issue.json       |   9 +
 .../src/test/resources/objects/note.json        |  12 +
 .../src/test/resources/objects/permission.json  |   9 +
 .../src/test/resources/objects/place.json       |   9 +
 .../src/test/resources/objects/task.json        |  16 +
 .../src/test/resources/objects/video.json       |   8 +
 553 files changed, 7304 insertions(+), 7432 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-contrib/streams-persist-cassandra/src/site/resources/META_INF/spring/streams-cassandra-context.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-persist-cassandra/src/site/resources/META_INF/spring/streams-cassandra-context.xml b/streams-contrib/streams-persist-cassandra/src/site/resources/META_INF/spring/streams-cassandra-context.xml
deleted file mode 100644
index 842c918..0000000
--- a/streams-contrib/streams-persist-cassandra/src/site/resources/META_INF/spring/streams-cassandra-context.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-<beans
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xmlns="http://www.springframework.org/schema/beans"
-        xmlns:context="http://www.springframework.org/schema/context"
-        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
-        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
-
-</beans>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-cassandra/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/pom.xml b/streams-plugins/streams-plugin-cassandra/pom.xml
index b2dbf36..d9d3f91 100644
--- a/streams-plugins/streams-plugin-cassandra/pom.xml
+++ b/streams-plugins/streams-plugin-cassandra/pom.xml
@@ -54,10 +54,17 @@
         </dependency>
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-schemas</artifactId>
+            <artifactId>streams-util</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schema-activitystreams</artifactId>
+            <version>${project.version}</version>
+            <type>test-jar</type>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
             <groupId>com.google.guava</groupId>
             <artifactId>guava</artifactId>
         </dependency>
@@ -230,9 +237,9 @@
                         </goals>
                         <configuration>
                             <includeGroupIds>org.apache.streams</includeGroupIds>
-                            <includeArtifactIds>streams-schemas</includeArtifactIds>
+                            <includeArtifactIds>streams-schema-activitystreams</includeArtifactIds>
                             <includes>**/*.json</includes>
-                            <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                            <outputDirectory>${project.build.directory}/test-classes/streams-schema-activitystreams</outputDirectory>
                         </configuration>
                     </execution>
                 </executions>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java
index 28e20e4..1950796 100644
--- a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java
+++ b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java
@@ -1,6 +1,6 @@
 package org.apache.streams.plugins.cassandra;
 
-import org.apache.streams.schema.GenerationConfig;
+import org.apache.streams.util.schema.GenerationConfig;
 import org.jsonschema2pojo.DefaultGenerationConfig;
 import org.jsonschema2pojo.util.URLUtil;
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java
index 787ae02..7889bdc 100644
--- a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java
+++ b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java
@@ -7,12 +7,12 @@ import com.google.common.base.Optional;
 import com.google.common.base.Preconditions;
 import com.google.common.base.Strings;
 import com.google.common.collect.Lists;
-import org.apache.streams.schema.FieldType;
-import org.apache.streams.schema.FieldUtil;
-import org.apache.streams.schema.GenerationConfig;
-import org.apache.streams.schema.Schema;
-import org.apache.streams.schema.SchemaStore;
-import org.apache.streams.schema.URIUtil;
+import org.apache.streams.util.schema.FieldType;
+import org.apache.streams.util.schema.FieldUtil;
+import org.apache.streams.util.schema.GenerationConfig;
+import org.apache.streams.util.schema.Schema;
+import org.apache.streams.util.schema.SchemaStore;
+import org.apache.streams.util.schema.SchemaStoreImpl;
 import org.jsonschema2pojo.util.URLUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -27,11 +27,10 @@ import java.util.Map;
 
 import static com.google.common.base.Preconditions.checkNotNull;
 import static org.apache.commons.lang3.StringUtils.defaultString;
-import static org.apache.streams.schema.FileUtil.dropExtension;
-import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
-import static org.apache.streams.schema.FileUtil.resolveRecursive;
-import static org.apache.streams.schema.FileUtil.swapExtension;
-import static org.apache.streams.schema.FileUtil.writeFile;
+import static org.apache.streams.util.schema.FileUtil.dropExtension;
+import static org.apache.streams.util.schema.FileUtil.dropSourcePathPrefix;
+import static org.apache.streams.util.schema.FileUtil.resolveRecursive;
+import static org.apache.streams.util.schema.FileUtil.writeFile;
 
 /**
  * Created by sblackmon on 5/3/16.
@@ -44,14 +43,14 @@ public class StreamsCassandraResourceGenerator implements Runnable {
 
     private StreamsCassandraGenerationConfig config;
 
-    private SchemaStore schemaStore = new SchemaStore();
+    private SchemaStore schemaStore = new SchemaStoreImpl();
 
     private int currentDepth = 0;
 
     public static void main(String[] args) {
         StreamsCassandraGenerationConfig config = new StreamsCassandraGenerationConfig();
 
-        String sourceDirectory = "./target/test-classes/activities";
+        String sourceDirectory = "./src/main/jsonschema";
         String targetDirectory = "./target/generated-resources/cassandra";
 
         if( args.length > 0 )
@@ -63,16 +62,7 @@ public class StreamsCassandraResourceGenerator implements Runnable {
         config.setTargetDirectory(targetDirectory);
 
         StreamsCassandraResourceGenerator streamsCassandraResourceGenerator = new StreamsCassandraResourceGenerator(config);
-        Thread thread = new Thread(streamsCassandraResourceGenerator);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
-        return;
+        streamsCassandraResourceGenerator.run();
     }
 
     public StreamsCassandraResourceGenerator(StreamsCassandraGenerationConfig config) {
@@ -122,15 +112,15 @@ public class StreamsCassandraResourceGenerator implements Runnable {
                     resourcePath = dropSourcePathPrefix(resourcePath, sourcePath);
                 }
 
-                LOGGER.info("Processing {}:", resourcePath);
-
                 String resourceId = schemaSymbol(schema);
 
+                LOGGER.info("Processing {}", resourcePath);
+
                 String resourceContent = generateResource(schema, resourceId);
 
                 typesContent.append(resourceContent);
 
-                LOGGER.info("Added {}:", resourceId);
+                LOGGER.info("Added {}", resourceId);
             }
         }
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java
index 2e9a37f..5cf814d 100644
--- a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java
@@ -15,10 +15,10 @@ import org.slf4j.LoggerFactory;
 import java.io.File;
 import java.util.List;
 
-@Mojo(  name = "cassandra",
+@Mojo(  name = "generate-resources",
         defaultPhase = LifecyclePhase.GENERATE_RESOURCES
 )
-@Execute(   goal = "cassandra",
+@Execute(   goal = "generate-resources",
             phase = LifecyclePhase.GENERATE_RESOURCES
 )
 public class StreamsCassandraResourceGeneratorMojo extends AbstractMojo {
@@ -30,15 +30,6 @@ public class StreamsCassandraResourceGeneratorMojo extends AbstractMojo {
     @Component
     private MavenProject project;
 
-//    @Component
-//    private Settings settings;
-//
-//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
-//    protected ArtifactRepository localRepository;
-//
-//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
-//    private PluginDescriptor plugin;
-//
     @Parameter( defaultValue = "${project.basedir}", readonly = true )
     private File basedir;
 
@@ -65,29 +56,7 @@ public class StreamsCassandraResourceGeneratorMojo extends AbstractMojo {
 
         StreamsCassandraResourceGenerator streamsCassandraResourceGenerator = new StreamsCassandraResourceGenerator(config);
 
-        Thread.UncaughtExceptionHandler h = new Thread.UncaughtExceptionHandler() {
-            public void uncaughtException(Thread th, Throwable ex) {
-                LOGGER.error("Exception", ex);
-                mojoFailureException = new MojoFailureException("Exception", ex);
-            }
-        };
-        Thread.setDefaultUncaughtExceptionHandler(h);
-        Thread thread = new Thread(streamsCassandraResourceGenerator);
-        thread.setUncaughtExceptionHandler(h);
-        try {
-            thread.start();
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-            mojoFailureException = new MojoFailureException("Exception", e);
-        }
-
-        if( mojoFailureException != null )
-            throw mojoFailureException;
-
-        return;
+        streamsCassandraResourceGenerator.run();
     }
 
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-cassandra/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/site/markdown/index.md b/streams-plugins/streams-plugin-cassandra/src/site/markdown/index.md
index d0c2129..0e8ecf3 100644
--- a/streams-plugins/streams-plugin-cassandra/src/site/markdown/index.md
+++ b/streams-plugins/streams-plugin-cassandra/src/site/markdown/index.md
@@ -3,17 +3,31 @@ org.apache.streams.plugins:streams-plugin-cassandra
 
 streams-plugin-cassandra generates resources from json schemas to assist with indexing of json data using Apache Cassandra.
 
-#### Usage
+### Usage
+
+##### Maven
 
 Run within a module containing a src/main/jsonschema directory
 
     mvn org.apache.streams.plugins:streams-plugin-cassandra:0.3-incubating-SNAPSHOT:cassandra
 
-Output will be placed in target/generated-resources/cassandra by default
+[streams-plugin-cassandra/pom.xml](streams-plugin-cassandra/pom.xml "streams-plugin-cassandra/pom.xml")
 
-#### Example
+##### SDK
 
-[streams-plugin-cassandra/pom.xml](streams-plugin-cassandra/pom.xml "streams-plugin-cassandra/pom.xml")
+Embed within your own java code
+
+    StreamsCassandraGenerationConfig config = new StreamsCassandraGenerationConfig();
+    config.setSourceDirectory("src/main/jsonschema");
+    config.setTargetDirectory("target/generated-resources");
+    StreamsCassandraResourceGenerator generator = new StreamsCassandraResourceGenerator(config);
+    generator.run();
+    
+##### CLI
+    
+Run from CLI without Maven
+
+    java -jar streams-plugin-cassandra-jar-with-dependencies.jar StreamsCassandraResourceGenerator src/main/jsonschema target/generated-resources
 
 #### Documentation
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java
index 465a326..74c1152 100644
--- a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java
+++ b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java
@@ -20,10 +20,10 @@ import static org.apache.streams.plugins.cassandra.test.StreamsCassandraResource
 public class StreamsCassandraResourceGeneratorCLITest {
 
     @Test
-    public void testStreamsHiveResourceGeneratorCLI() throws Exception {
+    public void testStreamsCassandraResourceGeneratorCLI() throws Exception {
 
-        String sourceDirectory = "target/test-classes/streams-schemas";
-        String targetDirectory = "target/generated-resources/cassandra-cli";
+        String sourceDirectory = "target/test-classes/streams-schema-activitystreams";
+        String targetDirectory = "target/generated-resources/test-cli";
 
         List<String> argsList = Lists.newArrayList(sourceDirectory, targetDirectory);
         StreamsCassandraResourceGenerator.main(argsList.toArray(new String[0]));
@@ -39,7 +39,9 @@ public class StreamsCassandraResourceGeneratorCLITest {
         Collection<File> outputCollection = Lists.newArrayList(outputIterator);
         assert( outputCollection.size() == 1 );
 
-        Path path = Paths.get("types.cql");
+        Path path = Paths.get(testOutput.getAbsolutePath()).resolve("types.cql");
+
+        assert( path.toFile().exists() );
 
         String typesCqlBytes = new String(
                 java.nio.file.Files.readAllBytes(path));

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java
index aad069f..ee0ce99 100644
--- a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java
+++ b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java
@@ -52,7 +52,9 @@ public class StreamsCassandraResourceGeneratorMojoTest extends TestCase {
 
         verifier.resetStreams();
 
-        File testOutput = new File( "./target/generated-resources/test-mojo");
+        Path testOutputPath = Paths.get(testDir.getAbsolutePath()).resolve("target/generated-resources/test-mojo");
+
+        File testOutput = testOutputPath.toFile();
 
         assert( testOutput != null );
         assert( testOutput.exists() == true );
@@ -63,13 +65,14 @@ public class StreamsCassandraResourceGeneratorMojoTest extends TestCase {
         Collection<File> outputCollection = Lists.newArrayList(outputIterator);
         assert( outputCollection.size() == 1 );
 
-        Path path = Paths.get("./target/generated-sources/test/types.cql");
+        Path path = testOutputPath.resolve("types.cql");
+
+        assert( path.toFile().exists() );
 
         String typesCqlBytes = new String(
                 java.nio.file.Files.readAllBytes(path));
 
         assert( StringUtils.countMatches(typesCqlBytes, "CREATE TYPE") == 133 );
 
-        assert( !typesCqlBytes.contains("IDK"));
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java
index d46eaa6..daf85ae 100644
--- a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java
@@ -1,15 +1,12 @@
 package org.apache.streams.plugins.cassandra.test;
 
-import com.google.common.base.Charsets;
 import com.google.common.base.Predicate;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Sets;
 import com.google.common.io.Files;
-import org.apache.commons.io.FileUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.streams.plugins.cassandra.StreamsCassandraGenerationConfig;
 import org.apache.streams.plugins.cassandra.StreamsCassandraResourceGenerator;
-import org.junit.Assert;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -19,10 +16,6 @@ import java.io.File;
 import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-
-import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
 
 /**
  * Test that cassandra resources are generated.
@@ -50,28 +43,20 @@ public class StreamsCassandraResourceGeneratorTest {
 
         StreamsCassandraGenerationConfig config = new StreamsCassandraGenerationConfig();
 
-        String sourceDirectory = "target/test-classes/streams-schemas";
+        String sourceDirectory = "target/test-classes/streams-schema-activitystreams";
 
         config.setSourceDirectory(sourceDirectory);
 
-        config.setTargetDirectory("target/generated-sources/test");
+        config.setTargetDirectory("target/generated-resources/cassandra");
 
         config.setExclusions(Sets.newHashSet("attachments"));
 
         config.setMaxDepth(2);
 
         StreamsCassandraResourceGenerator streamsCassandraResourceGenerator = new StreamsCassandraResourceGenerator(config);
-        Thread thread = new Thread(streamsCassandraResourceGenerator);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
+        streamsCassandraResourceGenerator.run();
 
-        File testOutput = new File( "./target/generated-sources/test");
+        File testOutput = config.getTargetDirectory();
 
         assert( testOutput != null );
         assert( testOutput.exists() == true );
@@ -82,43 +67,14 @@ public class StreamsCassandraResourceGeneratorTest {
         Collection<File> outputCollection = Lists.newArrayList(outputIterator);
         assert( outputCollection.size() == 1 );
 
-        Path path = Paths.get("./target/generated-sources/test/types.cql");
+        Path path = Paths.get(testOutput.getAbsolutePath()).resolve("types.cql");
+
+        assert( path.toFile().exists() );
 
         String typesCqlBytes = new String(
                 java.nio.file.Files.readAllBytes(path));
 
         assert( StringUtils.countMatches(typesCqlBytes, "CREATE TYPE") == 133 );
 
-        assert( !typesCqlBytes.contains("IDK"));
-
-
-//        String expectedDirectory = "target/test-classes/expected";
-//        File testExpected = new File( expectedDirectory );
-//
-//        Iterable<File> expectedIterator = Files.fileTreeTraverser().breadthFirstTraversal(testExpected)
-//                .filter(cqlFilter);
-//        Collection<File> expectedCollection = Lists.newArrayList(expectedIterator);
-//
-//        int fails = 0;
-//
-//        Iterator<File> iterator = expectedCollection.iterator();
-//        while( iterator.hasNext() ) {
-//            File objectExpected = iterator.next();
-//            String expectedEnd = dropSourcePathPrefix(objectExpected.getAbsolutePath(),  expectedDirectory);
-//            File objectActual = new File(config.getTargetDirectory() + "/" + expectedEnd);
-//            LOGGER.info("Comparing: {} and {}", objectExpected.getAbsolutePath(), objectActual.getAbsolutePath());
-//            assert( objectActual.exists());
-//            if( FileUtils.contentEquals(objectActual, objectExpected) == true ) {
-//                LOGGER.info("Exact Match!");
-//            } else {
-//                LOGGER.info("No Match!");
-//                fails++;
-//            }
-//        }
-//        if( fails > 0 ) {
-//            LOGGER.info("Fails: {}", fails);
-//            Assert.fail();
-//        }
-
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml b/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
index 064ea52..2a69ec7 100644
--- a/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
+++ b/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
@@ -18,8 +18,9 @@
         </dependency>
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-schemas</artifactId>
+            <artifactId>streams-schema-activitystreams</artifactId>
             <version>${project.version}</version>
+            <type>test-jar</type>
             <scope>test</scope>
         </dependency>
     </dependencies>
@@ -32,19 +33,19 @@
                 <version>0.3-incubating-SNAPSHOT</version>
                 <configuration>
                     <sourcePaths>
-                        <sourcePath>target/test-classes/streams-schemas/activity.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/collection.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/media_link.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/object.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/objectTypes</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/verbs</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/activity.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/collection.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/media_link.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/object.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/objectTypes</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/verbs</sourcePath>
                     </sourcePaths>
                     <targetDirectory>target/generated-resources/test-mojo</targetDirectory>
                 </configuration>
                 <executions>
                     <execution>
                         <goals>
-                            <goal>cassandra</goal>
+                            <goal>generate-resources</goal>
                         </goals>
                     </execution>
                 </executions>
@@ -55,9 +56,9 @@
                 <version>2.10</version>
                 <configuration>
                     <includes>**/*.json</includes>
-                    <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                    <outputDirectory>${project.build.directory}/test-classes/streams-schema-activitystreams</outputDirectory>
                     <includeGroupIds>org.apache.streams</includeGroupIds>
-                    <includeArtifactIds>streams-schemas</includeArtifactIds>
+                    <includeArtifactIds>streams-schema-activitystreams</includeArtifactIds>
                     <includeTypes>jar,test-jar</includeTypes>
                 </configuration>
                 <executions>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-elasticsearch/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/pom.xml b/streams-plugins/streams-plugin-elasticsearch/pom.xml
index 4f0ed4a..07d7fc1 100644
--- a/streams-plugins/streams-plugin-elasticsearch/pom.xml
+++ b/streams-plugins/streams-plugin-elasticsearch/pom.xml
@@ -55,10 +55,17 @@
         </dependency>
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-schemas</artifactId>
+            <artifactId>streams-util</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schema-activitystreams</artifactId>
+            <version>${project.version}</version>
+            <type>test-jar</type>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
             <groupId>com.google.guava</groupId>
             <artifactId>guava</artifactId>
         </dependency>
@@ -231,9 +238,9 @@
                         </goals>
                         <configuration>
                             <includeGroupIds>org.apache.streams</includeGroupIds>
-                            <includeArtifactIds>streams-schemas</includeArtifactIds>
+                            <includeArtifactIds>streams-schema-activitystreams</includeArtifactIds>
                             <includes>**/*.json</includes>
-                            <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                            <outputDirectory>${project.build.directory}/test-classes/streams-schema-activitystreams</outputDirectory>
                         </configuration>
                     </execution>
                 </executions>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java
index ef5b9ef..71bbdf8 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java
@@ -1,6 +1,6 @@
 package org.apache.streams.plugins.elasticsearch;
 
-import org.apache.streams.schema.GenerationConfig;
+import org.apache.streams.util.schema.GenerationConfig;
 import org.jsonschema2pojo.DefaultGenerationConfig;
 import org.jsonschema2pojo.util.URLUtil;
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java
index 0f506ca..4d16f7e 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java
@@ -1,17 +1,21 @@
 package org.apache.streams.plugins.elasticsearch;
 
+import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.databind.node.ObjectNode;
 import com.google.common.base.Joiner;
 import com.google.common.base.Optional;
 import com.google.common.base.Preconditions;
 import com.google.common.base.Strings;
 import com.google.common.collect.Lists;
-import org.apache.streams.schema.FieldType;
-import org.apache.streams.schema.FieldUtil;
-import org.apache.streams.schema.GenerationConfig;
-import org.apache.streams.schema.Schema;
-import org.apache.streams.schema.SchemaStore;
+import org.apache.streams.jackson.StreamsJacksonMapper;
+import org.apache.streams.util.schema.FieldType;
+import org.apache.streams.util.schema.FieldUtil;
+import org.apache.streams.util.schema.GenerationConfig;
+import org.apache.streams.util.schema.Schema;
+import org.apache.streams.util.schema.SchemaStore;
+import org.apache.streams.util.schema.SchemaStoreImpl;
 import org.jsonschema2pojo.util.URLUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -25,10 +29,11 @@ import java.util.List;
 import java.util.Map;
 
 import static com.google.common.base.Preconditions.checkNotNull;
-import static org.apache.streams.schema.FileUtil.dropExtension;
-import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
-import static org.apache.streams.schema.FileUtil.resolveRecursive;
-import static org.apache.streams.schema.FileUtil.writeFile;
+import static org.apache.streams.util.schema.FileUtil.dropExtension;
+import static org.apache.streams.util.schema.FileUtil.dropSourcePathPrefix;
+import static org.apache.streams.util.schema.FileUtil.resolveRecursive;
+import static org.apache.streams.util.schema.FileUtil.swapExtension;
+import static org.apache.streams.util.schema.FileUtil.writeFile;
 
 /**
  * Created by sblackmon on 5/3/16.
@@ -37,15 +42,17 @@ public class StreamsElasticsearchResourceGenerator implements Runnable {
 
     private final static Logger LOGGER = LoggerFactory.getLogger(StreamsElasticsearchResourceGenerator.class);
 
+    ObjectMapper MAPPER = StreamsJacksonMapper.getInstance();
+
     private final static String LS = System.getProperty("line.separator");
 
     private StreamsElasticsearchGenerationConfig config;
 
-    private SchemaStore schemaStore = new SchemaStore();
+    private SchemaStore schemaStore = new SchemaStoreImpl();
 
     private int currentDepth = 0;
 
-    public void main(String[] args) {
+    public static void main(String[] args) {
         StreamsElasticsearchGenerationConfig config = new StreamsElasticsearchGenerationConfig();
 
         String sourceDirectory = "target/test-classes/activities";
@@ -59,17 +66,9 @@ public class StreamsElasticsearchResourceGenerator implements Runnable {
         config.setSourceDirectory(sourceDirectory);
         config.setTargetDirectory(targetDirectory);
 
-        StreamsElasticsearchResourceGenerator StreamsElasticsearchResourceGenerator = new StreamsElasticsearchResourceGenerator(config);
-        Thread thread = new Thread(StreamsElasticsearchResourceGenerator);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
-        return;
+        StreamsElasticsearchResourceGenerator streamsElasticsearchResourceGenerator = new StreamsElasticsearchResourceGenerator(config);
+        streamsElasticsearchResourceGenerator.run();
+
     }
 
     public StreamsElasticsearchResourceGenerator(StreamsElasticsearchGenerationConfig config) {
@@ -106,7 +105,6 @@ public class StreamsElasticsearchResourceGenerator implements Runnable {
 
         LOGGER.info("Identified {} objects:", schemaStore.getSize());
 
-        String outputFile = config.getTargetDirectory() + "/" + "types.cql";
         StringBuilder typesContent = new StringBuilder();
 
         for (Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator(); schemaIterator.hasNext(); ) {
@@ -118,6 +116,7 @@ public class StreamsElasticsearchResourceGenerator implements Runnable {
                 for (String sourcePath : config.getSourcePaths()) {
                     resourcePath = dropSourcePathPrefix(resourcePath, sourcePath);
                 }
+                String outputFile = config.getTargetDirectory() + "/" + resourcePath;
 
                 LOGGER.info("Processing {}:", resourcePath);
 
@@ -125,25 +124,33 @@ public class StreamsElasticsearchResourceGenerator implements Runnable {
 
                 String resourceContent = generateResource(schema, resourceId);
 
-                typesContent.append(resourceContent);
+                if( !Strings.isNullOrEmpty(resourceContent))
+                    writeFile(outputFile, resourceContent);
 
-                LOGGER.info("Added {}:", resourceId);
+                LOGGER.info("Wrote {}:", outputFile);
             }
         }
 
-        writeFile(outputFile, typesContent.toString());
-
     }
 
     public String generateResource(Schema schema, String resourceId) {
         StringBuilder resourceBuilder = new StringBuilder();
-        resourceBuilder.append("CREATE TYPE ");
-        resourceBuilder.append(resourceId);
-        resourceBuilder.append(" IF NOT EXISTS (");
-        resourceBuilder.append(LS);
-        resourceBuilder = appendRootObject(resourceBuilder, schema, resourceId, ' ');
-        resourceBuilder.append(");");
-        resourceBuilder.append(LS);
+
+        ObjectNode rootNode = (ObjectNode) schema.getContent();
+
+        // remove java*
+        // remove description
+        // resolve all $ref
+        // replace format: date with type: date
+        // replace format: date-time with type: date
+        // replace array of primitive with just primitive
+
+        try {
+            String objectString = MAPPER.writeValueAsString(rootNode);
+            resourceBuilder.append(objectString);
+        } catch (JsonProcessingException e) {
+            LOGGER.error("{}: {}", e.getClass().getName(), e);
+        }
         return resourceBuilder.toString();
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java
index 6969051..ed280ff 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java
@@ -15,10 +15,10 @@ import org.slf4j.LoggerFactory;
 import java.io.File;
 import java.util.List;
 
-@Mojo(  name = "elasticsearch",
+@Mojo(  name = "generate-resources",
         defaultPhase = LifecyclePhase.GENERATE_RESOURCES
 )
-@Execute(   goal = "elasticsearch",
+@Execute(   goal = "generate-resources",
             phase = LifecyclePhase.GENERATE_RESOURCES
 )
 public class StreamsElasticsearchResourceGeneratorMojo extends AbstractMojo {
@@ -65,29 +65,8 @@ public class StreamsElasticsearchResourceGeneratorMojo extends AbstractMojo {
 
         StreamsElasticsearchResourceGenerator streamsElasticsearchResourceGenerator = new StreamsElasticsearchResourceGenerator(config);
 
-        Thread.UncaughtExceptionHandler h = new Thread.UncaughtExceptionHandler() {
-            public void uncaughtException(Thread th, Throwable ex) {
-                LOGGER.error("Exception", ex);
-                mojoFailureException = new MojoFailureException("Exception", ex);
-            }
-        };
-        Thread.setDefaultUncaughtExceptionHandler(h);
-        Thread thread = new Thread(streamsElasticsearchResourceGenerator);
-        thread.setUncaughtExceptionHandler(h);
-        try {
-            thread.start();
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-            mojoFailureException = new MojoFailureException("Exception", e);
-        }
-
-        if( mojoFailureException != null )
-            throw mojoFailureException;
-
-        return;
+        streamsElasticsearchResourceGenerator.run();
+
     }
 
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-elasticsearch/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/site/markdown/index.md b/streams-plugins/streams-plugin-elasticsearch/src/site/markdown/index.md
index 9e80a3e..f65433b 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/site/markdown/index.md
+++ b/streams-plugins/streams-plugin-elasticsearch/src/site/markdown/index.md
@@ -3,17 +3,33 @@ org.apache.streams.plugins:streams-plugin-elasticsearch
 
 streams-plugin-elasticsearch generates resources from json schemas to assist with indexing of json data using Elasticsearch.
 
-#### Usage
+### Usage
+
+Output will be placed in target/generated-resources/elasticsearch by default
+
+##### Maven
 
 Run within a module containing a src/main/jsonschema directory
 
     mvn org.apache.streams.plugins:streams-plugin-elasticsearch:0.3-incubating-SNAPSHOT:elasticsearch
 
-Output will be placed in target/generated-resources/elasticsearch by default
+[streams-plugin-elasticsearch/pom.xml](streams-plugin-elasticsearch/pom.xml "streams-plugin-elasticsearch/pom.xml")
 
-#### Example
+##### SDK
 
-[streams-plugin-elasticsearch/pom.xml](streams-plugin-elasticsearch/pom.xml "streams-plugin-elasticsearch/pom.xml")
+Embed within your own java code
+
+    StreamsElasticsearchGenerationConfig config = new StreamsElasticsearchGenerationConfig();
+    config.setSourceDirectory("src/main/jsonschema");
+    config.setTargetDirectory("target/generated-resources");
+    StreamsElasticsearchResourceGenerator generator = new StreamsElasticsearchResourceGenerator(config);
+    generator.run();
+    
+##### CLI
+ 
+Run from CLI without Maven
+
+    java -jar streams-plugin-elasticsearch-jar-with-dependencies.jar StreamsElasticsearchResourceGenerator src/main/jsonschema target/generated-resources
 
 #### Documentation
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorCLITest.java
new file mode 100644
index 0000000..3805894
--- /dev/null
+++ b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorCLITest.java
@@ -0,0 +1,39 @@
+package org.apache.streams.plugins.elasticsearch.test;
+
+import com.google.common.collect.Lists;
+import com.google.common.io.Files;
+import org.apache.streams.plugins.elasticsearch.StreamsElasticsearchResourceGenerator;
+import org.junit.Test;
+
+import java.io.File;
+import java.util.Collection;
+import java.util.List;
+
+import static org.apache.streams.plugins.elasticsearch.test.StreamsElasticsearchResourceGeneratorTest.jsonFilter;
+
+/**
+ * Created by sblackmon on 5/5/16.
+ */
+public class StreamsElasticsearchResourceGeneratorCLITest {
+
+    @Test
+    public void testStreamsElasticsearchResourceGeneratorCLI() throws Exception {
+
+        String sourceDirectory = "target/test-classes/streams-schema-activitystreams";
+        String targetDirectory = "target/generated-resources/elasticsearch-cli";
+
+        List<String> argsList = Lists.newArrayList(sourceDirectory, targetDirectory);
+        StreamsElasticsearchResourceGenerator.main(argsList.toArray(new String[0]));
+
+        File testOutput = new File(targetDirectory);
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(jsonFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() == 133 );
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java
index 20bb561..7844442 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java
@@ -5,7 +5,6 @@ import com.google.common.collect.Lists;
 import com.google.common.collect.Sets;
 import com.google.common.io.Files;
 import org.apache.commons.io.FileUtils;
-import org.apache.commons.lang3.StringUtils;
 import org.apache.streams.plugins.elasticsearch.StreamsElasticsearchGenerationConfig;
 import org.apache.streams.plugins.elasticsearch.StreamsElasticsearchResourceGenerator;
 import org.junit.Assert;
@@ -15,12 +14,10 @@ import org.slf4j.LoggerFactory;
 
 import javax.annotation.Nullable;
 import java.io.File;
-import java.nio.file.Path;
-import java.nio.file.Paths;
 import java.util.Collection;
 import java.util.Iterator;
 
-import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
+import static org.apache.streams.util.schema.FileUtil.dropSourcePathPrefix;
 
 /**
  * Test that Elasticsearch resources are generated.
@@ -29,6 +26,15 @@ public class StreamsElasticsearchResourceGeneratorTest {
 
     private final static Logger LOGGER = LoggerFactory.getLogger(StreamsElasticsearchResourceGeneratorTest.class);
 
+    public static final Predicate<File> jsonFilter = new Predicate<File>() {
+        @Override
+        public boolean apply(@Nullable File file) {
+            if( file.getName().endsWith(".json") )
+                return true;
+            else return false;
+        }
+    };
+
     /**
      * Test that Elasticsearch resources are generated
      *
@@ -39,28 +45,21 @@ public class StreamsElasticsearchResourceGeneratorTest {
 
         StreamsElasticsearchGenerationConfig config = new StreamsElasticsearchGenerationConfig();
 
-        String sourceDirectory = "target/test-classes/streams-schemas";
+        String sourceDirectory = "target/test-classes/streams-schema-activitystreams";
 
         config.setSourceDirectory(sourceDirectory);
 
-        config.setTargetDirectory("target/generated-sources/test");
+        config.setTargetDirectory("target/generated-resources/elasticsearch");
 
         config.setExclusions(Sets.newHashSet("attachments"));
 
         config.setMaxDepth(2);
 
         StreamsElasticsearchResourceGenerator streamsElasticsearchResourceGenerator = new StreamsElasticsearchResourceGenerator(config);
-        Thread thread = new Thread(streamsElasticsearchResourceGenerator);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
+        streamsElasticsearchResourceGenerator.run();
+
+        File testOutput = config.getTargetDirectory();
 
-        File testOutput = new File( "./target/generated-sources/test");
         Predicate<File> jsonFilter = new Predicate<File>() {
             @Override
             public boolean apply(@Nullable File file) {
@@ -107,33 +106,5 @@ public class StreamsElasticsearchResourceGeneratorTest {
             Assert.fail();
         }
 
-//        String expectedDirectory = "target/test-classes/expected";
-//        File testExpected = new File( expectedDirectory );
-//
-//        Iterable<File> expectedIterator = Files.fileTreeTraverser().breadthFirstTraversal(testExpected)
-//                .filter(cqlFilter);
-//        Collection<File> expectedCollection = Lists.newArrayList(expectedIterator);
-//
-//        int fails = 0;
-//
-//        Iterator<File> iterator = expectedCollection.iterator();
-//        while( iterator.hasNext() ) {
-//            File objectExpected = iterator.next();
-//            String expectedEnd = dropSourcePathPrefix(objectExpected.getAbsolutePath(),  expectedDirectory);
-//            File objectActual = new File(config.getTargetDirectory() + "/" + expectedEnd);
-//            LOGGER.info("Comparing: {} and {}", objectExpected.getAbsolutePath(), objectActual.getAbsolutePath());
-//            assert( objectActual.exists());
-//            if( FileUtils.contentEquals(objectActual, objectExpected) == true ) {
-//                LOGGER.info("Exact Match!");
-//            } else {
-//                LOGGER.info("No Match!");
-//                fails++;
-//            }
-//        }
-//        if( fails > 0 ) {
-//            LOGGER.info("Fails: {}", fails);
-//            Assert.fail();
-//        }
-
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml b/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
index 2aaa037..de74014 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
+++ b/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
@@ -18,9 +18,10 @@
         </dependency>
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-schemas</artifactId>
+            <artifactId>streams-schema-activitystreams</artifactId>
             <version>${project.version}</version>
             <scope>test</scope>
+            <type>test-jar</type>
         </dependency>
     </dependencies>
 
@@ -32,19 +33,19 @@
                 <version>0.3-incubating-SNAPSHOT</version>
                 <configuration>
                     <sourcePaths>
-                        <sourcePath>target/test-classes/streams-schemas/activity.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/collection.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/media_link.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/object.json</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/objectTypes</sourcePath>
-                        <sourcePath>target/test-classes/streams-schemas/verbs</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/activity.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/collection.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/media_link.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/object.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/objectTypes</sourcePath>
+                        <sourcePath>target/test-classes/streams-schema-activitystreams/verbs</sourcePath>
                     </sourcePaths>
-                    <targetDirectory>target/generated-resources/test-mojo</targetDirectory>
+                    <targetDirectory>target/generated-resources/elasticsearch-mojo</targetDirectory>
                 </configuration>
                 <executions>
                     <execution>
                         <goals>
-                            <goal>elasticsearch</goal>
+                            <goal>generate-resources</goal>
                         </goals>
                     </execution>
                 </executions>
@@ -55,9 +56,9 @@
                 <version>2.10</version>
                 <configuration>
                     <includes>**/*.json</includes>
-                    <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                    <outputDirectory>${project.build.directory}/test-classes/streams-schema-activitystreams</outputDirectory>
                     <includeGroupIds>org.apache.streams</includeGroupIds>
-                    <includeArtifactIds>streams-schemas</includeArtifactIds>
+                    <includeArtifactIds>streams-schema-activitystreams</includeArtifactIds>
                     <includeTypes>jar,test-jar</includeTypes>
                 </configuration>
                 <executions>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-hbase/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/pom.xml b/streams-plugins/streams-plugin-hbase/pom.xml
index 94a0115..b29bd38 100644
--- a/streams-plugins/streams-plugin-hbase/pom.xml
+++ b/streams-plugins/streams-plugin-hbase/pom.xml
@@ -54,10 +54,17 @@
         </dependency>
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-schemas</artifactId>
+            <artifactId>streams-util</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schema-activitystreams</artifactId>
+            <version>${project.version}</version>
+            <type>test-jar</type>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
             <groupId>com.google.guava</groupId>
             <artifactId>guava</artifactId>
         </dependency>
@@ -230,9 +237,9 @@
                         </goals>
                         <configuration>
                             <includeGroupIds>org.apache.streams</includeGroupIds>
-                            <includeArtifactIds>streams-schemas</includeArtifactIds>
+                            <includeArtifactIds>streams-schema-activitystreams</includeArtifactIds>
                             <includes>**/*.json</includes>
-                            <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                            <outputDirectory>${project.build.directory}/test-classes/streams-schema-activitystreams</outputDirectory>
                         </configuration>
                     </execution>
                 </executions>



[04/53] [abbrv] incubator-streams git commit: STREAMS-398 - streams-schemas

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/approve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/approve.json b/streams-schemas/src/main/jsonschema/verbs/approve.json
new file mode 100644
index 0000000..ec66f9b
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/approve.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Approve",
+    "description": "Indicates that the actor has approved the object. For instance, a manager might approve a travel request.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "approve"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} approved {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/archive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/archive.json b/streams-schemas/src/main/jsonschema/verbs/archive.json
new file mode 100644
index 0000000..24aea16
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/archive.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Archive",
+    "description": "Indicates that the actor has archived the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "archive"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} archived {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/assign.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/assign.json b/streams-schemas/src/main/jsonschema/verbs/assign.json
new file mode 100644
index 0000000..8fe5458
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/assign.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Assign",
+    "description": "Indicates that the actor has assigned the object to the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "assign"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} assigned {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/at.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/at.json b/streams-schemas/src/main/jsonschema/verbs/at.json
new file mode 100644
index 0000000..42c1222
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/at.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "At",
+    "description": "Indicates that the actor is currently located at the object. For instance, a person being at a specific physical location.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "assign"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} assigned {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/attach.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/attach.json b/streams-schemas/src/main/jsonschema/verbs/attach.json
new file mode 100644
index 0000000..77ff605
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/attach.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Attach",
+    "description": "Indicates that the actor has attached the object to the target.For instance, a person attaching a file to a wiki page or an email.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "attach"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} attached {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/attend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/attend.json b/streams-schemas/src/main/jsonschema/verbs/attend.json
new file mode 100644
index 0000000..07e60fd
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/attend.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Attend",
+    "description": "Indicates that the actor has attended the object. For instance, a person attending a meeting.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "attend"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} attended {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/author.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/author.json b/streams-schemas/src/main/jsonschema/verbs/author.json
new file mode 100644
index 0000000..adc8b28
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/author.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Author",
+    "description": "Indicates that the actor has authored the object. Note that this is a more specific form of the verb \"create\".",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "author"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} authored {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/authorize.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/authorize.json b/streams-schemas/src/main/jsonschema/verbs/authorize.json
new file mode 100644
index 0000000..7439b06
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/authorize.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Authorize",
+    "description": "Indicates that the actor has authorized the object. If a target is specified, it means that the authorization is specifically in regards to the target. For instance, a service can authorize a person to access a given application; in which case the actor is the service, the object is the person, and the target is the application. In contrast, a person can authorize a request; in which case the actor is the person and the object is the request and there might be no explicit target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "authorize"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} authorized {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/borrow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/borrow.json b/streams-schemas/src/main/jsonschema/verbs/borrow.json
new file mode 100644
index 0000000..ede59c1
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/borrow.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Borrow",
+    "description": "Indicates that the actor has borrowed the object. If a target is specified, it identifies the entity from which the object was borrowed. For instance, if a person borrows a book from a library, the person is the actor, the book is the object and the library is the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "borrow"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} borrow {object.displayName} from {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/build.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/build.json b/streams-schemas/src/main/jsonschema/verbs/build.json
new file mode 100644
index 0000000..a90441f
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/build.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Build",
+    "description": "Indicates that the actor has built the object. For example, if a person builds a model or compiles code.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "build"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} built {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/cancel.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/cancel.json b/streams-schemas/src/main/jsonschema/verbs/cancel.json
new file mode 100644
index 0000000..4ab2406
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/cancel.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Cancel",
+    "description": "Indicates that the actor has canceled the object. For instance, canceling a calendar event.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "cancel"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} cancelled {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/checkin.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/checkin.json b/streams-schemas/src/main/jsonschema/verbs/checkin.json
new file mode 100644
index 0000000..d59a8c2
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/checkin.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "checkin",
+    "description": "Indicates that the actor has checked-in to the object. For instance, a person checking-in to a Place.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "checkin"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} checked in at {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/close.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/close.json b/streams-schemas/src/main/jsonschema/verbs/close.json
new file mode 100644
index 0000000..7aa049d
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/close.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Close",
+    "description": "Indicates that the actor has closed the object. For instance, the object could represent a ticket being tracked in an issue management system.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "close"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} closed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/complete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/complete.json b/streams-schemas/src/main/jsonschema/verbs/complete.json
new file mode 100644
index 0000000..4a95d48
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/complete.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Complete",
+    "description": "Indicates that the actor has completed the object",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "complete"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} completed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/confirm.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/confirm.json b/streams-schemas/src/main/jsonschema/verbs/confirm.json
new file mode 100644
index 0000000..aa8d45c
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/confirm.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Confirm",
+    "description": "Indicates that the actor has confirmed or agrees with the object. For instance, a software developer might confirm an issue reported against a product.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "confirm"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} confirmed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/consume.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/consume.json b/streams-schemas/src/main/jsonschema/verbs/consume.json
new file mode 100644
index 0000000..3dc558a
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/consume.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Consume",
+    "description": "Indicates that the actor has consumed the object. The specific meaning is dependent largely on the object's type. For instance, an actor may \"consume\" an audio object, indicating that the actor has listened to it; or an actor may \"consume\" a book, indicating that the book has been read. As such, the \"consume\" verb is a more generic form of other more specific verbs such as \"read\" and \"play\".",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "consume"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} consumed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/create.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/create.json b/streams-schemas/src/main/jsonschema/verbs/create.json
new file mode 100644
index 0000000..dda3012
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/create.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Create",
+    "description": "Indicates that the actor has created the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "create"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} created {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/delete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/delete.json b/streams-schemas/src/main/jsonschema/verbs/delete.json
new file mode 100644
index 0000000..39966c9
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/delete.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Delete",
+    "description": "Indicates that the actor has deleted the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "delete"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} deleted {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/deliver.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/deliver.json b/streams-schemas/src/main/jsonschema/verbs/deliver.json
new file mode 100644
index 0000000..a4b5648
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/deliver.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Deliver",
+    "description": "Indicates that the actor has delivered the object. For example, delivering a package.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "deliver"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} delivered {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/deny.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/deny.json b/streams-schemas/src/main/jsonschema/verbs/deny.json
new file mode 100644
index 0000000..5bf473b
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/deny.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Deny",
+    "description": "Indicates that the actor has denied the object. For example, a manager may deny a travel request.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "deny"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} denied {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/disagree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/disagree.json b/streams-schemas/src/main/jsonschema/verbs/disagree.json
new file mode 100644
index 0000000..b2eb0c2
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/disagree.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Disagree",
+    "description": "Indicates that the actor disagrees with the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "disagree"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} disagrees with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/dislike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/dislike.json b/streams-schemas/src/main/jsonschema/verbs/dislike.json
new file mode 100644
index 0000000..e33cb26
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/dislike.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Dislike",
+    "description": "Indicates that the actor dislikes the object. Note that the \"dislike\" verb is distinct from the \"unlike\" verb which assumes that the object had been previously \"liked\".",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "dislike"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} dislikes {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/experience.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/experience.json b/streams-schemas/src/main/jsonschema/verbs/experience.json
new file mode 100644
index 0000000..b760a5d
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/experience.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Experience",
+    "description": "Indicates that the actor has experienced the object in some manner. Note that, depending on the specific object types used for both the actor and object, the meaning of this verb can overlap that of the \"consume\" and \"play\" verbs. For instance, a person might \"experience\" a movie; or \"play\" the movie; or \"consume\" the movie. The \"experience\" verb can be considered a more generic form of other more specific verbs as \"consume\", \"play\", \"watch\", \"listen\", and \"read\"",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "experience"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} experienced {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/favorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/favorite.json b/streams-schemas/src/main/jsonschema/verbs/favorite.json
new file mode 100644
index 0000000..fa7afa3
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/favorite.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Favorite",
+    "description": "Indicates that the actor marked the object as an item of special interest.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "favorite"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} marked {object.displayName} as a favorite"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/find.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/find.json b/streams-schemas/src/main/jsonschema/verbs/find.json
new file mode 100644
index 0000000..b1a7dacc
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/find.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Find",
+    "description": "Indicates that the actor has found the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "find"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} found {object.displayName}."
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/flag-as-inappropriate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/flag-as-inappropriate.json b/streams-schemas/src/main/jsonschema/verbs/flag-as-inappropriate.json
new file mode 100644
index 0000000..e6657aa
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/flag-as-inappropriate.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Flag-As-Inappropriate",
+    "description": "Indicates that the actor has flagged the object as being inappropriate for some reason. When using this verb, the context property can be used to provide additional detail about why the object has been flagged.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "flag-as-inappropriate"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} flagged {object.displayName} as inappropriate."
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/follow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/follow.json b/streams-schemas/src/main/jsonschema/verbs/follow.json
new file mode 100644
index 0000000..8f50b89
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/follow.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Follow",
+    "description": "Indicates that the actor began following the activity of the object. In most cases, the objectType will be a \"person\", but it can potentially be of any type that can sensibly generate activity. Processors MAY ignore (silently drop) successive identical \"follow\" activities.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "follow"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} started following {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/give.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/give.json b/streams-schemas/src/main/jsonschema/verbs/give.json
new file mode 100644
index 0000000..a9b6e74
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/give.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Give",
+    "description": "Indicates that the actor is giving an object to the target. Examples include one person giving a badge object to another person. The object identifies the object being given. The target identifies the receiver.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "give"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} gave {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/host.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/host.json b/streams-schemas/src/main/jsonschema/verbs/host.json
new file mode 100644
index 0000000..8c59cd0
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/host.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Host",
+    "description": "Indicates that the actor is hosting the object. As in hosting an event, or hosting a service.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "host"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} is hosting {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/ignore.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/ignore.json b/streams-schemas/src/main/jsonschema/verbs/ignore.json
new file mode 100644
index 0000000..442de31
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/ignore.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Ignore",
+    "description": "Indicates that the actor has ignored the object. For instance, this verb may be used when an actor has ignored a friend request, in which case the object may be the request-friend activity.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "ignore"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} ignored {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/insert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/insert.json b/streams-schemas/src/main/jsonschema/verbs/insert.json
new file mode 100644
index 0000000..99db2ec
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/insert.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Insert",
+    "description": "Indicates that the actor has inserted the object into the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "insert"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} inserted {object.displayName} into {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/install.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/install.json b/streams-schemas/src/main/jsonschema/verbs/install.json
new file mode 100644
index 0000000..e3d6e0c
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/install.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Install",
+    "description": "Indicates that the actor has installed the object, as in installing an application.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "install"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} installed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/interact.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/interact.json b/streams-schemas/src/main/jsonschema/verbs/interact.json
new file mode 100644
index 0000000..d589ce4
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/interact.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Interact",
+    "description": "Indicates that the actor has interacted with the object. For instance, when one person interacts with another.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "interact"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} interacted with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/invite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/invite.json b/streams-schemas/src/main/jsonschema/verbs/invite.json
new file mode 100644
index 0000000..34a8691
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/invite.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Invite",
+    "description": "Indicates that the actor has invited the object, typically a person object, to join or participate in the object described by the target. The target could, for instance, be an event, group or a service.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "invite"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} invited {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/join.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/join.json b/streams-schemas/src/main/jsonschema/verbs/join.json
new file mode 100644
index 0000000..78daed8
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/join.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Join",
+    "description": "Indicates that the actor has become a member of the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "join"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} joined {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/leave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/leave.json b/streams-schemas/src/main/jsonschema/verbs/leave.json
new file mode 100644
index 0000000..1ce73bc
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/leave.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Leave",
+    "description": "Indicates that the actor has left the object. For instance, a Person leaving a Group or checking-out of a Place.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "leave"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} left {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/like.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/like.json b/streams-schemas/src/main/jsonschema/verbs/like.json
new file mode 100644
index 0000000..4ac1bf7
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/like.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Like",
+    "description": "Indicates that the actor marked the object as an item of special interest.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "like"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} likes {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/listen.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/listen.json b/streams-schemas/src/main/jsonschema/verbs/listen.json
new file mode 100644
index 0000000..3476144
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/listen.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Listen",
+    "description": "Indicates that the actor has listened to the object. This is typically only applicable for objects representing audio content, such as music, an audio-book, or a radio broadcast.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "listen"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} listened to {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/lose.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/lose.json b/streams-schemas/src/main/jsonschema/verbs/lose.json
new file mode 100644
index 0000000..60899ba
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/lose.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Lose",
+    "description": "Indicates that the actor has lost the object. For instance, if a person loses a game.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "lose"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} lost {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/make-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/make-friend.json b/streams-schemas/src/main/jsonschema/verbs/make-friend.json
new file mode 100644
index 0000000..a6440f1
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/make-friend.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Befriend",
+    "description": "Indicates the creation of a friendship that is reciprocated by the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "make-friend"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} is now friends with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/open.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/open.json b/streams-schemas/src/main/jsonschema/verbs/open.json
new file mode 100644
index 0000000..0145bab
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/open.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Open",
+    "description": "Indicates that the actor has opened the object. For instance, the object could represent a ticket being tracked in an issue management system.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "open"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} opened {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/play.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/play.json b/streams-schemas/src/main/jsonschema/verbs/play.json
new file mode 100644
index 0000000..3f25748
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/play.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Play",
+    "description": "Indicates that the actor spent some time enjoying the object. For example, if the object is a video this indicates that the subject watched all or part of the video.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "play"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} played {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/post.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/post.json b/streams-schemas/src/main/jsonschema/verbs/post.json
new file mode 100644
index 0000000..ea1ad39
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/post.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Post",
+    "description": "To publish an object",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "post"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} posted {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/present.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/present.json b/streams-schemas/src/main/jsonschema/verbs/present.json
new file mode 100644
index 0000000..bcfb1dc
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/present.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Present",
+    "description": "Indicates that the actor has presented the object. For instance, when a person gives a presentation at a conference.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "present"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} presented {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/purchase.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/purchase.json b/streams-schemas/src/main/jsonschema/verbs/purchase.json
new file mode 100644
index 0000000..303386a
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/purchase.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Purchase",
+    "description": "Indicates that the actor has purchased the object. If a target is specified, in indicates the entity from which the object was purchased.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "purchase"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} purchased {object.displayName} from {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/qualify.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/qualify.json b/streams-schemas/src/main/jsonschema/verbs/qualify.json
new file mode 100644
index 0000000..974448f
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/qualify.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Qualify",
+    "description": "Indicates that the actor has qualified for the object. If a target is specified, it indicates the context within which the qualification applies.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "qualify"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} qualified {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/read.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/read.json b/streams-schemas/src/main/jsonschema/verbs/read.json
new file mode 100644
index 0000000..e797f41
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/read.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Read",
+    "description": "Indicates that the actor read the object. This is typically only applicable for objects representing printed or written content, such as a book, a message or a comment.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "read"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} read {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/receive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/receive.json b/streams-schemas/src/main/jsonschema/verbs/receive.json
new file mode 100644
index 0000000..0d44aef
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/receive.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Receive",
+    "description": "Indicates that the actor is receiving an object. Examples include a person receiving a badge object. The object identifies the object being received.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "receive"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} received {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/reject.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/reject.json b/streams-schemas/src/main/jsonschema/verbs/reject.json
new file mode 100644
index 0000000..b82fac7
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/reject.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Reject",
+    "description": "Indicates that the actor has rejected the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "reject"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} rejected {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/remove-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/remove-friend.json b/streams-schemas/src/main/jsonschema/verbs/remove-friend.json
new file mode 100644
index 0000000..073441d
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/remove-friend.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "UnFriend",
+    "description": "Indicates that the actor has removed the object from the collection of friends.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "remove-friend"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} removed friend {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/remove.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/remove.json b/streams-schemas/src/main/jsonschema/verbs/remove.json
new file mode 100644
index 0000000..5b694db
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/remove.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Remove",
+    "description": "Indicates that the actor has removed the object from the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "remove"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} removed {object.displayName} from {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/replace.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/replace.json b/streams-schemas/src/main/jsonschema/verbs/replace.json
new file mode 100644
index 0000000..198c8c5
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/replace.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Replace",
+    "description": "Indicates that the actor has replaced the target with the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "replace"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} replaced {target.displayName} with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/request-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/request-friend.json b/streams-schemas/src/main/jsonschema/verbs/request-friend.json
new file mode 100644
index 0000000..9e246ca
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/request-friend.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "RequestFriend",
+    "description": "Indicates the creation of a friendship that has not yet been reciprocated by the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "request-friend"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} sent a friend request to {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/request.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/request.json b/streams-schemas/src/main/jsonschema/verbs/request.json
new file mode 100644
index 0000000..35807f5
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/request.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Request",
+    "description": "Indicates that the actor has requested the object. If a target is specified, it indicates the entity from which the object is being requested.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "request"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} requested {object.displayName} from {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/resolve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/resolve.json b/streams-schemas/src/main/jsonschema/verbs/resolve.json
new file mode 100644
index 0000000..0b71ce3
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/resolve.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Resolve",
+    "description": "Indicates that the actor has resolved the object. For instance, the object could represent a ticket being tracked in an issue management system.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "resolve"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} resolved {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/retract.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/retract.json b/streams-schemas/src/main/jsonschema/verbs/retract.json
new file mode 100644
index 0000000..ff7cbe7
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/retract.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Retract",
+    "description": "Indicates that the actor has retracted the object. For instance, if an actor wishes to retract a previously published activity, the object would be the previously published activity that is being retracted.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "retract"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} retracted {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/return.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/return.json b/streams-schemas/src/main/jsonschema/verbs/return.json
new file mode 100644
index 0000000..14a8cfb
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/return.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Return",
+    "description": "Indicates that the actor has returned the object. If a target is specified, it indicates the entity to which the object was returned.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "return"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} returned {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/rsvp-maybe.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/rsvp-maybe.json b/streams-schemas/src/main/jsonschema/verbs/rsvp-maybe.json
new file mode 100644
index 0000000..4838406
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/rsvp-maybe.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Rsvp Maybe",
+    "description": "To indicate that the actor may attend an event",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "rsvp-maybe"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} might attend {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/rsvp-no.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/rsvp-no.json b/streams-schemas/src/main/jsonschema/verbs/rsvp-no.json
new file mode 100644
index 0000000..dc36ee3
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/rsvp-no.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Rsvp No",
+    "description": "To indicate that the actor will not attend an event",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "rsvp-no"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} will not attend {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/rsvp-yes.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/rsvp-yes.json b/streams-schemas/src/main/jsonschema/verbs/rsvp-yes.json
new file mode 100644
index 0000000..f62141e
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/rsvp-yes.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Rsvp Yes",
+    "description": "To indicate that the actor will attend an event",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "rsvp-yes"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} is attending {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/satisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/satisfy.json b/streams-schemas/src/main/jsonschema/verbs/satisfy.json
new file mode 100644
index 0000000..a719680
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/satisfy.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Satisfy",
+    "description": "Indicates that the actor has satisfied the object. If a target is specified, it indicate the context within which the object was satisfied. For instance, if a person satisfies the requirements for a particular challenge, the person is the actor; the requirement is the object; and the challenge is the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "satisfy"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} has satisfied {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/save.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/save.json b/streams-schemas/src/main/jsonschema/verbs/save.json
new file mode 100644
index 0000000..1bdbc4b
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/save.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Save",
+    "description": "Indicates that the actor has called out the object as being of interest primarily to him- or herself. Though this action MAY be shared publicly, the implication is that the object has been saved primarily for the actor's own benefit rather than to show it to others as would be indicated by the \"share\" verb.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "save"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} saved {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/schedule.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/schedule.json b/streams-schemas/src/main/jsonschema/verbs/schedule.json
new file mode 100644
index 0000000..a9824a3
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/schedule.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Schedule",
+    "description": "Indicates that the actor has scheduled the object. For instance, scheduling a meeting.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "schedule"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} scheduled {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/search.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/search.json b/streams-schemas/src/main/jsonschema/verbs/search.json
new file mode 100644
index 0000000..3263bbb
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/search.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Search",
+    "description": "Indicates that the actor is or has searched for the object. If a target is specified, it indicates the context within which the search is or has been conducted.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "satisfy"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} search for {object.displayName} in {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/sell.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/sell.json b/streams-schemas/src/main/jsonschema/verbs/sell.json
new file mode 100644
index 0000000..16aa351
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/sell.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Sell",
+    "description": "Indicates that the actor has sold the object. If a target is specified, it indicates the entity to which the object was sold.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "sell"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} sold {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/send.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/send.json b/streams-schemas/src/main/jsonschema/verbs/send.json
new file mode 100644
index 0000000..ead4108
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/send.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Share",
+    "description": "Indicates that the actor has called out the object to readers. In most cases, the actor did not create the object being shared, but is instead drawing attention to it.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "share"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} shared {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/share.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/share.json b/streams-schemas/src/main/jsonschema/verbs/share.json
new file mode 100644
index 0000000..18c0aea
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/share.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Share",
+    "description": "To share an object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "share"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} shared {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/sponsor.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/sponsor.json b/streams-schemas/src/main/jsonschema/verbs/sponsor.json
new file mode 100644
index 0000000..cc6f5cf
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/sponsor.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Sponsor",
+    "description": "Indicates that the actor has sponsored the object. If a target is specified, it indicates the context within which the sponsorship is offered. For instance, a company can sponsor an event; or an individual can sponsor a project; etc.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "sponsor"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} sponsored {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/start.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/start.json b/streams-schemas/src/main/jsonschema/verbs/start.json
new file mode 100644
index 0000000..61eaf06
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/start.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Start",
+    "description": "Indicates that the actor has started the object. For instance, when a person starts a project.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "start"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} started {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/stop-following.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/stop-following.json b/streams-schemas/src/main/jsonschema/verbs/stop-following.json
new file mode 100644
index 0000000..e09317d
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/stop-following.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "UnFollow",
+    "description": "Indicates that the actor has stopped following the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "follow"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} stopped following {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/submit.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/submit.json b/streams-schemas/src/main/jsonschema/verbs/submit.json
new file mode 100644
index 0000000..c1d25b1
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/submit.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Submit",
+    "description": "Indicates that the actor has submitted the object. If a target is specified, it indicates the entity to which the object was submitted.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "submit"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} submitted {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/tag.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/tag.json b/streams-schemas/src/main/jsonschema/verbs/tag.json
new file mode 100644
index 0000000..6208eae
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/tag.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Tag",
+    "description": "Indicates that the actor has associated the object with the target. For example, if the actor specifies that a particular user appears in a photo. the object is the user and the target is the photo.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "tag"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} tagged {object.displayName} as {target.displayName}"
+        }
+    }
+}



[10/53] [abbrv] incubator-streams git commit: re-enable hive plugin

Posted by mf...@apache.org.
re-enable hive plugin


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/114c1c5f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/114c1c5f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/114c1c5f

Branch: refs/heads/invalid_headers
Commit: 114c1c5ff31447a0ab85d9a2518d5ce08284d3ff
Parents: e84dcd7
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Tue May 3 16:33:47 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Jun 1 12:49:27 2016 -0500

----------------------------------------------------------------------
 streams-plugins/pom.xml | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/114c1c5f/streams-plugins/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/pom.xml b/streams-plugins/pom.xml
index 390c8a0..b90e2d5 100644
--- a/streams-plugins/pom.xml
+++ b/streams-plugins/pom.xml
@@ -36,6 +36,7 @@
     </properties>
 
     <modules>
+        <module>streams-plugin-hive</module>
         <module>streams-plugin-pojo</module>
  	</modules>
 


[49/53] [abbrv] incubator-streams git commit: Added missing license headers for hive plugin

Posted by mf...@apache.org.
Added missing license headers for hive plugin


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/536acbd2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/536acbd2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/536acbd2

Branch: refs/heads/invalid_headers
Commit: 536acbd206043778f69ce302143303914ab46cc4
Parents: 897df79
Author: Matt Franklin <mf...@apache.org>
Authored: Wed Oct 12 14:22:16 2016 -0400
Committer: Matt Franklin <mf...@apache.org>
Committed: Wed Oct 12 14:22:16 2016 -0400

----------------------------------------------------------------------
 streams-plugins/streams-plugin-hive/pom.xml      |  1 +
 .../hive/StreamsHiveGenerationConfig.java        | 19 +++++++++++++++++++
 .../hive/StreamsHiveResourceGenerator.java       | 19 +++++++++++++++++++
 .../hive/StreamsHiveResourceGeneratorMojo.java   | 19 +++++++++++++++++++
 .../StreamsHiveResourceGeneratorCLITest.java     | 19 +++++++++++++++++++
 .../StreamsHiveResourceGeneratorMojoTest.java    | 19 +++++++++++++++++++
 .../test/StreamsHiveResourceGeneratorTest.java   | 19 +++++++++++++++++++
 .../test/resources/streams-plugin-hive/pom.xml   | 19 +++++++++++++++++++
 8 files changed, 134 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/536acbd2/streams-plugins/streams-plugin-hive/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/pom.xml b/streams-plugins/streams-plugin-hive/pom.xml
index 68c9dd4..321c090 100644
--- a/streams-plugins/streams-plugin-hive/pom.xml
+++ b/streams-plugins/streams-plugin-hive/pom.xml
@@ -6,6 +6,7 @@
   ~ regarding copyright ownership.  The ASF licenses this file
   ~ to you under the Apache License, Version 2.0 (the
   ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
   ~
   ~   http://www.apache.org/licenses/LICENSE-2.0
   ~

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/536acbd2/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveGenerationConfig.java b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveGenerationConfig.java
index f957757..b09ce18 100644
--- a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveGenerationConfig.java
+++ b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveGenerationConfig.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.hive;
 
 import org.apache.streams.util.schema.GenerationConfig;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/536acbd2/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGenerator.java b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGenerator.java
index 60c59ca..c270e14 100644
--- a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGenerator.java
+++ b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGenerator.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.hive;
 
 import com.fasterxml.jackson.databind.JsonNode;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/536acbd2/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGeneratorMojo.java b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGeneratorMojo.java
index 76e3a18..8638046 100644
--- a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/hive/StreamsHiveResourceGeneratorMojo.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.hive;
 
 import org.apache.maven.plugin.AbstractMojo;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/536acbd2/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorCLITest.java
index ed08c31..7e213d0 100644
--- a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorCLITest.java
+++ b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorCLITest.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.test;
 
 import com.google.common.base.Predicate;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/536acbd2/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorMojoTest.java
index e2fbecc..8594e11 100644
--- a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorMojoTest.java
+++ b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorMojoTest.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.test;
 
 import com.google.common.collect.Lists;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/536acbd2/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java
index 9778bb6..a4b8047 100644
--- a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.test;
 
 import com.google.common.base.Predicate;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/536acbd2/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml b/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
index d2980b4..ed438af 100644
--- a/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
+++ b/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
@@ -1,3 +1,22 @@
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
 <project xmlns="http://maven.apache.org/POM/4.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">


[48/53] [abbrv] incubator-streams git commit: Added missing license headers for hbase plugin

Posted by mf...@apache.org.
Added missing license headers for hbase plugin


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/897df797
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/897df797
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/897df797

Branch: refs/heads/invalid_headers
Commit: 897df797283550963556b58dff2902fcfbfb39a1
Parents: 78b801d
Author: Matt Franklin <mf...@apache.org>
Authored: Wed Oct 12 14:21:59 2016 -0400
Committer: Matt Franklin <mf...@apache.org>
Committed: Wed Oct 12 14:21:59 2016 -0400

----------------------------------------------------------------------
 streams-plugins/streams-plugin-hbase/pom.xml     |  1 +
 .../hbase/StreamsHbaseGenerationConfig.java      | 19 +++++++++++++++++++
 .../hbase/StreamsHbaseResourceGenerator.java     | 19 +++++++++++++++++++
 .../hbase/StreamsHbaseResourceGeneratorMojo.java | 19 +++++++++++++++++++
 .../StreamsHbaseResourceGeneratorCLITest.java    | 19 +++++++++++++++++++
 .../StreamsHbaseResourceGeneratorMojoTest.java   | 19 +++++++++++++++++++
 .../test/StreamsHbaseResourceGeneratorTest.java  | 19 +++++++++++++++++++
 .../test/resources/streams-plugin-hbase/pom.xml  | 19 +++++++++++++++++++
 8 files changed, 134 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/897df797/streams-plugins/streams-plugin-hbase/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/pom.xml b/streams-plugins/streams-plugin-hbase/pom.xml
index 648f870..787f42b 100644
--- a/streams-plugins/streams-plugin-hbase/pom.xml
+++ b/streams-plugins/streams-plugin-hbase/pom.xml
@@ -6,6 +6,7 @@
   ~ regarding copyright ownership.  The ASF licenses this file
   ~ to you under the Apache License, Version 2.0 (the
   ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
   ~
   ~   http://www.apache.org/licenses/LICENSE-2.0
   ~

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/897df797/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseGenerationConfig.java b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseGenerationConfig.java
index 3972a54..977c3d9 100644
--- a/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseGenerationConfig.java
+++ b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseGenerationConfig.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.hbase;
 
 import org.apache.streams.util.schema.GenerationConfig;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/897df797/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGenerator.java b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGenerator.java
index 71a8705..5fde715 100644
--- a/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGenerator.java
+++ b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGenerator.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.hbase;
 
 import com.fasterxml.jackson.databind.JsonNode;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/897df797/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGeneratorMojo.java b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGeneratorMojo.java
index 6bad40b..24a6b88 100644
--- a/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGeneratorMojo.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.hbase;
 
 import org.apache.maven.plugin.AbstractMojo;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/897df797/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorCLITest.java
index 24eba24..700203a 100644
--- a/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorCLITest.java
+++ b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorCLITest.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.test;
 
 import com.google.common.base.Predicate;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/897df797/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorMojoTest.java
index fc8c77a..a8c0ee8 100644
--- a/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorMojoTest.java
+++ b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorMojoTest.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.test;
 
 import com.google.common.collect.Lists;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/897df797/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorTest.java b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorTest.java
index 91a1a05..82eb163 100644
--- a/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorTest.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.test;
 
 import com.google.common.base.Predicate;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/897df797/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml b/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml
index cbf36c4..b5e4bd3 100644
--- a/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml
+++ b/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml
@@ -1,3 +1,22 @@
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
 <project xmlns="http://maven.apache.org/POM/4.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">


[13/53] [abbrv] incubator-streams git commit: WIP for apachecon

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/install.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/install.json b/streams-schemas/src/test/resources/activities/install.json
new file mode 100644
index 0000000..1ecdecd
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/install.json
@@ -0,0 +1,18 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "install",
+  "object": {
+    "objectType": "application",
+    "displayName": "Approved Software Scanning Tool",
+    "location": {
+      "displayName": "All computers in Building A"
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/interact.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/interact.json b/streams-schemas/src/test/resources/activities/interact.json
new file mode 100644
index 0000000..f427513
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/interact.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Bob"
+  },
+  "verb": "interact",
+  "object": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "title": "Bob called Laura."
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/invite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/invite.json b/streams-schemas/src/test/resources/activities/invite.json
new file mode 100644
index 0000000..7c84b78
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/invite.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "invite",
+  "object": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "target": {
+    "objectType": "event",
+    "displayName": "Job Interview"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/join.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/join.json b/streams-schemas/src/test/resources/activities/join.json
new file mode 100644
index 0000000..7996a9b
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/join.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "join",
+  "object": {
+    "objectType": "organization",
+    "displayName": "Acme, Co"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/leave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/leave.json b/streams-schemas/src/test/resources/activities/leave.json
new file mode 100644
index 0000000..08516c5
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/leave.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "leave",
+  "object": {
+    "objectType": "organization",
+    "displayName": "Other, Co"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/like.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/like.json b/streams-schemas/src/test/resources/activities/like.json
new file mode 100644
index 0000000..853676f
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/like.json
@@ -0,0 +1,22 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "like",
+  "object": {
+    "actor": {
+      "objectType": "person",
+      "displayName": "Mark"
+    },
+    "verb": "join",
+    "object": {
+      "objectType": "organization",
+      "displayName": "Acme, Co"
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/listen.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/listen.json b/streams-schemas/src/test/resources/activities/listen.json
new file mode 100644
index 0000000..1268060
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/listen.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "listen",
+  "object": {
+    "objectType": "audio",
+    "displayName": "Welcome to the Company (Podcast).mp3"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/lose.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/lose.json b/streams-schemas/src/test/resources/activities/lose.json
new file mode 100644
index 0000000..073e914
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/lose.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "organization",
+    "displayName": "New York Yankees"
+  },
+  "verb": "lose",
+  "object": {
+    "objectType": "game",
+    "displayName": "World Series"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/make-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/make-friend.json b/streams-schemas/src/test/resources/activities/make-friend.json
new file mode 100644
index 0000000..1acf539
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/make-friend.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "make-friend",
+  "object": {
+    "objectType": "person",
+    "displayName": "Laura"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/open.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/open.json b/streams-schemas/src/test/resources/activities/open.json
new file mode 100644
index 0000000..4bf47cd
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/open.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "open",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #126"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/play.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/play.json b/streams-schemas/src/test/resources/activities/play.json
new file mode 100644
index 0000000..0605662
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/play.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "play",
+  "object": {
+    "objectType": "audio",
+    "displayName": "Call Me Maybe"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/post.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/post.json b/streams-schemas/src/test/resources/activities/post.json
new file mode 100644
index 0000000..73cfff7
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/post.json
@@ -0,0 +1,25 @@
+{
+  "published": "2011-02-10T15:04:55Z",
+  "actor": {
+    "url": "http://example.org/martin",
+    "objectType" : "person",
+    "id": "tag:example.org,2011:martin",
+    "image": {
+      "url": "http://example.org/martin/image",
+      "width": 250,
+      "height": 250
+    },
+    "displayName": "Martin Smith"
+  },
+  "verb": "post",
+  "object" : {
+    "url": "http://example.org/blog/2011/02/entry",
+    "id": "tag:example.org,2011:abc123/xyz"
+  },
+  "target" : {
+    "url": "http://example.org/blog/",
+    "objectType": "blog",
+    "id": "tag:example.org,2011:abc123",
+    "displayName": "Martin's Blog"
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/present.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/present.json b/streams-schemas/src/test/resources/activities/present.json
new file mode 100644
index 0000000..8f4df12
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/present.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "present",
+  "object": {
+    "objectType": "file",
+    "displayName": "1Q2013 Sales Forecast.ppt"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/purchase.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/purchase.json b/streams-schemas/src/test/resources/activities/purchase.json
new file mode 100644
index 0000000..3354597
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/purchase.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "purchase",
+  "object": {
+    "objectType": "video",
+    "displayName": "The Avengers"
+  },
+  "title": "Mark purchased the movie, The Avengers"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/qualify.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/qualify.json b/streams-schemas/src/test/resources/activities/qualify.json
new file mode 100644
index 0000000..630bda0
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/qualify.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "qualify",
+  "object": {
+    "objectType": "offer",
+    "displayName": "Free Money!"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/read.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/read.json b/streams-schemas/src/test/resources/activities/read.json
new file mode 100644
index 0000000..3509886
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/read.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "read",
+  "object": {
+    "objectType": "book",
+    "displayName": "Cloud Atlas"
+  }
+}
+      

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/receive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/receive.json b/streams-schemas/src/test/resources/activities/receive.json
new file mode 100644
index 0000000..d61245e
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/receive.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "receive",
+  "object": {
+    "objectType": "badge",
+    "displayName": "Most Checkins in 24 hours"
+  },
+  "title": "Laura was awarded a badge for \"Most Checkins in 24 hours\""
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/reject.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/reject.json b/streams-schemas/src/test/resources/activities/reject.json
new file mode 100644
index 0000000..84d1ab1
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/reject.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "reject",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #126"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/remove-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/remove-friend.json b/streams-schemas/src/test/resources/activities/remove-friend.json
new file mode 100644
index 0000000..0a593e9
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/remove-friend.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "remove-friend",
+  "object": {
+    "objectType": "person",
+    "displayName": "Laura"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/remove.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/remove.json b/streams-schemas/src/test/resources/activities/remove.json
new file mode 100644
index 0000000..1f386e9
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/remove.json
@@ -0,0 +1,23 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "remove",
+  "object": {
+    "objectType": "image",
+    "displayName": "Cat Photo",
+    "fullImage": {
+      "url": "http://example.org/cats.jpg"
+    }
+  },
+  "target": {
+    "objectType": "collection",
+    "displayName": "Cat Photo Album",
+    "objectTypes": ["image"]
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/replace.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/replace.json b/streams-schemas/src/test/resources/activities/replace.json
new file mode 100644
index 0000000..f19a35c
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/replace.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "replace",
+  "object": {
+    "objectType": "file",
+    "displayName": "Updated 1Q2014 Sales Forecast.xls"
+  },
+  "target": {
+    "objectType": "file",
+    "displayName": "1Q2014 Sales Forecast.xls"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/request-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/request-friend.json b/streams-schemas/src/test/resources/activities/request-friend.json
new file mode 100644
index 0000000..3e571ee
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/request-friend.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "request-friend",
+  "object": {
+    "objectType": "person",
+    "displayName": "Laura"
+  }
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/request.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/request.json b/streams-schemas/src/test/resources/activities/request.json
new file mode 100644
index 0000000..3e7c285
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/request.json
@@ -0,0 +1,23 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "request",
+  "object": {
+    "objectType": "task",
+    "actor": {
+      "objectType": "person",
+      "displayName": "Mark"
+    },
+    "verb": "join",
+    "object": {
+      "objectType": "event",
+      "displayName": "The Big Meeting"
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/resolve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/resolve.json b/streams-schemas/src/test/resources/activities/resolve.json
new file mode 100644
index 0000000..14998cf
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/resolve.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "resolve",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #126"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/retract.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/retract.json b/streams-schemas/src/test/resources/activities/retract.json
new file mode 100644
index 0000000..9229868
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/retract.json
@@ -0,0 +1,26 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "retract",
+  "object": {
+    "actor": {
+      "objectType": "person",
+      "displayName": "Mark"
+    },
+    "verb": "return",
+    "object": {
+      "objectType": "book",
+      "displayName": "Cloud Atlas"
+    },
+    "target": {
+      "objectType": "person",
+      "displayName": "Laura"
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/return.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/return.json b/streams-schemas/src/test/resources/activities/return.json
new file mode 100644
index 0000000..d6b8861
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/return.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "return",
+  "object": {
+    "objectType": "book",
+    "displayName": "Cloud Atlas"
+  },
+  "target": {
+    "objectType": "person",
+    "displayName": "Laura"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/rsvp-maybe.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/rsvp-maybe.json b/streams-schemas/src/test/resources/activities/rsvp-maybe.json
new file mode 100644
index 0000000..b1ec1b5
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/rsvp-maybe.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "rsvp-maybe",
+  "object": {
+    "objectType": "event",
+    "displayName": "The Big Meeting"
+  },
+  "title": "Laura might attend The Big Meeting"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/rsvp-no.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/rsvp-no.json b/streams-schemas/src/test/resources/activities/rsvp-no.json
new file mode 100644
index 0000000..532b096
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/rsvp-no.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "rsvp-no",
+  "object": {
+    "objectType": "event",
+    "displayName": "The Big Meeting"
+  },
+  "title": "Mark will not attend the Big Meeting"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/rsvp-yes.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/rsvp-yes.json b/streams-schemas/src/test/resources/activities/rsvp-yes.json
new file mode 100644
index 0000000..170a5c4
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/rsvp-yes.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "rsvp-yes",
+  "object": {
+    "objectType": "event",
+    "displayName": "The Big Meeting"
+  },
+  "title": "Laura will attend the Big Meeting"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/satisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/satisfy.json b/streams-schemas/src/test/resources/activities/satisfy.json
new file mode 100644
index 0000000..16151fa
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/satisfy.json
@@ -0,0 +1,21 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "satisfy",
+  "object": {
+    "objectType": "http://example.org/condition",
+    "displayName": "Some Condition"
+  },
+  "target": {
+    "objectType": "http://example.org/parole",
+    "displayName": "Terms of Parole"
+  },
+  "title": "Mark has satisfied a condition of his parole."
+}
+      

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/save.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/save.json b/streams-schemas/src/test/resources/activities/save.json
new file mode 100644
index 0000000..70c0f5f
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/save.json
@@ -0,0 +1,20 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "save",
+  "object": {
+    "objectType": "note",
+    "displayName": "A note about something important"
+  },
+  "target": {
+    "objectType": "collection",
+    "displayName": "Laura's Reading List"
+  },
+  "title": "Laura saved the note to her reading list"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/schedule.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/schedule.json b/streams-schemas/src/test/resources/activities/schedule.json
new file mode 100644
index 0000000..f214290
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/schedule.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "schedule",
+  "object": {
+    "objectType": "event",
+    "displayName": "The Big Meeting"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/search.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/search.json b/streams-schemas/src/test/resources/activities/search.json
new file mode 100644
index 0000000..511b612
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/search.json
@@ -0,0 +1,21 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "search",
+  "object": {
+    "objectType": "place",
+    "displayName": "Big Hotel",
+    "address": {
+      "locality": "New York",
+      "region": "NY"
+    }
+  },
+  "title": "Laura searched for a hotel in New York City, NY"
+}
+      

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/sell.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/sell.json b/streams-schemas/src/test/resources/activities/sell.json
new file mode 100644
index 0000000..ab07fb0
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/sell.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "sell",
+  "object": {
+    "objectType": "product",
+    "displayName": "A cool product"
+  },
+  "target": {
+    "objectType": "person",
+    "displayName": "Laura"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/send.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/send.json b/streams-schemas/src/test/resources/activities/send.json
new file mode 100644
index 0000000..b392ce8
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/send.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "send",
+  "object": {
+    "objectType": "note",
+    "content": "Thank you for the cool product."
+  },
+  "target": {
+    "objectType": "person",
+    "displayName": "Mark"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/share.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/share.json b/streams-schemas/src/test/resources/activities/share.json
new file mode 100644
index 0000000..dc7b9f1
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/share.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "share",
+  "object": {
+    "objectType": "note",
+    "displayName": "An important note"
+  },
+  "title": "Mark shared an important note."
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/sponsor.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/sponsor.json b/streams-schemas/src/test/resources/activities/sponsor.json
new file mode 100644
index 0000000..156c322
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/sponsor.json
@@ -0,0 +1,17 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "organization",
+    "displayName": "Acme, Co"
+  },
+  "verb": "sponsor",
+  "object": {
+    "objectType": "game",
+    "displayName": "World Series"
+  },
+  "title": "Acme, Co sponsored the World Series"
+}
+      

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/start.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/start.json b/streams-schemas/src/test/resources/activities/start.json
new file mode 100644
index 0000000..b9aede2
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/start.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "start",
+  "object": {
+    "objectType": "process",
+    "displayName": "A Long Running Process"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/stop-following.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/stop-following.json b/streams-schemas/src/test/resources/activities/stop-following.json
new file mode 100644
index 0000000..04b83e7
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/stop-following.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "stop-following",
+  "object": {
+    "objectType": "person",
+    "displayName": "Mark"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/submit.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/submit.json b/streams-schemas/src/test/resources/activities/submit.json
new file mode 100644
index 0000000..0fd3c34
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/submit.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "submit",
+  "object": {
+    "objectType": "issue",
+    "displayName": "Issue #127"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/tag.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/tag.json b/streams-schemas/src/test/resources/activities/tag.json
new file mode 100644
index 0000000..dba6112
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/tag.json
@@ -0,0 +1,19 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "tag",
+  "object": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "target": {
+    "objectType": "image",
+    "displayName": "Pictures of my cats"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/terminate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/terminate.json b/streams-schemas/src/test/resources/activities/terminate.json
new file mode 100644
index 0000000..f4d886e
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/terminate.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "terminate",
+  "object": {
+    "objectType": "process",
+    "displayName": "A long running process"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/tie.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/tie.json b/streams-schemas/src/test/resources/activities/tie.json
new file mode 100644
index 0000000..71a3c39
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/tie.json
@@ -0,0 +1,24 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "collection",
+    "items": [
+      {
+        "objectType": "organization",
+        "displayName": "New York Giants"
+      },
+      {
+        "objectType": "organization",
+        "displayName": "Oakland Raiders"
+      }
+    ]
+  },
+  "verb": "tie",
+  "object": {
+    "objectType": "game",
+    "displayName": "Super Bowl"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/unfavorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/unfavorite.json b/streams-schemas/src/test/resources/activities/unfavorite.json
new file mode 100644
index 0000000..b1e7bcd
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/unfavorite.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "unfavorite",
+  "object": {
+    "objectType": "article",
+    "displayName": "Some article"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/unlike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/unlike.json b/streams-schemas/src/test/resources/activities/unlike.json
new file mode 100644
index 0000000..9bc583f
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/unlike.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "unlike",
+  "object": {
+    "objectType": "article",
+    "displayName": "Some article"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/unsatisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/unsatisfy.json b/streams-schemas/src/test/resources/activities/unsatisfy.json
new file mode 100644
index 0000000..739823c
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/unsatisfy.json
@@ -0,0 +1,20 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "unsatisfy",
+  "object": {
+    "objectType": "http://example.org/condition",
+    "displayName": "Some Condition"
+  },
+  "target": {
+    "objectType": "http://example.org/parole",
+    "displayName": "Terms of Parole"
+  },
+  "title": "Mark has not satisfied a condition of his parole."
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/unsave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/unsave.json b/streams-schemas/src/test/resources/activities/unsave.json
new file mode 100644
index 0000000..a9a21f0
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/unsave.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "unsave",
+  "object": {
+    "objectType": "article",
+    "displayName": "Some article"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/unshare.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/unshare.json b/streams-schemas/src/test/resources/activities/unshare.json
new file mode 100644
index 0000000..4d45a6d
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/unshare.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "unshare",
+  "object": {
+    "objectType": "article",
+    "displayName": "Some article"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/update.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/update.json b/streams-schemas/src/test/resources/activities/update.json
new file mode 100644
index 0000000..7dbed20
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/update.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "update",
+  "object": {
+    "objectType": "article",
+    "displayName": "Some article"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/use.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/use.json b/streams-schemas/src/test/resources/activities/use.json
new file mode 100644
index 0000000..699c4b8
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/use.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Laura"
+  },
+  "verb": "use",
+  "object": {
+    "objectType": "product",
+    "displayName": "A cool product"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/watch.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/watch.json b/streams-schemas/src/test/resources/activities/watch.json
new file mode 100644
index 0000000..2052f06
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/watch.json
@@ -0,0 +1,16 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "person",
+    "displayName": "Mark"
+  },
+  "verb": "watch",
+  "object": {
+    "objectType": "video",
+    "displayName": "Some random movie"
+  }
+}
+      

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/activities/win.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/activities/win.json b/streams-schemas/src/test/resources/activities/win.json
new file mode 100644
index 0000000..2cf9d5a
--- /dev/null
+++ b/streams-schemas/src/test/resources/activities/win.json
@@ -0,0 +1,15 @@
+{
+  "$license": [
+    "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+    "http://www.apache.org/licenses/LICENSE-2.0"
+  ],
+  "actor": {
+    "objectType": "organization",
+    "displayName": "Arizona Diamond Backs"
+  },
+  "verb": "win",
+  "object": {
+    "objectType": "game",
+    "displayName": "World Series"
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/media_link.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/media_link.json b/streams-schemas/src/test/resources/media_link.json
new file mode 100644
index 0000000..0bed6f0
--- /dev/null
+++ b/streams-schemas/src/test/resources/media_link.json
@@ -0,0 +1,7 @@
+{
+    "$schema": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/media_link.json#",
+    "duration": 30000,
+    "height": 480,
+    "width": 640,
+    "url": "http://youtube.com/s7hc30sb"
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/objects/event.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/event.json b/streams-schemas/src/test/resources/objects/event.json
new file mode 100644
index 0000000..ae1108e
--- /dev/null
+++ b/streams-schemas/src/test/resources/objects/event.json
@@ -0,0 +1,18 @@
+{
+    "objectType": "event",
+    "displayName": "Meeting with Joe",
+    "startTime": "2012-12-12T12:00:00Z",
+    "endTime: "2012-12-12T13:00:00Z",
+    "invited": {
+      "items": [
+        {"objectType": "person",
+         "displayName": "Joe"}
+      ]
+    },
+    "attending": {
+      "items": [
+        {"objectType": "person",
+         "displayName": "Joe"}
+      ]
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/objects/group.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/group.json b/streams-schemas/src/test/resources/objects/group.json
new file mode 100644
index 0000000..9721874
--- /dev/null
+++ b/streams-schemas/src/test/resources/objects/group.json
@@ -0,0 +1,16 @@
+{
+  "objectType": "group",
+  "displayName": "My Work Group",
+  "members": {
+	"items": [
+	  {
+		"objectType": "person",
+		"displayName": "Laura"
+	  },
+	  {
+		"objectType": "person",
+		"displayName": "Mark"
+	  }
+	]
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/objects/issue.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/issue.json b/streams-schemas/src/test/resources/objects/issue.json
new file mode 100644
index 0000000..86bc6d2
--- /dev/null
+++ b/streams-schemas/src/test/resources/objects/issue.json
@@ -0,0 +1,9 @@
+{
+   "objectType": "issue",
+   "displayName": "Terms of Use Violation",
+   "url": "http://.../terms-of-use",
+   "types": [
+	 "http://example.org/codes/inappropriateMaterial",
+	 "http://example.org/codes/copyrightViolation"
+   ]
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/objects/note.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/note.json b/streams-schemas/src/test/resources/objects/note.json
new file mode 100644
index 0000000..15a4495
--- /dev/null
+++ b/streams-schemas/src/test/resources/objects/note.json
@@ -0,0 +1,12 @@
+{
+  "objectType": "note",
+  "displayName": "A note with a binary attachment",
+  "attachments": [
+	{
+	  "objectType": "binary",
+	  "data": "dGhpcyBpcyB1bmNvbXByZXNzZWQgZGF0YQo=",
+	  "md5": "827ae7e1ab45e4dd591d087c741e5770",
+	  "length": 25
+	}
+  ]
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/objects/permission.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/permission.json b/streams-schemas/src/test/resources/objects/permission.json
new file mode 100644
index 0000000..24b6fa2
--- /dev/null
+++ b/streams-schemas/src/test/resources/objects/permission.json
@@ -0,0 +1,9 @@
+{
+    "objectType": "permission",
+    "displayName": "Permission to Edit File: 2Q2014 Sales Forecast.xls",
+    "scope": {
+      "objectType": "file",
+      "displayName": "2Q2014 Sales Forecast.xls"
+    },
+    "actions": ["modify", "delete", "create"]
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/objects/place.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/place.json b/streams-schemas/src/test/resources/objects/place.json
new file mode 100644
index 0000000..8e454be
--- /dev/null
+++ b/streams-schemas/src/test/resources/objects/place.json
@@ -0,0 +1,9 @@
+{
+  "objectType": "place",
+  "displayName": "Some Random Location on Earth",
+  "position": {
+	"latitude": 34.34,
+	"longitude": -127.23,
+	"altitude": 100.05
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/objects/task.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/task.json b/streams-schemas/src/test/resources/objects/task.json
new file mode 100644
index 0000000..f4878dc
--- /dev/null
+++ b/streams-schemas/src/test/resources/objects/task.json
@@ -0,0 +1,16 @@
+{
+    "objectType": "task",
+    "displayName": "James needs to read the spec",
+    "by": "2012-12-12T12:12:12Z",
+    "verb": "read",
+    "actor": {
+      "objectType": "person",
+      "displayName": "James"
+    },
+    "object": {
+      "objectType": "file",
+      "displayName": "A specification",
+      "url": "http://example.org/spec.html"
+    },
+    "required": true
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/test/resources/objects/video.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/test/resources/objects/video.json b/streams-schemas/src/test/resources/objects/video.json
new file mode 100644
index 0000000..bc19e89
--- /dev/null
+++ b/streams-schemas/src/test/resources/objects/video.json
@@ -0,0 +1,8 @@
+{
+    "objectType": "video",
+    "displayName": "Cute little kittens",
+    "embedCode": "<video width="320" height="240" controls="controls">...</video>",
+    "stream": {
+      "url": "http://example.org/my_video.mpg"
+    }
+}


[33/53] [abbrv] incubator-streams git commit: resolves STREAMS-410

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/configuration/EipConfigurator.java
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/configuration/EipConfigurator.java b/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/configuration/EipConfigurator.java
deleted file mode 100644
index 460c43a..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/configuration/EipConfigurator.java
+++ /dev/null
@@ -1,201 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.messaging.configuration;
-
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Component;
-
-@Component
-public class EipConfigurator {
-
-
-
-    @Value("${consumer.inRouteHost}")
-    private String consumerInRouteHost;
-
-    @Value("${consumer.inRoutePort}")
-    private String consumerInRoutePort;
-
-    @Value("${subscriber.inRouteHost}")
-    private String subscriberInRouteHost;
-
-    @Value("${subscriber.inRoutePort}")
-    private String subscriberInRoutePort;
-
-
-    @Value("${consumer.activityQUri}")
-    private String consumerActivityQUri;
-
-    @Value("${consumer.publisherEndpointProtocol}")
-    private String publisherEndpointProtocol;
-
-    @Value("${consumer.publisherEndpointUrlResource}")
-    private String publisherEndpointUrlResource;
-
-    @Value("${consumer.receiveMethod}")
-    private String consumerReceiveMethod;
-
-    @Value("${consumer.splitMethod}")
-    private String consumerSplitMethod;
-
-    @Value("${subscriber.subscriberEndpointProtocol}")
-    private String subscriberEndpointProtocol;
-
-    @Value("${subscriber.subscriberEndpointUrlResource}")
-    private String subscriberEndpointUrlResource;
-
-    @Value("${subscriber.receiveMethod}")
-    private String subscriberReceiveMethod;
-
-    @Value("${subscriber.postMethod}")
-    private String subscriberPostMethod;
-
-    @Value("${subscriber.getMethod}")
-    private String subscriberGetMethod;
-
-
-    @Value("${servlet.baseUrlPath}")
-    private String baseUrlPath;
-
-
-    public static String ENDPOINT_PROTOCOL_JETTY="jetty:http://";
-    public static String ENDPOINT_PROTOCOL_SERVLET="servlet:///";
-
-    public String getConsumerInRouteHost() {
-        return consumerInRouteHost;
-    }
-
-    public String getConsumerInRoutePort() {
-        return consumerInRoutePort;
-    }
-
-    public String getConsumerActivityQUri() {
-        return consumerActivityQUri;
-    }
-
-    public void setConsumerActivityQUri(String consumerActivityQUri) {
-        this.consumerActivityQUri = consumerActivityQUri;
-    }
-
-    public void setConsumerInRoutePort(String consumerInRoutePort) {
-        this.consumerInRoutePort = consumerInRoutePort;
-    }
-
-    public void setConsumerInRouteHost(String consumerInRouteHost) {
-        this.consumerInRouteHost = consumerInRouteHost;
-    }
-
-    public String getSubscriberInRouteHost() {
-        return subscriberInRouteHost;
-    }
-
-    public void setSubscriberInRouteHost(String subscriberInRouteHost) {
-        this.subscriberInRouteHost = subscriberInRouteHost;
-    }
-
-    public String getSubscriberInRoutePort() {
-        return subscriberInRoutePort;
-    }
-
-    public void setSubscriberInRoutePort(String subscriberInRoutePort) {
-        this.subscriberInRoutePort = subscriberInRoutePort;
-    }
-
-    public String getPublisherEndpointProtocol() {
-        return publisherEndpointProtocol;
-    }
-
-    public void setPublisherEndpointProtocol(String publisherEndpointProtocol) {
-        this.publisherEndpointProtocol = publisherEndpointProtocol;
-    }
-
-    public String getPublisherEndpointUrlResource() {
-        return publisherEndpointUrlResource;
-    }
-
-    public void setPublisherEndpointUrlResource(String publisherEndpointUrlResource) {
-        this.publisherEndpointUrlResource = publisherEndpointUrlResource;
-    }
-
-    public String getConsumerReceiveMethod() {
-        return consumerReceiveMethod;
-    }
-
-    public void setConsumerReceiveMethod(String consumerReceiveMethod) {
-        this.consumerReceiveMethod = consumerReceiveMethod;
-    }
-
-    public String getConsumerSplitMethod() {
-        return consumerSplitMethod;
-    }
-
-    public void setConsumerSplitMethod(String consumerSplitMethod) {
-        this.consumerSplitMethod = consumerSplitMethod;
-    }
-
-    public String getSubscriberEndpointProtocol() {
-        return subscriberEndpointProtocol;
-    }
-
-    public void setSubscriberEndpointProtocol(String subscriberEndpointProtocol) {
-        this.subscriberEndpointProtocol = subscriberEndpointProtocol;
-    }
-
-    public String getSubscriberEndpointUrlResource() {
-        return subscriberEndpointUrlResource;
-    }
-
-    public void setSubscriberEndpointUrlResource(String subscriberEndpointUrlResource) {
-        this.subscriberEndpointUrlResource = subscriberEndpointUrlResource;
-    }
-
-    public String getSubscriberReceiveMethod() {
-        return subscriberReceiveMethod;
-    }
-
-    public void setSubscriberReceiveMethod(String subscriberReceiveMethod) {
-        this.subscriberReceiveMethod = subscriberReceiveMethod;
-    }
-
-    public String getSubscriberPostMethod() {
-        return subscriberPostMethod;
-    }
-
-    public void setSubscriberPostMethod(String subscriberPostMethod) {
-        this.subscriberPostMethod = subscriberPostMethod;
-    }
-
-    public String getSubscriberGetMethod() {
-        return subscriberGetMethod;
-    }
-
-    public void setSubscriberGetMethod(String subscriberGetMethod) {
-        this.subscriberGetMethod = subscriberGetMethod;
-    }
-
-    public String getBaseUrlPath() {
-        return baseUrlPath;
-    }
-
-    public void setBaseUrlPath(String baseUrlPath) {
-        this.baseUrlPath = baseUrlPath;
-    }
-
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/processors/ActivityPublisherRegistrationProcessor.java
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/processors/ActivityPublisherRegistrationProcessor.java b/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/processors/ActivityPublisherRegistrationProcessor.java
deleted file mode 100644
index 741a63c..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/processors/ActivityPublisherRegistrationProcessor.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.messaging.processors;
-
-import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.streams.osgi.components.activityconsumer.ActivityConsumer;
-import org.codehaus.jackson.map.DeserializationConfig;
-import org.codehaus.jackson.map.ObjectMapper;
-
-
-public class ActivityPublisherRegistrationProcessor implements Processor{
-    private static final transient Log LOG = LogFactory.getLog(ActivityStreamsSubscriberRegistrationProcessor.class);
-    public void process(Exchange exchange){
-        //add the necessary headers to the message so that the activity registration component
-        //can do a lookup to either make a new processor and endpoint, or pass the message to the right one
-        String httpMethod = exchange.getIn().getHeader("CamelHttpMethod").toString();
-
-        if (!httpMethod.equals("POST")){
-            //reject anything that isn't a post...Camel 2.10 solves needing this check, however, SM 4.4 doesn't have the latest
-            exchange.getOut().setFault(true);
-            exchange.getOut().setHeader(Exchange.HTTP_RESPONSE_CODE,405);
-        }  else {
-
-             //for now...just expect a post with a uri in the body...should have some checking here with http response codes
-            // authentication, all that good stuff...happens in the registration module
-
-            String body = exchange.getIn().getBody(String.class);
-            ObjectMapper mapper = new ObjectMapper();
-            mapper.configure(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES,false);
-
-            try {
-
-                // read from file, convert it to user class
-                ActivityConsumer configuration = mapper.readValue(body, ActivityConsumer.class);
-                if (configuration.getSrc()==null){
-                   LOG.info("configuration src is null");
-                   throw new Exception();
-                }
-
-                exchange.getOut().setBody(configuration);
-
-            } catch (Exception e) {
-                LOG.info("error: " + e);
-                exchange.getOut().setFault(true);
-                exchange.getOut().setHeader(Exchange.HTTP_RESPONSE_CODE,400);
-                exchange.getOut().setBody("POST should contain a valid JSON configuration for registering as an Activity Publisher (check that src element is valid).");
-            }
-        }
-
-
-
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/processors/ActivityStreamsSubscriberRegistrationProcessor.java
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/processors/ActivityStreamsSubscriberRegistrationProcessor.java b/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/processors/ActivityStreamsSubscriberRegistrationProcessor.java
deleted file mode 100644
index 201eebd..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/processors/ActivityStreamsSubscriberRegistrationProcessor.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.messaging.processors;
-
-import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.streams.messaging.service.SubscriptionService;
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscription;
-import org.codehaus.jackson.map.DeserializationConfig;
-import org.codehaus.jackson.map.ObjectMapper;
-
-
-public class ActivityStreamsSubscriberRegistrationProcessor implements Processor{
-    private static final transient Log LOG = LogFactory.getLog(ActivityStreamsSubscriberRegistrationProcessor.class);
-    private SubscriptionService subscriptionService;
-
-    public ActivityStreamsSubscriberRegistrationProcessor(SubscriptionService subscriptionService){
-        this.subscriptionService = subscriptionService;
-    }
-
-    public void process(Exchange exchange){
-        LOG.info("processing the subscriber...");
-        //add the necessary headers to the message so that the activity registration component
-        //can do a lookup to either make a new processor and endpoint, or pass the message to the right one
-        String httpMethod = exchange.getIn().getHeader("CamelHttpMethod").toString();
-
-        if (!httpMethod.equals("POST")){
-            //reject anything that isn't a post...Camel 2.10 solves needing this check, however, SM 4.4 doesn't have the latest
-            exchange.getOut().setFault(true);
-            exchange.getOut().setHeader(Exchange.HTTP_RESPONSE_CODE,405);
-        }  else {
-
-             //for now...just expect a post with a uri in the body...should have some checking here with http response codes
-            // authentication, all that good stuff...happens in the registration module
-
-
-            String body = exchange.getIn().getBody(String.class);
-
-            LOG.info("receiving the subscriber: "+body);
-            //OAuth token? What does subscriber post to init a subscription URL?
-            //maybe its a list of URLs to subscribe to subscriptions=1,2,3,4&auth_token=XXXX
-
-            ObjectMapper mapper = new ObjectMapper();
-            mapper.configure(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES,false);
-
-            try {
-
-                // read from file, convert it to user class
-                ActivityStreamsSubscription configuration = mapper.readValue(body, ActivityStreamsSubscription.class);
-                if(configuration.getFilters() == null){
-                    configuration.setFilters(subscriptionService.getFilters(configuration.getAuthToken()));
-                }else{
-                    subscriptionService.saveFilters(configuration);
-                }
-                exchange.getOut().setBody(configuration);
-
-            } catch (Exception e) {
-                LOG.info("exception" + e);
-                exchange.getOut().setFault(true);
-                exchange.getOut().setHeader(Exchange.HTTP_RESPONSE_CODE,400);
-                exchange.getOut().setBody("POST should contain a valid Subscription configuration object.");
-            }
-
-
-
-            //just pass this on to the route creator, body will be the dedicated URL for this subscriber
-
-        }
-
-
-
-    }
-
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/ActivityConsumerRouteBuilder.java
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/ActivityConsumerRouteBuilder.java b/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/ActivityConsumerRouteBuilder.java
deleted file mode 100644
index dea8781..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/ActivityConsumerRouteBuilder.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.messaging.routers;
-
-
-
-import org.apache.camel.Exchange;
-import org.apache.streams.osgi.components.activityconsumer.ActivityConsumer;
-
-
-public interface ActivityConsumerRouteBuilder {
-
-
-    void createNewRouteForConsumer(Exchange exchange, ActivityConsumer activityConsumer);
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/ActivityStreamsSubscriberRouteBuilder.java
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/ActivityStreamsSubscriberRouteBuilder.java b/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/ActivityStreamsSubscriberRouteBuilder.java
deleted file mode 100644
index 6947722..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/ActivityStreamsSubscriberRouteBuilder.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.messaging.routers;
-
-
-
-import org.apache.camel.Exchange;
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscriber;
-
-
-public interface ActivityStreamsSubscriberRouteBuilder {
-
-
-    void createNewRouteForSubscriber(Exchange exchange, ActivityStreamsSubscriber activityStreamsSubscriber);
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/impl/ActivityConsumerRouter.java
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/impl/ActivityConsumerRouter.java b/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/impl/ActivityConsumerRouter.java
deleted file mode 100644
index 20b8246..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/impl/ActivityConsumerRouter.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.messaging.routers.impl;
-
-
-import org.apache.camel.builder.RouteBuilder;
-import org.apache.streams.messaging.routers.ActivityConsumerRouteBuilder;
-
-
-import org.apache.streams.osgi.components.activityconsumer.ActivityConsumerWarehouse;
-import org.apache.streams.osgi.components.activityconsumer.ActivityConsumer;
-import org.apache.streams.messaging.configuration.EipConfigurator;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.apache.camel.Exchange;
-import org.apache.camel.CamelContext;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import java.util.UUID;
-
-
-public class ActivityConsumerRouter extends RouteBuilder implements ActivityConsumerRouteBuilder {
-    private static final transient Log LOG = LogFactory.getLog(ActivityConsumerRouter.class);
-
-    @Autowired
-    private EipConfigurator configuration;
-
-    protected CamelContext camelContext;
-
-    private ActivityConsumerWarehouse activityConsumerWarehouse;
-
-    public void setCamelContext(CamelContext camelContext) {
-        this.camelContext = camelContext;
-    }
-
-    public void setActivityConsumerWarehouse(ActivityConsumerWarehouse activityConsumerWarehouse) {
-        this.activityConsumerWarehouse = activityConsumerWarehouse;
-    }
-
-
-    public void createNewRouteForConsumer(Exchange exchange, ActivityConsumer activityConsumer){
-
-        //todo: add some better scheme then getCount for URL...
-        //todo: make the route again if consumer exists...and context doesn't have route
-        if (activityConsumer.isAuthenticated()){
-                ActivityConsumer existingConsumer = activityConsumerWarehouse.findConsumerBySrc(activityConsumer.getSrc().toASCIIString());
-
-                if (existingConsumer==null){
-
-                  try{
-
-                    if (configuration.getPublisherEndpointProtocol().equals(EipConfigurator.ENDPOINT_PROTOCOL_JETTY)){
-                        activityConsumer.setInRoute(configuration.getConsumerInRouteHost()+ ":" + configuration.getConsumerInRoutePort() +"/" + configuration.getPublisherEndpointUrlResource() + "/" + UUID.randomUUID());
-                        //set the body to the url the producer should post to
-                        exchange.getOut().setBody("http://" + activityConsumer.getInRoute());
-                    }else if (configuration.getPublisherEndpointProtocol().equals(EipConfigurator.ENDPOINT_PROTOCOL_SERVLET)){
-                        activityConsumer.setInRoute( configuration.getPublisherEndpointUrlResource() + "/" + UUID.randomUUID());
-                        //set the body to the url the producer should post to
-                        exchange.getOut().setBody(configuration.getBaseUrlPath() + activityConsumer.getInRoute());
-                    } else{
-                        throw new Exception("No supported endpoint protocol is configured.");
-                    }
-
-
-                        //setup a message queue for this consumer.getInRoute()
-                        camelContext.addRoutes(new DynamicConsumerRouteBuilder(configuration,camelContext, configuration.getPublisherEndpointProtocol() + activityConsumer.getInRoute(), activityConsumer));
-
-
-                        LOG.info("all messages sent from " + activityConsumer.getSrc() + " must be posted to " + activityConsumer.getInRoute());
-                        //only add the route to the warehouse after its been created in messaging system...
-                        activityConsumerWarehouse.register(activityConsumer);
-                    }catch (Exception e){
-                        exchange.getOut().setHeader(Exchange.HTTP_RESPONSE_CODE,500);
-                        exchange.getOut().setBody("error creating route: " + e);
-                        LOG.error("error creating route: " + e);
-                    }
-
-                } else{
-
-                    exchange.getOut().setBody(configuration.getBaseUrlPath() + existingConsumer.getInRoute());
-                }
-
-        }else{
-                exchange.getOut().setFault(true);
-                exchange.getOut().setHeader(Exchange.HTTP_RESPONSE_CODE,401);
-                exchange.getOut().setBody("Authentication failed.");
-        }
-
-    }
-
-
-    public void configure() throws java.lang.Exception{
-        //nothing...set the context?
-
-    }
-
-    /**
-     * This route builder is a skeleton to add new routes at runtime
-     */
-    private static final class DynamicConsumerRouteBuilder extends RouteBuilder {
-        private final String from;
-        private ActivityConsumer activityConsumer;
-
-
-        private EipConfigurator configuration;
-
-        private DynamicConsumerRouteBuilder(EipConfigurator configuration, CamelContext context, String from, ActivityConsumer activityConsumer) {
-            super(context);
-            this.from = from;
-            this.activityConsumer = activityConsumer;
-            this.configuration = configuration;
-        }
-
-        @Override
-        public void configure() throws Exception {
-
-
-            from(from)
-                    .bean(activityConsumer, configuration.getConsumerReceiveMethod()).setBody(body())
-                    .split()
-                    .method(activityConsumer, configuration.getConsumerSplitMethod())
-                    .to(configuration.getConsumerActivityQUri());
-
-
-        }
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/impl/ActivityStreamsSubscriberRouter.java
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/impl/ActivityStreamsSubscriberRouter.java b/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/impl/ActivityStreamsSubscriberRouter.java
deleted file mode 100644
index 68ef0a5..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/routers/impl/ActivityStreamsSubscriberRouter.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.messaging.routers.impl;
-
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.Exchange;
-import org.apache.camel.builder.RouteBuilder;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.streams.messaging.aggregation.ActivityAggregator;
-import org.apache.streams.messaging.configuration.EipConfigurator;
-import org.apache.streams.messaging.routers.ActivityStreamsSubscriberRouteBuilder;
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscriber;
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscriberWarehouse;
-import org.springframework.beans.factory.annotation.Autowired;
-
-import java.util.UUID;
-
-
-public class ActivityStreamsSubscriberRouter extends RouteBuilder implements ActivityStreamsSubscriberRouteBuilder {
-    private static final transient Log LOG = LogFactory.getLog(ActivityStreamsSubscriberRouter.class);
-
-    @Autowired
-    private EipConfigurator configuration;
-
-    protected CamelContext camelContext;
-
-    @Autowired
-    private ActivityAggregator activityAggregator;
-
-    private ActivityStreamsSubscriberWarehouse activityStreamsSubscriberWarehouse;
-
-    public void setCamelContext(CamelContext camelContext) {
-        this.camelContext = camelContext;
-    }
-
-    public void setActivityStreamsSubscriberWarehouse(ActivityStreamsSubscriberWarehouse activityStreamsSubscriberWarehouse) {
-        this.activityStreamsSubscriberWarehouse = activityStreamsSubscriberWarehouse;
-    }
-
-
-    public void createNewRouteForSubscriber(Exchange exchange, ActivityStreamsSubscriber activityStreamsSubscriber){
-
-        //todo: add some better scheme then getCount for URL...
-        //todo: make the route again if subscriber exists...and context doesn't have route
-        if (activityStreamsSubscriber.isAuthenticated()){
-
-            try{
-
-                if (configuration.getSubscriberEndpointProtocol().equals(EipConfigurator.ENDPOINT_PROTOCOL_JETTY)){
-                    activityStreamsSubscriber.setInRoute(configuration.getSubscriberInRouteHost()+ ":" + configuration.getSubscriberInRoutePort() +"/" + configuration.getSubscriberEndpointUrlResource() + "/" + UUID.randomUUID());
-                    //set the body to the url the producer should post to
-                    exchange.getOut().setBody("http://" + activityStreamsSubscriber.getInRoute());
-                }else if (configuration.getSubscriberEndpointProtocol().equals(EipConfigurator.ENDPOINT_PROTOCOL_SERVLET)){
-                    activityStreamsSubscriber.setInRoute( configuration.getSubscriberEndpointUrlResource() + "/" + UUID.randomUUID());
-                    //set the body to the url the producer should post to
-                    exchange.getOut().setBody(configuration.getBaseUrlPath() + activityStreamsSubscriber.getInRoute());
-                } else{
-                    throw new Exception("No supported endpoint protocol is configured.");
-                }
-
-                //setup a message queue for this consumer.getInRoute()
-                camelContext.addRoutes(new DynamicSubscriberRouteBuilder(configuration,camelContext, configuration.getSubscriberEndpointProtocol() + activityStreamsSubscriber.getInRoute(), activityStreamsSubscriber));
-
-                activityAggregator.updateSubscriber(activityStreamsSubscriber);
-                activityStreamsSubscriberWarehouse.register(activityStreamsSubscriber);
-            }catch (Exception e){
-                exchange.getOut().setHeader(Exchange.HTTP_RESPONSE_CODE,500);
-                exchange.getOut().setBody("error creating route: " + e);
-                LOG.error("error creating route: " + e);
-            }
-
-        }else{
-            exchange.getOut().setFault(true);
-            exchange.getOut().setHeader(Exchange.HTTP_RESPONSE_CODE,401);
-            exchange.getOut().setBody("Authentication failed.");
-        }
-
-    }
-
-
-
-
-    public void configure() throws Exception{
-        //nothing...set the context?
-
-    }
-
-    /**
-     * This route builder is a skeleton to add new routes at runtime
-     */
-    private static final class DynamicSubscriberRouteBuilder extends RouteBuilder {
-        private final String from;
-        private ActivityStreamsSubscriber activityStreamsSubscriber;
-
-
-        private EipConfigurator configuration;
-
-        private DynamicSubscriberRouteBuilder(EipConfigurator configuration, CamelContext context, String from, ActivityStreamsSubscriber activityStreamsSubscriber) {
-            super(context);
-            this.from = from;
-            this.activityStreamsSubscriber = activityStreamsSubscriber;
-            this.configuration = configuration;
-        }
-
-        @Override
-        public void configure() throws Exception {
-
-
-            from(from)
-                    .choice()
-                        .when(header("CamelHttpMethod").isEqualTo("POST"))
-                            //when its a post...it goes to adding a new src
-                            .bean(activityStreamsSubscriber, configuration.getSubscriberPostMethod()).setBody(body())
-                        .when(header("CamelHttpMethod").isEqualTo("GET"))
-                                // when its a GET it goes to getStream()
-                            .bean(activityStreamsSubscriber, configuration.getSubscriberGetMethod()) ;
-
-
-
-        }
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/ActivityService.java
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/ActivityService.java b/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/ActivityService.java
deleted file mode 100644
index 0c85974..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/ActivityService.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.messaging.service;
-
-import org.apache.camel.Exchange;
-
-import java.util.Date;
-import java.util.List;
-
-public interface ActivityService {
-
-    void receiveExchange(Exchange exchange);
-
-    List<String> getActivitiesForFilters(List<String> filters, Date lastUpdated);
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/SubscriptionService.java
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/SubscriptionService.java b/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/SubscriptionService.java
deleted file mode 100644
index 98f585d..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/SubscriptionService.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.messaging.service;
-
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscription;
-
-import java.util.List;
-
-public interface SubscriptionService {
-
-    List<String> getFilters(String authToken);
-    void saveFilters(ActivityStreamsSubscription subscription);
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/impl/CassandraActivityService.java
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/impl/CassandraActivityService.java b/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/impl/CassandraActivityService.java
deleted file mode 100644
index 89f71ab..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/impl/CassandraActivityService.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.messaging.service.impl;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.camel.Exchange;
-import org.apache.rave.model.ActivityStreamsEntry;
-import org.apache.streams.cassandra.model.CassandraActivityStreamsEntry;
-import org.apache.streams.cassandra.repository.impl.CassandraActivityStreamsRepository;
-import org.apache.streams.messaging.service.ActivityService;
-import org.codehaus.jackson.map.DeserializationConfig;
-import org.codehaus.jackson.map.ObjectMapper;
-import org.springframework.beans.factory.annotation.Autowired;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Date;
-import java.util.List;
-
-public class CassandraActivityService implements ActivityService {
-
-    private static final transient Log LOG = LogFactory.getLog(CassandraActivityService.class);
-
-    private CassandraActivityStreamsRepository cassandraActivityStreamsRepository;
-    private ObjectMapper mapper;
-
-    @Autowired
-    public CassandraActivityService(CassandraActivityStreamsRepository cassandraActivityStreamsRepository, ObjectMapper mapper) {
-        this.cassandraActivityStreamsRepository = cassandraActivityStreamsRepository;
-        this.mapper = mapper;
-        mapper.configure(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES, false);
-    }
-
-    @Override
-    public void receiveExchange(Exchange exchange) {
-
-        //receive the exchange as a list
-        List<Exchange> grouped = exchange.getProperty(Exchange.GROUPED_EXCHANGE, List.class);
-
-        for (Exchange e : grouped) {
-            //get activity off of exchange
-            LOG.info("Exchange: " + e);
-
-            //extract the ActivityStreamsEntry object and save it in the database
-            LOG.info("About to preform the translation to JSON Object");
-            String activityJson = e.getIn().getBody(String.class);
-
-            try {
-                ActivityStreamsEntry streamsEntry = mapper.readValue(activityJson, CassandraActivityStreamsEntry.class);
-                streamsEntry.setPublished(new Date());
-                cassandraActivityStreamsRepository.save(streamsEntry);
-            } catch (IOException err) {
-                LOG.error("there was an error while converting the json string to an object and saving to the database", err);
-            }
-
-        }
-    }
-
-    @Override
-    public List<String> getActivitiesForFilters(List<String> filters, Date lastUpdated) {
-        List<CassandraActivityStreamsEntry> activityObjects = cassandraActivityStreamsRepository.getActivitiesForFilters(filters, lastUpdated);
-        Collections.sort(activityObjects, Collections.reverseOrder());
-        //TODO: make the number of streams returned configurable
-        return getJsonList(activityObjects.subList(0,Math.min(activityObjects.size(),10)));
-    }
-
-    private List<String> getJsonList(List<CassandraActivityStreamsEntry> activities) {
-        List<String> jsonList = new ArrayList<String>();
-        for (ActivityStreamsEntry entry : activities) {
-            try {
-                jsonList.add(mapper.writeValueAsString(entry));
-            } catch (IOException e) {
-                LOG.error("There was an error while trying to convert the java object to a string: " + entry, e);
-            }
-        }
-        return jsonList;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/impl/CassandraSubscriptionService.java
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/impl/CassandraSubscriptionService.java b/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/impl/CassandraSubscriptionService.java
deleted file mode 100644
index 8972d1e..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/service/impl/CassandraSubscriptionService.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.messaging.service.impl;
-
-import org.apache.streams.cassandra.repository.impl.CassandraSubscriptionRepository;
-import org.apache.streams.messaging.service.SubscriptionService;
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscription;
-
-import java.util.Arrays;
-import java.util.List;
-
-public class CassandraSubscriptionService implements SubscriptionService {
-
-    private CassandraSubscriptionRepository repository;
-
-    public CassandraSubscriptionService(CassandraSubscriptionRepository repository){
-        this.repository = repository;
-    }
-
-    public List<String> getFilters(String authToken){
-          return Arrays.asList(repository.getFilters(authToken).split(" "));
-    }
-
-    public void saveFilters(ActivityStreamsSubscription subscription){
-          repository.save(subscription);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/propertiesLoader.xml
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/propertiesLoader.xml b/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/propertiesLoader.xml
deleted file mode 100644
index 60a3f1f..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/propertiesLoader.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-
-<!--<beans-->
-        <!--xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"-->
-        <!--xmlns="http://www.springframework.org/schema/beans"-->
-        <!--xmlns:context="http://www.springframework.org/schema/context"-->
-        <!--xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd-->
-        <!--http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">-->
-
-
-
-    <!--<context:component-scan base-package="org.apache.streams.messaging" annotation-config="true"/>-->
-
-    <!--<context:property-placeholder location="/META-INF/streams.properties"/>-->
-
-    <!--<bean id="configuration" class="org.apache.streams.messaging.configuration.EipConfigurator" />-->
-
-
-<!--</beans>-->
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/streams-eip-applicationContext.xml
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/streams-eip-applicationContext.xml b/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/streams-eip-applicationContext.xml
deleted file mode 100644
index a9b97a7..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/streams-eip-applicationContext.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-
-<beans
-        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xmlns="http://www.springframework.org/schema/beans"
-        xmlns:context="http://www.springframework.org/schema/context"
-        xmlns:task="http://www.springframework.org/schema/task"
-        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
-        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd">
-
-
-    <bean id="activityConsumerRouter" class="org.apache.streams.messaging.routers.impl.ActivityConsumerRouter">
-        <property name="activityConsumerWarehouse" ref="activityConsumerWarehouse"/>
-        <property name="camelContext" ref="context"/>
-    </bean>
-
-    <bean id="activityRegistrationProcessor"
-          class="org.apache.streams.messaging.processors.ActivityPublisherRegistrationProcessor"/>
-
-
-    <bean id="activityStreamsSubscriberRouter"
-          class="org.apache.streams.messaging.routers.impl.ActivityStreamsSubscriberRouter">
-        <property name="activityStreamsSubscriberWarehouse" ref="activityStreamsSubscriberWarehouse"/>
-        <property name="camelContext" ref="context"/>
-    </bean>
-
-    <bean id="subscriberRegistrationProcessor"
-          class="org.apache.streams.messaging.processors.ActivityStreamsSubscriberRegistrationProcessor">
-        <constructor-arg ref="subscriptionService"/>
-    </bean>
-
-    <bean id="cassandraKeyspace" class="org.apache.streams.cassandra.repository.impl.CassandraKeyspace">
-        <constructor-arg ref="cassandraConfig"/>
-    </bean>
-
-    <bean id="cassandraActivityStreamsRepository"
-          class="org.apache.streams.cassandra.repository.impl.CassandraActivityStreamsRepository">
-        <constructor-arg ref="cassandraKeyspace"/>
-        <constructor-arg ref="cassandraConfig"/>
-    </bean>
-
-    <bean id="cassandraSubscriptionRepository"
-          class="org.apache.streams.cassandra.repository.impl.CassandraSubscriptionRepository">
-        <constructor-arg ref="cassandraKeyspace"/>
-        <constructor-arg ref="cassandraConfig"/>
-    </bean>
-
-    <bean id="objectMapper" class="org.codehaus.jackson.map.ObjectMapper"/>
-
-    <bean id="subscriptionService" class="org.apache.streams.messaging.service.impl.CassandraSubscriptionService">
-        <constructor-arg ref="cassandraSubscriptionRepository"/>
-    </bean>
-
-    <bean id="activityService" class="org.apache.streams.messaging.service.impl.CassandraActivityService">
-        <constructor-arg ref="cassandraActivityStreamsRepository"/>
-        <constructor-arg ref="objectMapper"/>
-    </bean>
-
-    <!--<bean id="stromActivityAggregator" class="org.apache.streams.messaging.storm.StormActivityAggregator">-->
-        <!--<constructor-arg ref="bolt"/>-->
-        <!--<constructor-arg ref="spout"/>-->
-    <!--</bean>-->
-
-    <!--<bean id="bolt" class="org.apache.streams.messaging.storm.StormSubscriberBolt"/>-->
-    <!--<bean id="spout" class="org.apache.streams.messaging.storm.StormSubscriberSpout"/>-->
-
-    <bean id="activityAggregator" class="org.apache.streams.messaging.aggregation.ActivityAggregator">
-        <property name="activityService" ref="activityService"/>
-        <property name="activityStreamsSubscriberWarehouse" ref="activityStreamsSubscriberWarehouse"/>
-    </bean>
-
-    <task:annotation-driven/>
-
-    <bean id="jmsConnectionFactory"
-          class="org.apache.activemq.ActiveMQConnectionFactory">
-        <property name="brokerURL" value="${activemq.jmsConnectionFactoryUrl}"/>
-    </bean>
-
-    <bean id="pooledConnectionFactory"
-          class="org.apache.activemq.pool.PooledConnectionFactory" init-method="start" destroy-method="stop">
-        <property name="maxConnections" value="8"/>
-        <property name="connectionFactory" ref="jmsConnectionFactory"/>
-    </bean>
-
-    <bean id="jmsConfig"
-          class="org.apache.camel.component.jms.JmsConfiguration">
-        <property name="connectionFactory" ref="pooledConnectionFactory"/>
-        <property name="concurrentConsumers" value="10"/>
-    </bean>
-
-    <bean id="activemq"
-          class="org.apache.activemq.camel.component.ActiveMQComponent">
-        <property name="configuration" ref="jmsConfig"/>
-    </bean>
-
-
-</beans>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/streams-eip-osgi-component-import.xml
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/streams-eip-osgi-component-import.xml b/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/streams-eip-osgi-component-import.xml
deleted file mode 100644
index 9066206..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/streams-eip-osgi-component-import.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-
-<beans xmlns="http://www.springframework.org/schema/beans"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xmlns:osgi="http://www.springframework.org/schema/osgi"
-       xsi:schemaLocation="http://www.springframework.org/schema/beans
-	http://www.springframework.org/schema/beans/spring-beans.xsd
-    http://www.springframework.org/schema/osgi
-    http://www.springframework.org/schema/osgi/spring-osgi.xsd">
-
-
-    <osgi:reference id="activityPublisherRegistration" interface="org.apache.streams.osgi.components.ActivityPublisherRegistration" />
-    <osgi:reference id="activityConsumerWarehouse" interface="org.apache.streams.osgi.components.activityconsumer.ActivityConsumerWarehouse" />
-
-    <osgi:reference id="activityStreamsSubscriberRegistration" interface="org.apache.streams.osgi.components.ActivityStreamsSubscriberRegistration" />
-    <osgi:reference id="activityStreamsSubscriberWarehouse" interface="org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscriberWarehouse" />
-
-
-
-
-</beans>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/streamsCamelContext.xml
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/streamsCamelContext.xml b/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/streamsCamelContext.xml
deleted file mode 100644
index 4360f39..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/spring/streamsCamelContext.xml
+++ /dev/null
@@ -1,96 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-
-<beans xmlns="http://www.springframework.org/schema/beans"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xmlns:osgi="http://www.springframework.org/schema/osgi"
-       xsi:schemaLocation="
-       http://www.springframework.org/schema/beans
-       http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
-       http://camel.apache.org/schema/spring
-       http://camel.apache.org/schema/spring/camel-spring-2.0.0.xsd
-       http://www.springframework.org/schema/osgi
-       http://www.springframework.org/schema/osgi/spring-osgi.xsd">
-
-
-
-
-    <camelContext id="context" xmlns="http://camel.apache.org/schema/spring">
-
-        <endpoint id="consumerRegistrationEndpoint" uri="${consumer.registrationEndpoint}"/>
-        <endpoint id="subscriberRegistrationEndpoint" uri="${subscriber.registrationEndpoint}"/>
-        <!--publisher registration route setup -->
-        <route>
-            <from uri="ref:consumerRegistrationEndpoint"/>
-                <bean ref="activityRegistrationProcessor" />
-            <to uri="direct:publisher-register"/>
-        </route>
-
-        <route>
-            <from uri="direct:publisher-register"/>
-                <bean ref="activityPublisherRegistration" method="register"/>
-            <to uri="direct:add-publisher-route"/>
-        </route>
-
-        <route>
-            <from uri="direct:add-publisher-route"/>
-                <bean ref="activityConsumerRouter" method="createNewRouteForConsumer"/>
-            <to uri="log:ExampleLog"/>
-        </route>
-
-        <!--split activities on Q, waiting for aggregation -->
-        <route>
-            <from uri="direct:activityQ"/>
-            <inOnly uri="activemq:queue:activities"/>
-        </route>
-
-        <route>
-            <from uri="activemq:queue:activities"/>
-            <aggregate completionInterval="500" groupExchanges="true">
-                <correlationExpression>
-                    <constant>true</constant>
-                </correlationExpression>
-                <bean ref="activityService" method="receiveExchange"/>
-            </aggregate>
-        </route>
-
-
-        <!-- register as a subscriber - returned the endpoint to poll and add to subscription sources - GET/POST -->
-        <route>
-            <from uri="ref:subscriberRegistrationEndpoint"/>
-                <bean ref="subscriberRegistrationProcessor" />
-            <to uri="direct:subscriber-register"/>
-        </route>
-
-        <route>
-            <from uri="direct:subscriber-register"/>
-                <bean ref="activityStreamsSubscriberRegistration" method="register"/>
-            <to uri="direct:add-subscriber-route"/>
-        </route>
-
-        <route>
-            <from uri="direct:add-subscriber-route"/>
-            <bean ref="activityStreamsSubscriberRouter" method="createNewRouteForSubscriber"/>
-            <to uri="log:ExampleLog"/>
-        </route>
-
-
-    </camelContext>
-
-</beans>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/streams.properties
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/streams.properties b/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/streams.properties
deleted file mode 100644
index b7bbfce..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/resources/META-INF/streams.properties
+++ /dev/null
@@ -1,41 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#
-
-servlet.baseUrlPath=http://localhost:8080/streams-web/
-
-consumer.inRouteHost=localhost
-consumer.inRoutePort=8000
-consumer.activityQUri = direct:activityQ
-
-consumer.publisherEndpointProtocol=jetty:http://
-consumer.publisherEndpointUrlResource=streams/publish
-consumer.receiveMethod=receive
-consumer.splitMethod=split
-
-consumer.registrationEndpoint=jetty:http://localhost:8000/streams/publisher/register
-
-subscriber.inRouteHost=localhost
-subscriber.inRoutePort=8000
-subscriber.subscriberEndpointUrlResource=streams/subscriber
-subscriber.receiveMethod=receive
-subscriber.postMethod=updateActivityStreamsSubscriberConfiguration
-subscriber.getMethod=getStream
-subscriber.registrationEndpoint=jetty:http://localhost:8000/streams/subscriber/register
-subscriber.subscriberEndpointProtocol=jetty:http://
-
-activemq.jmsConnectionFactoryUrl=tcp://localhost:61616
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/test/java/org/apache/streams/messaging/service/impl/CassandraActivityServiceTest.java
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/test/java/org/apache/streams/messaging/service/impl/CassandraActivityServiceTest.java b/streams-runtimes/streams-runtime-webapp/src/test/java/org/apache/streams/messaging/service/impl/CassandraActivityServiceTest.java
deleted file mode 100644
index 0812c47..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/test/java/org/apache/streams/messaging/service/impl/CassandraActivityServiceTest.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.messaging.service.impl;
-
-import org.apache.camel.Exchange;
-import org.apache.camel.Message;
-import org.junit.Before;
-import org.junit.Ignore;
-import org.junit.Test;
-
-import static org.easymock.EasyMock.*;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Date;
-import java.util.List;
-
-public class CassandraActivityServiceTest {
-
-    private CassandraActivityService cassandraActivityService;
-
-    @Before
-    public void setup(){
-//        cassandraActivityService = new CassandraActivityService();
-    }
-
-    @Ignore
-    @Test
-    public void getActivititiesForFilterTest(){
-        List<String> activities = cassandraActivityService.getActivitiesForFilters(Arrays.asList("r501"), new Date(0));
-    }
-
-    @Ignore
-    @Test
-    public void receiveExchangeTest(){
-        Exchange e = createMock(Exchange.class);
-        List<Exchange> grouped = new ArrayList<Exchange>();
-        Exchange e2 = createMock(Exchange.class);
-        grouped.add(e2);
-        Message m = createMock(Message.class);
-
-        String activityJson = "{\n" +
-                "\"id\":\"id2\",\n" +
-                "\"verb\":\"verb2\",\n" +
-                "\"displayName\":\"displayname2\",\n" +
-                "\"target\":{\n" +
-                "\t\"id\":\"targetid2\",\n" +
-                "\t\"displayName\":\"targetname2\"\n" +
-                "\t},\n" +
-                "\t\"object\":{\n" +
-                "\t\"id\":\"objectid2\",\n" +
-                "\t\"displayName\":\"objectname2\"\n" +
-                "\t},\n" +
-                "\t\"actor\":{\n" +
-                "\t\"id\":\"actorid2\",\n" +
-                "\t\"displayName\":\"actorname2\"\n" +
-                "\t}\n" +
-                "\t\n" +
-                "\t}";
-
-        expect(e.getProperty(Exchange.GROUPED_EXCHANGE, List.class)).andReturn(grouped);
-        expect(e2.getIn()).andReturn(m);
-        expect(m.getBody(String.class)).andReturn(activityJson);
-
-        replay(e, e2, m);
-
-        cassandraActivityService.receiveExchange(e);
-        //List<String> myTest = cassandraActivityService.getActivitiesForQuery("select * from coltest");
-    }
-}


[42/53] [abbrv] incubator-streams git commit: remove extra classes from merge

Posted by mf...@apache.org.
remove extra classes from merge


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/150e1715
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/150e1715
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/150e1715

Branch: refs/heads/invalid_headers
Commit: 150e1715adc0c1dcb270177aedb947803bfbaf68
Parents: 5694ae9
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Wed Oct 12 12:40:57 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Oct 12 12:40:57 2016 -0500

----------------------------------------------------------------------
 .../streams/plugins/StreamsPojoScala.java       | 371 -------------------
 .../streams/plugins/StreamsPojoScalaMojo.java   |  71 ----
 .../plugins/test/StreamsPojoScalaTest.java      |  55 ---
 3 files changed, 497 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/150e1715/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScala.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScala.java b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScala.java
deleted file mode 100644
index 1c3e317..0000000
--- a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScala.java
+++ /dev/null
@@ -1,371 +0,0 @@
-package org.apache.streams.plugins;
-
-import com.google.common.base.Strings;
-import com.google.common.collect.Iterables;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
-import com.google.common.collect.Sets;
-import org.apache.streams.data.DocumentClassifier;
-import org.reflections.ReflectionUtils;
-import org.reflections.Reflections;
-import org.reflections.scanners.SubTypesScanner;
-import org.reflections.scanners.TypeAnnotationsScanner;
-import org.reflections.util.ClasspathHelper;
-import org.reflections.util.ConfigurationBuilder;
-import org.reflections.ReflectionUtils.*;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import javax.annotation.Generated;
-import java.io.File;
-import java.io.IOException;
-import java.io.Serializable;
-import java.lang.reflect.Field;
-import java.nio.file.Files;
-import java.nio.file.OpenOption;
-import java.nio.file.Paths;
-import java.nio.file.StandardOpenOption;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.TreeSet;
-import java.util.concurrent.ConcurrentHashMap;
-
-/**
- * Created by sblackmon on 11/18/15.
- */
-public class StreamsPojoScala implements Runnable {
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoScala.class);
-
-    private final static String LS = System.getProperty("line.separator");
-
-    private StreamsPojoScalaMojo mojo;
-
-    String outDir = "./target/generated-sources/scala";
-    String packages = "org.apache.streams.pojo.json";
-
-    private final Reflections reflections = new Reflections(
-            new ConfigurationBuilder()
-                    // TODO
-                    .forPackages(packages)
-                    .setScanners(
-                            new SubTypesScanner(),
-                            new TypeAnnotationsScanner()));
-
-    public void main(String[] args) {
-        StreamsPojoScala streamsPojoScala = new StreamsPojoScala();
-        Thread thread = new Thread(streamsPojoScala);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
-        return;
-    }
-
-    public StreamsPojoScala(StreamsPojoScalaMojo mojo) {
-        this.mojo = mojo;
-        if (    mojo != null &&
-                mojo.getTarget() != null &&
-                !Strings.isNullOrEmpty(mojo.getTarget().getAbsolutePath())
-            )
-            outDir = mojo.getTarget().getAbsolutePath();
-
-        if (    mojo != null &&
-                mojo.getPackages() != null &&
-                !Strings.isNullOrEmpty(mojo.getPackages())
-            )
-            packages = mojo.getPackages();
-    }
-
-    public StreamsPojoScala() {
-    }
-
-    public void run() {
-
-        List<Class<?>> serializableClasses = detectSerializableClasses();
-
-        LOGGER.info("Detected {} serialiables:", serializableClasses.size());
-        for( Class clazz : serializableClasses )
-            LOGGER.debug(clazz.toString());
-
-        List<Class<?>> pojoClasses = detectPojoClasses(serializableClasses);
-
-        LOGGER.info("Detected {} pojos:", pojoClasses.size());
-        for( Class clazz : pojoClasses )
-            LOGGER.debug(clazz.toString());
-
-        List<Class<?>> traits = detectTraits(pojoClasses);
-
-        LOGGER.info("Detected {} traits:", traits.size());
-        for( Class clazz : traits )
-            LOGGER.debug(clazz.toString());
-
-        List<Class<?>> cases = detectCases(pojoClasses);
-
-        LOGGER.info("Detected {} cases:", cases.size());
-        for( Class clazz : cases )
-            LOGGER.debug(clazz.toString());
-
-
-        for( Class clazz : traits ) {
-            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".scala").replace(".","/")+"/traits/";
-            String pojoName = clazz.getSimpleName()+".scala";
-            String pojoScala = renderTrait(clazz);
-            writeFile(outDir+"/"+pojoPath+pojoName, pojoScala);
-        }
-
-        for( Class clazz : traits ) {
-            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".scala").replace(".","/")+"/";
-            String pojoName = clazz.getSimpleName()+".scala";
-            String pojoScala = renderClass(clazz);
-            writeFile(outDir+"/"+pojoPath+pojoName, pojoScala);
-        }
-
-        for( Class clazz : cases ) {
-            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".scala").replace(".","/")+"/";
-            String pojoName = clazz.getSimpleName()+".scala";
-            String pojoScala = renderCase(clazz);
-            writeFile(outDir+"/"+pojoPath+pojoName, pojoScala);
-        }
-
-    }
-
-    private void writeFile(String pojoFile, String pojoScala) {
-        try {
-            File path = new File(pojoFile);
-            File dir = path.getParentFile();
-            if( !dir.exists() )
-                dir.mkdirs();
-            Files.write(Paths.get(pojoFile), pojoScala.getBytes(), StandardOpenOption.CREATE_NEW);
-        } catch (Exception e) {
-            LOGGER.error("Write Exception: {}", e);
-        }
-    }
-
-    public List<Class<?>> detectSerializableClasses() {
-
-        Set<Class<? extends Serializable>> classes =
-                reflections.getSubTypesOf(java.io.Serializable.class);
-
-        List<Class<?>> result = Lists.newArrayList();
-
-        for( Class clazz : classes ) {
-            result.add(clazz);
-        }
-
-        return result;
-    }
-
-    public List<Class<?>> detectPojoClasses(List<Class<?>> classes) {
-
-        List<Class<?>> result = Lists.newArrayList();
-
-        for( Class clazz : classes ) {
-            try {
-                clazz.newInstance().toString();
-            } catch( Exception e) {}
-            // super-halfass way to know if this is a jsonschema2pojo
-            if( clazz.getAnnotations().length >= 1 )
-                result.add(clazz);
-        }
-
-        return result;
-    }
-
-    public List<Class<?>> detectTraits(List<Class<?>> classes) {
-
-        List<Class<?>> traits = Lists.newArrayList();
-
-        for( Class clazz : classes ) {
-            if (reflections.getSubTypesOf(clazz).size() > 0)
-                traits.add(clazz);
-        }
-
-        return traits;
-    }
-
-    public List<Class<?>> detectCases(List<Class<?>> classes) {
-
-        List<Class<?>> cases = Lists.newArrayList();
-
-        for( Class clazz : classes ) {
-            if (reflections.getSubTypesOf(clazz).size() == 0)
-                cases.add(clazz);
-        }
-
-        return cases;
-    }
-
-
-    public String renderTrait(Class<?> pojoClass) {
-        StringBuffer stringBuffer = new StringBuffer();
-        stringBuffer.append("package ");
-        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".scala"));
-        stringBuffer.append(".traits");
-        stringBuffer.append(LS);
-        stringBuffer.append("trait "+pojoClass.getSimpleName());
-        stringBuffer.append(" extends Serializable");
-        stringBuffer.append(" {");
-
-        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
-        appendFields(stringBuffer, fields, "def", ";");
-
-        stringBuffer.append("}");
-
-        return stringBuffer.toString();
-    }
-
-    public String renderClass(Class<?> pojoClass) {
-        StringBuffer stringBuffer = new StringBuffer();
-        stringBuffer.append("package ");
-        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".scala"));
-        stringBuffer.append(LS);
-        stringBuffer.append("import org.apache.commons.lang.builder.{HashCodeBuilder, EqualsBuilder, ToStringBuilder}");
-        stringBuffer.append(LS);
-        stringBuffer.append("class "+pojoClass.getSimpleName());
-        stringBuffer.append(" (");
-
-        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
-        appendFields(stringBuffer, fields, "var", ",");
-
-        stringBuffer.append(")");
-        stringBuffer.append(" extends "+pojoClass.getPackage().getName().replace(".pojo.json", ".scala")+".traits."+pojoClass.getSimpleName());
-        stringBuffer.append(" with Serializable ");
-        stringBuffer.append("{ ");
-        stringBuffer.append(LS);
-        stringBuffer.append("override def equals(obj: Any) = obj match { ");
-        stringBuffer.append(LS);
-        stringBuffer.append("  case other: ");
-        stringBuffer.append(pojoClass.getSimpleName());
-        stringBuffer.append(" => other.getClass == getClass && EqualsBuilder.reflectionEquals(this,obj)");
-        stringBuffer.append(LS);
-        stringBuffer.append("  case _ => false");
-        stringBuffer.append(LS);
-        stringBuffer.append("}");
-        stringBuffer.append(LS);
-        stringBuffer.append("override def hashCode = new HashCodeBuilder().hashCode");
-        stringBuffer.append(LS);
-        stringBuffer.append("}");
-
-        return stringBuffer.toString();
-    }
-
-    public String renderCase(Class<?> pojoClass) {
-        StringBuffer stringBuffer = new StringBuffer();
-        stringBuffer.append("package ");
-        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".scala"));
-        stringBuffer.append(LS);
-        stringBuffer.append("case class "+pojoClass.getSimpleName());
-        stringBuffer.append("(");
-        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
-        appendFields(stringBuffer, fields, "var", ",");
-        stringBuffer.append(")");
-        if( pojoClass.getSuperclass() != null && !pojoClass.getSuperclass().equals(java.lang.Object.class)) {
-            stringBuffer.append(" extends "+pojoClass.getSuperclass().getPackage().getName().replace(".pojo.json", ".scala")+".traits."+pojoClass.getSuperclass().getSimpleName());
-        }
-        stringBuffer.append(LS);
-
-        return stringBuffer.toString();
-    }
-
-    private void appendFields(StringBuffer stringBuffer, Set<Field> fields, String varDef, String fieldDelimiter) {
-        if( fields.size() > 0 ) {
-            stringBuffer.append(LS);
-            Map<String,Field> fieldsToAppend = uniqueFields(fields);
-            for( Iterator<Field> iter = fieldsToAppend.values().iterator(); iter.hasNext(); ) {
-                Field field = iter.next();
-                if( override( field ) )
-                    stringBuffer.append("override ");
-                stringBuffer.append(varDef);
-                stringBuffer.append(" ");
-                stringBuffer.append(name(field));
-                stringBuffer.append(": ");
-                if( option(field) ) {
-                    stringBuffer.append("scala.Option[");
-                    stringBuffer.append(type(field));
-                    stringBuffer.append("]");
-                } else {
-                    stringBuffer.append(type(field));
-                }
-                if( !fieldDelimiter.equals(";") && value(field) != null) {
-                    stringBuffer.append(" = ");
-                    if( option(field) ) {
-                        stringBuffer.append("scala.Some(");
-                        stringBuffer.append(value(field));
-                        stringBuffer.append(")");
-                    } else {
-                        stringBuffer.append(value(field));
-                    }
-                }
-                if( iter.hasNext()) stringBuffer.append(fieldDelimiter);
-                stringBuffer.append(LS);
-            }
-        } else {
-            stringBuffer.append(LS);
-        }
-    }
-
-    private boolean option(Field field) {
-        if( field.getName().equals("verb")) {
-            return false;
-        } else if( field.getType().equals(java.util.Map.class)) {
-            return false;
-        } else if( field.getType().equals(java.util.List.class)) {
-            return false;
-        } else return true;
-    }
-
-    private String value(Field field) {
-        if( field.getName().equals("verb")) {
-            return "\"post\"";
-        } else if( field.getName().equals("objectType")) {
-            return "\"application\"";
-        } else return null;
-    }
-
-    private String type(Field field) {
-        if( field.getType().equals(java.lang.String.class)) {
-            return "String";
-        } else if( field.getType().equals(java.util.Map.class)) {
-            return "scala.collection.mutable.Map[String,Any]";
-        } else if( field.getType().equals(java.util.List.class)) {
-            return "scala.collection.mutable.MutableList[Any]";
-        }
-        return field.getType().getCanonicalName().replace(".pojo.json", ".scala");
-    }
-
-    private Map<String,Field> uniqueFields(Set<Field> fieldset) {
-        Map<String,Field> fields = Maps.newTreeMap();
-        Field item = null;
-        for( Iterator<Field> it = fieldset.iterator(); it.hasNext(); item = it.next() ) {
-            if( item != null && item.getName() != null ) {
-                Field added = fields.put(item.getName(), item);
-            }
-            // ensure right class will get used
-        }
-        return fields;
-    }
-
-    private String name(Field field) {
-        if( field.getName().equals("object"))
-            return "obj";
-        else return field.getName();
-    }
-
-    private boolean override(Field field) {
-        try {
-            if( field.getDeclaringClass().getSuperclass().getField(field.getName()) != null )
-                return true;
-            else return false;
-        } catch( Exception e ) {
-            return false;
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/150e1715/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScalaMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScalaMojo.java b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScalaMojo.java
deleted file mode 100644
index baa0f50..0000000
--- a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScalaMojo.java
+++ /dev/null
@@ -1,71 +0,0 @@
-package org.apache.streams.plugins;
-
-import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.plugin.AbstractMojo;
-import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.plugin.descriptor.PluginDescriptor;
-import org.apache.maven.plugins.annotations.Component;
-import org.apache.maven.plugins.annotations.Execute;
-import org.apache.maven.plugins.annotations.LifecyclePhase;
-import org.apache.maven.plugins.annotations.Mojo;
-import org.apache.maven.plugins.annotations.Parameter;
-import org.apache.maven.project.MavenProject;
-import org.apache.maven.settings.Settings;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.File;
-
-@Mojo(  name = "scala",
-        defaultPhase = LifecyclePhase.GENERATE_SOURCES
-)
-@Execute(   goal = "scala",
-            phase = LifecyclePhase.GENERATE_SOURCES
-)
-public class StreamsPojoScalaMojo extends AbstractMojo {
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoScalaMojo.class);
-
-    @Component
-    private MavenProject project;
-
-//    @Component
-//    private Settings settings;
-//
-//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
-//    protected ArtifactRepository localRepository;
-//
-//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
-//    private PluginDescriptor plugin;
-//
-    @Parameter( defaultValue = "${project.basedir}", readonly = true )
-    private File basedir;
-
-    @Parameter(defaultValue = "${project.build.directory}", readonly = true)
-    private File target;
-
-    @Parameter(defaultValue = "org.apache.streams.pojo.json", readonly = true)
-    private String packages;
-
-    public void execute() throws MojoExecutionException {
-        StreamsPojoScala streamsPojoScala = new StreamsPojoScala(this);
-        Thread thread = new Thread(streamsPojoScala);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
-        return;
-    }
-
-    public File getTarget() {
-        return target;
-    }
-
-    public String getPackages() {
-        return packages;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/150e1715/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsPojoScalaTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsPojoScalaTest.java b/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsPojoScalaTest.java
deleted file mode 100644
index 4e5e7e3..0000000
--- a/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsPojoScalaTest.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package org.apache.streams.plugins.test;
-
-import org.apache.streams.plugins.StreamsPojoScala;
-import org.junit.Test;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.File;
-import java.io.FileFilter;
-
-/**
- * Test that Activity beans are compatible with the example activities in the spec.
- */
-public class StreamsPojoScalaTest {
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoScalaTest.class);
-
-    /**
-     * Tests that all example activities can be loaded into Activity beans
-     *
-     * @throws Exception
-     */
-    @Test
-    public void testDetectPojoScala() throws Exception {
-        StreamsPojoScala streamsPojoScala = new StreamsPojoScala();
-        streamsPojoScala.main(new String[0]);
-
-        File testOutput = new File( "./target/generated-sources/scala/org/apache/streams/scala");
-        FileFilter scalaFilter = new FileFilter() {
-            @Override
-            public boolean accept(File pathname) {
-                if( pathname.getName().endsWith(".scala") )
-                    return true;
-                return false;
-            }
-        };
-
-        assert( testOutput != null );
-        assert( testOutput.exists() == true );
-        assert( testOutput.isDirectory() == true );
-        assert( testOutput.listFiles(scalaFilter).length == 11 );
-        assert( new File(testOutput + "/traits").exists() == true );
-        assert( new File(testOutput + "/traits").isDirectory() == true );
-        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
-        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
-        assert( new File(testOutput + "/objectTypes").exists() == true );
-        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
-        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
-        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
-        assert( new File(testOutput + "/verbs").exists() == true );
-        assert( new File(testOutput + "/verbs").isDirectory() == true );
-        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
-        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
-    }
-}
\ No newline at end of file


[17/53] [abbrv] incubator-streams git commit: WIP for apachecon

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
index 667661f..8d904af 100644
--- a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
@@ -1,14 +1,19 @@
 package org.apache.streams.plugins.test;
 
+import com.google.common.base.Predicate;
 import com.google.common.collect.Lists;
+import com.google.common.io.Files;
 import org.apache.streams.plugins.StreamsPojoGenerationConfig;
 import org.apache.streams.plugins.StreamsPojoSourceGenerator;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import javax.annotation.Nullable;
 import java.io.File;
 import java.io.FileFilter;
+import java.util.Collection;
 import java.util.List;
 
 /**
@@ -18,6 +23,15 @@ public class StreamsPojoSourceGeneratorTest {
 
     private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoSourceGeneratorTest.class);
 
+    public static final Predicate<File> javaFilter = new Predicate<File>() {
+        @Override
+        public boolean apply(@Nullable File file) {
+            if( file.getName().endsWith(".java") )
+                return true;
+            else return false;
+        }
+    };
+
     /**
      * Tests that all example activities can be loaded into Activity beans
      *
@@ -54,18 +68,16 @@ public class StreamsPojoSourceGeneratorTest {
         }
 
         File testOutput = new File( "target/generated-sources/test");
-        FileFilter javaFilter = new FileFilter() {
-            @Override
-            public boolean accept(File pathname) {
-            if( pathname.getName().endsWith(".java") )
-                return true;
-            return false;
-            }
-        };
 
         assert( testOutput != null );
         assert( testOutput.exists() == true );
         assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(javaFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() > 133 );
+
 //        assert( testOutput.listFiles(javaFilter).length == 11 );
 //        assert( new File(testOutput + "/traits").exists() == true );
 //        assert( new File(testOutput + "/traits").isDirectory() == true );

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml b/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
index 359179e..21fd50e 100644
--- a/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
+++ b/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
@@ -104,6 +104,7 @@
             <plugin>
                 <groupId>org.codehaus.mojo</groupId>
                 <artifactId>build-helper-maven-plugin</artifactId>
+                <version>1.8</version>
                 <executions>
                     <execution>
                         <id>add-source</id>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/java/org/apache/streams/schema/FieldUtil.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/java/org/apache/streams/schema/FieldUtil.java b/streams-schemas/src/main/java/org/apache/streams/schema/FieldUtil.java
index 5f83767..4173e50 100644
--- a/streams-schemas/src/main/java/org/apache/streams/schema/FieldUtil.java
+++ b/streams-schemas/src/main/java/org/apache/streams/schema/FieldUtil.java
@@ -1,11 +1,20 @@
 package org.apache.streams.schema;
 
+import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.google.common.collect.ImmutableList;
+import com.google.common.collect.Lists;
+
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 /**
  * Created by steve on 5/1/16.
  */
 public class FieldUtil {
+
     public static FieldType determineFieldType(ObjectNode fieldNode) {
         String typeSchemaField = "type";
         if( !fieldNode.has(typeSchemaField))
@@ -26,4 +35,25 @@ public class FieldUtil {
         }
         else return null;
     }
+
+    public static FieldType determineArrayType(ObjectNode fieldNode) {
+        if( fieldNode == null ) return null;
+        ObjectNode itemsObjectNode = resolveItemsNode(fieldNode);
+        if( itemsObjectNode != null)
+            return determineFieldType(itemsObjectNode);
+        return null;
+    }
+
+    public static ObjectNode resolveItemsNode(ObjectNode fieldNode) {
+        ObjectNode itemsObjectNode = null;
+
+        if( fieldNode.get("items").isObject() )
+            itemsObjectNode = (ObjectNode) fieldNode.get("items");
+        else if( fieldNode.get("items").isArray() && fieldNode.size() > 0 && fieldNode.get(0).isObject()) {
+            itemsObjectNode = (ObjectNode) fieldNode.get("items").get(0);
+        }
+
+        return itemsObjectNode;
+    }
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/java/org/apache/streams/schema/FileUtil.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/java/org/apache/streams/schema/FileUtil.java b/streams-schemas/src/main/java/org/apache/streams/schema/FileUtil.java
index 6b171f3..53f0a98 100644
--- a/streams-schemas/src/main/java/org/apache/streams/schema/FileUtil.java
+++ b/streams-schemas/src/main/java/org/apache/streams/schema/FileUtil.java
@@ -22,9 +22,16 @@ public class FileUtil {
     public static String dropSourcePathPrefix(String inputFile, String sourceDirectory) {
         if(Strings.isNullOrEmpty(sourceDirectory))
             return inputFile;
-        else if( inputFile.contains(sourceDirectory) ) {
-            return inputFile.substring(inputFile.indexOf(sourceDirectory)+sourceDirectory.length()+1);
-        } else return inputFile;
+        else {
+            try {
+                if( inputFile.contains(sourceDirectory) && inputFile.indexOf(sourceDirectory) > 0) {
+                    return inputFile.substring(inputFile.indexOf(sourceDirectory)+sourceDirectory.length()+1);
+                }
+            } catch( Throwable e ) {
+                return inputFile;
+            }
+        }
+        return inputFile;
     }
 
     public static String swapExtension(String inputFile, String originalExtension, String newExtension) {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/java/org/apache/streams/schema/GenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/java/org/apache/streams/schema/GenerationConfig.java b/streams-schemas/src/main/java/org/apache/streams/schema/GenerationConfig.java
index e0469c9..ec77367 100644
--- a/streams-schemas/src/main/java/org/apache/streams/schema/GenerationConfig.java
+++ b/streams-schemas/src/main/java/org/apache/streams/schema/GenerationConfig.java
@@ -48,14 +48,14 @@ public interface GenerationConfig {
      *         Setting this to false will disable additional properties support,
      *         regardless of the input schema(s).
      */
-    boolean isIncludeAdditionalProperties();
+//    boolean isIncludeAdditionalProperties();
 
     /**
      * Gets the 'targetVersion' configuration option.
      *
      *  @return The target version for generated source files.
      */
-    String getTargetVersion();
+//    String getTargetVersion();
 
 //    /**
 //     * Gets the `includeDynamicAccessors` configuraiton option.

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/java/org/apache/streams/schema/SchemaUtil.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/java/org/apache/streams/schema/SchemaUtil.java b/streams-schemas/src/main/java/org/apache/streams/schema/SchemaUtil.java
index 3e3b300..cefc5e8 100644
--- a/streams-schemas/src/main/java/org/apache/streams/schema/SchemaUtil.java
+++ b/streams-schemas/src/main/java/org/apache/streams/schema/SchemaUtil.java
@@ -3,7 +3,6 @@ package org.apache.streams.schema;
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.node.JsonNodeFactory;
 import com.fasterxml.jackson.databind.node.ObjectNode;
-import org.jsonschema2pojo.util.NameHelper;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -21,9 +20,10 @@ public class SchemaUtil {
 
     private final static Logger LOGGER = LoggerFactory.getLogger(SchemaUtil.class);
     private static final JsonNodeFactory NODE_FACTORY = JsonNodeFactory.instance;
+    public static final String ILLEGAL_CHARACTER_REGEX = "[^0-9a-zA-Z_$]";
 
     public static String childQualifiedName(String parentQualifiedName, String childSimpleName) {
-        String safeChildName = childSimpleName.replaceAll(NameHelper.ILLEGAL_CHARACTER_REGEX, "_");
+        String safeChildName = childSimpleName.replaceAll(ILLEGAL_CHARACTER_REGEX, "_");
         return isEmpty(parentQualifiedName) ? safeChildName : parentQualifiedName + "." + safeChildName;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/activity.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/activity.json b/streams-schemas/src/main/jsonschema/activity.json
index 8c058a4..2edd759 100644
--- a/streams-schemas/src/main/jsonschema/activity.json
+++ b/streams-schemas/src/main/jsonschema/activity.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/activity.json#",
     "type": "object",
     "title": "activity",
     "javaInterfaces": ["java.io.Serializable"],
@@ -61,11 +61,11 @@
         },
         "icon": {
             "type": "object",
+            "description": "An IRI[RFC3987] identifying an image resource provides a visual representation of the activity, intended for human consumption. The image SHOULD have an aspect ratio of one (horizontal) to one (vertical) and SHOULD be suitable for presentation at a small size. An activity MAY have an icon property",
             "javaInterfaces": ["java.io.Serializable"],
-            "properties": {
-                "$ref": "./media_link.json#properties"
-            },
-            "description": "An IRI[RFC3987] identifying an image resource provides a visual representation of the activity, intended for human consumption. The image SHOULD have an aspect ratio of one (horizontal) to one (vertical) and SHOULD be suitable for presentation at a small size. An activity MAY have an icon property"
+            "extends": {
+                "$ref": "./media_link.json"
+            }
         },
         "provider": {
             "type": "object",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/collection.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/collection.json b/streams-schemas/src/main/jsonschema/collection.json
index 8173b75..38f83e7 100644
--- a/streams-schemas/src/main/jsonschema/collection.json
+++ b/streams-schemas/src/main/jsonschema/collection.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/collection.json#",
     "type": "object",
     "title": "collection",
     "javaInterfaces": ["java.io.Serializable"],

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/media_link.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/media_link.json b/streams-schemas/src/main/jsonschema/media_link.json
index fa55b2f..e7eece0 100644
--- a/streams-schemas/src/main/jsonschema/media_link.json
+++ b/streams-schemas/src/main/jsonschema/media_link.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/media_link.json#",
     "type": "object",
     "title": "media_link",
     "javaInterfaces": ["java.io.Serializable"],

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/object.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/object.json b/streams-schemas/src/main/jsonschema/object.json
index 97adc3c..94f6719 100644
--- a/streams-schemas/src/main/jsonschema/object.json
+++ b/streams-schemas/src/main/jsonschema/object.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/object.json#",
     "type": "object",
     "title": "object",
     "javaInterfaces": ["java.io.Serializable"],
@@ -18,10 +18,10 @@
         "image": {
             "format": "image",
             "type": "object",
+            "description": "Description of a resource providing a visual representation of the object, intended for human consumption. An object MAY contain an image property whose value is a Media Link.",
             "extends": {
                 "$ref": "./media_link.json"
-            },
-            "description": "Description of a resource providing a visual representation of the object, intended for human consumption. An object MAY contain an image property whose value is a Media Link."
+            }
         },
         "displayName": {
             "type": "string",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/alert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/alert.json b/streams-schemas/src/main/jsonschema/objectTypes/alert.json
index 0ace5de..0fa4d60 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/alert.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/alert.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/alert.json#",
     "type": "object",
     "title": "alert",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/application.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/application.json b/streams-schemas/src/main/jsonschema/objectTypes/application.json
index ceb1208..ea3219d 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/application.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/application.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/application.json#",
     "type": "object",
     "title": "application",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/article.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/article.json b/streams-schemas/src/main/jsonschema/objectTypes/article.json
index 8abc7f7..2260532 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/article.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/article.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/article.json#",
     "type": "object",
     "title": "article",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/audio.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/audio.json b/streams-schemas/src/main/jsonschema/objectTypes/audio.json
index 92cef7f..1e94405 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/audio.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/audio.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/audio.json#",
     "type": "object",
     "title": "audio",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/badge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/badge.json b/streams-schemas/src/main/jsonschema/objectTypes/badge.json
index b743236..08af422 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/badge.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/badge.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/badge.json#",
     "type": "object",
     "title": "badge",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/binary.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/binary.json b/streams-schemas/src/main/jsonschema/objectTypes/binary.json
index 8915633..8723f51 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/binary.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/binary.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/binary.json#",
     "type": "object",
     "title": "binary",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json b/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json
index 3d3e3f1..808555f 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/badge.json#",
     "type": "object",
     "title": "bookmark",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/comment.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/comment.json b/streams-schemas/src/main/jsonschema/objectTypes/comment.json
index 90249c4..1ec2dc2 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/comment.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/comment.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/comment.json#",
     "type": "object",
     "title": "comment",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/device.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/device.json b/streams-schemas/src/main/jsonschema/objectTypes/device.json
index faea368..74dfb39 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/device.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/device.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/device.json#",
     "type": "object",
     "title": "device",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/event.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/event.json b/streams-schemas/src/main/jsonschema/objectTypes/event.json
index 479213f..f6e5fb6 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/event.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/event.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/event.json#",
     "type": "object",
     "title": "event",
     "description": "xCal fromat for vevent",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/file.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/file.json b/streams-schemas/src/main/jsonschema/objectTypes/file.json
index 695ef98..50ec239 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/file.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/file.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/file.json#",
     "type": "object",
     "title": "file",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/folder.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/folder.json b/streams-schemas/src/main/jsonschema/objectTypes/folder.json
index a319efe..35592c1 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/folder.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/folder.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/folder.json#",
     "type": "object",
     "title": "folder",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/game.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/game.json b/streams-schemas/src/main/jsonschema/objectTypes/game.json
index 5f13dfc..ca761ed 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/game.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/game.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/game.json#",
     "type": "object",
     "title": "game",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/group.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/group.json b/streams-schemas/src/main/jsonschema/objectTypes/group.json
index b67d88d..8623922 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/group.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/group.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/group.json#",
     "type": "object",
     "title": "group",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/image.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/image.json b/streams-schemas/src/main/jsonschema/objectTypes/image.json
index 8a19fd1..7eca770 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/image.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/image.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/image.json#",
     "type": "object",
     "title": "image",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/issue.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/issue.json b/streams-schemas/src/main/jsonschema/objectTypes/issue.json
index 29bfe44..29f2fad 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/issue.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/issue.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/issue.json#",
     "type": "object",
     "title": "issue",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/job.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/job.json b/streams-schemas/src/main/jsonschema/objectTypes/job.json
index 2d82975..b832f16 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/job.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/job.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/job.json#",
     "type": "object",
     "title": "job",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/list.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/list.json b/streams-schemas/src/main/jsonschema/objectTypes/list.json
index d7c164a..c93a5e8 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/list.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/list.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/list.json#",
     "type": "object",
     "title": "list",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/note.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/note.json b/streams-schemas/src/main/jsonschema/objectTypes/note.json
index 09de97c..63445d5 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/note.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/note.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/note.json#",
     "type": "object",
     "title": "note",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/offer.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/offer.json b/streams-schemas/src/main/jsonschema/objectTypes/offer.json
index 38db718..6d4b5f2 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/offer.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/offer.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/offer.json#",
     "type": "object",
     "title": "offer",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/organization.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/organization.json b/streams-schemas/src/main/jsonschema/objectTypes/organization.json
index a3fd5a2..7ee7513 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/organization.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/organization.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/organization.json#",
     "type": "object",
     "title": "organization",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/page.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/page.json b/streams-schemas/src/main/jsonschema/objectTypes/page.json
index 4f76aa2..4f18fcf 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/page.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/page.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/page.json#",
     "type": "object",
     "title": "page",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/permission.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/permission.json b/streams-schemas/src/main/jsonschema/objectTypes/permission.json
index 32b395c..2a156dc 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/permission.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/permission.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/permission.json#",
     "type": "object",
     "title": "permission",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/person.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/person.json b/streams-schemas/src/main/jsonschema/objectTypes/person.json
index f42eb8e..6855634 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/person.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/person.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/person.json#",
     "type": "object",
     "title": "person",
     "description": "vCard Format. Does not match PoCO",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json b/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json
index 933804b..1ad4b18 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/photo-album.json#",
     "type": "object",
     "title": "article",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/photo.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/photo.json b/streams-schemas/src/main/jsonschema/objectTypes/photo.json
index 347f25c..ab44aad 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/photo.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/photo.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/photo.json#",
     "type": "object",
     "title": "photo",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/place.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/place.json b/streams-schemas/src/main/jsonschema/objectTypes/place.json
index bb96a79..02d5fe4 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/place.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/place.json
@@ -4,14 +4,12 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/place.json#",
     "type": "object",
     "title": "place",
-    "extends": [
-        {
-            "$ref": "../object.json"
-        }
-    ],
+    "extends": {
+        "$ref": "../object.json"
+    },
     "properties": {
         "objectType": {
             "type": "string",
@@ -19,11 +17,9 @@
         },
         "address": {
           "type": "object",
-          "extends": [
-            {
-              "$ref": "http://www.json-schema.org/address"
-            }
-          ]
+          "extends": {
+            "$ref": "http://www.json-schema.org/address"
+          }
         },
         "position": {
           "type": "object",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/playlist.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/playlist.json b/streams-schemas/src/main/jsonschema/objectTypes/playlist.json
index 6ce9dd2..d40b109 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/playlist.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/playlist.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/playlist.json#",
     "type": "object",
     "title": "playlist",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/process.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/process.json b/streams-schemas/src/main/jsonschema/objectTypes/process.json
index d717cc7..343ff38 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/process.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/process.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/process.json#",
     "type": "object",
     "title": "process",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/product.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/product.json b/streams-schemas/src/main/jsonschema/objectTypes/product.json
index 4e035cf..7614cb9 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/product.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/product.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/product.json#",
     "type": "object",
     "title": "product",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/property.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/property.json b/streams-schemas/src/main/jsonschema/objectTypes/property.json
index 0cd630e..ff2e73b 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/property.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/property.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/property.json#",
     "type": "object",
     "title": "property",
     "description": "A property describes name, path and value. Can be used with delete, update or post verbs",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/question.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/question.json b/streams-schemas/src/main/jsonschema/objectTypes/question.json
index cccdfe0..9383caf 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/question.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/question.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/question.json#",
     "type": "object",
     "title": "question",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/review.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/review.json b/streams-schemas/src/main/jsonschema/objectTypes/review.json
index 7629cb6..5b5ab58 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/review.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/review.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/review.json#",
     "type": "object",
     "title": "review",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/role.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/role.json b/streams-schemas/src/main/jsonschema/objectTypes/role.json
index 25524ab..0521f93 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/role.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/role.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/role.json#",
     "type": "object",
     "title": "role",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/service.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/service.json b/streams-schemas/src/main/jsonschema/objectTypes/service.json
index 3d4a496..ff89fae 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/service.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/service.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/service.json#",
     "type": "object",
     "title": "service",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/song.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/song.json b/streams-schemas/src/main/jsonschema/objectTypes/song.json
index 46d6eb0..2b89d4b 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/song.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/song.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/song.json#",
     "type": "object",
     "title": "song",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/status.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/status.json b/streams-schemas/src/main/jsonschema/objectTypes/status.json
index a029f19..ac7a844 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/status.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/status.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/status.json#",
     "type": "object",
     "title": "status",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/task.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/task.json b/streams-schemas/src/main/jsonschema/objectTypes/task.json
index fb2f39f..2c8a3ea 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/task.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/task.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/task.json#",
     "type": "object",
     "title": "task",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/team.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/team.json b/streams-schemas/src/main/jsonschema/objectTypes/team.json
index 37419a0..f4f7494 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/team.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/team.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/team.json#",
     "type": "object",
     "title": "team",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/objectTypes/video.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/video.json b/streams-schemas/src/main/jsonschema/objectTypes/video.json
index 7ac63d8..88a528d 100644
--- a/streams-schemas/src/main/jsonschema/objectTypes/video.json
+++ b/streams-schemas/src/main/jsonschema/objectTypes/video.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/video.json#",
     "type": "object",
     "title": "video",
     "extends": {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/accept.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/accept.json b/streams-schemas/src/main/jsonschema/verbs/accept.json
index a9f91fe..04efee5 100644
--- a/streams-schemas/src/main/jsonschema/verbs/accept.json
+++ b/streams-schemas/src/main/jsonschema/verbs/accept.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/accept.json#",
     "type": "object",
     "title": "Accept",
     "description": "Indicates that that the actor has accepted the object. For instance, a person accepting an award, or accepting an assignment.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/access.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/access.json b/streams-schemas/src/main/jsonschema/verbs/access.json
index 156e3cb..eb08184 100644
--- a/streams-schemas/src/main/jsonschema/verbs/access.json
+++ b/streams-schemas/src/main/jsonschema/verbs/access.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/access.json#",
     "type": "object",
     "title": "Access",
     "description": "Indicates that the actor has accessed the object. For instance, a person accessing a room, or accessing a file.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/acknowledge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/acknowledge.json b/streams-schemas/src/main/jsonschema/verbs/acknowledge.json
index 2e84c43..aae6209 100644
--- a/streams-schemas/src/main/jsonschema/verbs/acknowledge.json
+++ b/streams-schemas/src/main/jsonschema/verbs/acknowledge.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/acknowledge.json#",
     "type": "object",
     "title": "Acknowledge",
     "description": "Indicates that the actor has acknowledged the object. This effectively signals that the actor is aware of the object's existence.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/add.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/add.json b/streams-schemas/src/main/jsonschema/verbs/add.json
index cec0c58..4d99411 100644
--- a/streams-schemas/src/main/jsonschema/verbs/add.json
+++ b/streams-schemas/src/main/jsonschema/verbs/add.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/add.json#",
     "type": "object",
     "title": "Add",
     "description": "Indicates that the actor has added the object to the target. For instance, adding a photo to an album.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/agree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/agree.json b/streams-schemas/src/main/jsonschema/verbs/agree.json
index 5095153..9e79c2a 100644
--- a/streams-schemas/src/main/jsonschema/verbs/agree.json
+++ b/streams-schemas/src/main/jsonschema/verbs/agree.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/agree.json#",
     "type": "object",
     "title": "Agree",
     "description": "Indicates that the actor agrees with the object. For example, a person agreeing with an argument, or expressing agreement with a particular issue.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/append.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/append.json b/streams-schemas/src/main/jsonschema/verbs/append.json
index 648d192..60e1a82 100644
--- a/streams-schemas/src/main/jsonschema/verbs/append.json
+++ b/streams-schemas/src/main/jsonschema/verbs/append.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/append.json#",
     "type": "object",
     "title": "Append",
     "description": "Indicates that the actor has appended the object to the target. For instance, a person appending a new record to a database.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/approve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/approve.json b/streams-schemas/src/main/jsonschema/verbs/approve.json
index ec66f9b..247871c 100644
--- a/streams-schemas/src/main/jsonschema/verbs/approve.json
+++ b/streams-schemas/src/main/jsonschema/verbs/approve.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/approve.json#",
     "type": "object",
     "title": "Approve",
     "description": "Indicates that the actor has approved the object. For instance, a manager might approve a travel request.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/archive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/archive.json b/streams-schemas/src/main/jsonschema/verbs/archive.json
index 24aea16..7ee2226 100644
--- a/streams-schemas/src/main/jsonschema/verbs/archive.json
+++ b/streams-schemas/src/main/jsonschema/verbs/archive.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/archive.json#",
     "type": "object",
     "title": "Archive",
     "description": "Indicates that the actor has archived the object.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/assign.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/assign.json b/streams-schemas/src/main/jsonschema/verbs/assign.json
index 8fe5458..1d43041 100644
--- a/streams-schemas/src/main/jsonschema/verbs/assign.json
+++ b/streams-schemas/src/main/jsonschema/verbs/assign.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/assign.json#",
     "type": "object",
     "title": "Assign",
     "description": "Indicates that the actor has assigned the object to the target.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/at.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/at.json b/streams-schemas/src/main/jsonschema/verbs/at.json
index 42c1222..34497e2 100644
--- a/streams-schemas/src/main/jsonschema/verbs/at.json
+++ b/streams-schemas/src/main/jsonschema/verbs/at.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/at.json#",
     "type": "object",
     "title": "At",
     "description": "Indicates that the actor is currently located at the object. For instance, a person being at a specific physical location.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/attach.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/attach.json b/streams-schemas/src/main/jsonschema/verbs/attach.json
index 77ff605..76c5a4f 100644
--- a/streams-schemas/src/main/jsonschema/verbs/attach.json
+++ b/streams-schemas/src/main/jsonschema/verbs/attach.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/attach.json#",
     "type": "object",
     "title": "Attach",
     "description": "Indicates that the actor has attached the object to the target.For instance, a person attaching a file to a wiki page or an email.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/attend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/attend.json b/streams-schemas/src/main/jsonschema/verbs/attend.json
index 07e60fd..6b02d07 100644
--- a/streams-schemas/src/main/jsonschema/verbs/attend.json
+++ b/streams-schemas/src/main/jsonschema/verbs/attend.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/attend.json#",
     "type": "object",
     "title": "Attend",
     "description": "Indicates that the actor has attended the object. For instance, a person attending a meeting.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/author.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/author.json b/streams-schemas/src/main/jsonschema/verbs/author.json
index adc8b28..4898139 100644
--- a/streams-schemas/src/main/jsonschema/verbs/author.json
+++ b/streams-schemas/src/main/jsonschema/verbs/author.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/author.json#",
     "type": "object",
     "title": "Author",
     "description": "Indicates that the actor has authored the object. Note that this is a more specific form of the verb \"create\".",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/authorize.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/authorize.json b/streams-schemas/src/main/jsonschema/verbs/authorize.json
index 7439b06..661e32c 100644
--- a/streams-schemas/src/main/jsonschema/verbs/authorize.json
+++ b/streams-schemas/src/main/jsonschema/verbs/authorize.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/authorize.json#",
     "type": "object",
     "title": "Authorize",
     "description": "Indicates that the actor has authorized the object. If a target is specified, it means that the authorization is specifically in regards to the target. For instance, a service can authorize a person to access a given application; in which case the actor is the service, the object is the person, and the target is the application. In contrast, a person can authorize a request; in which case the actor is the person and the object is the request and there might be no explicit target.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/borrow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/borrow.json b/streams-schemas/src/main/jsonschema/verbs/borrow.json
index ede59c1..74eee36 100644
--- a/streams-schemas/src/main/jsonschema/verbs/borrow.json
+++ b/streams-schemas/src/main/jsonschema/verbs/borrow.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/borrow.json#",
     "type": "object",
     "title": "Borrow",
     "description": "Indicates that the actor has borrowed the object. If a target is specified, it identifies the entity from which the object was borrowed. For instance, if a person borrows a book from a library, the person is the actor, the book is the object and the library is the target.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/build.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/build.json b/streams-schemas/src/main/jsonschema/verbs/build.json
index a90441f..d8e7d25 100644
--- a/streams-schemas/src/main/jsonschema/verbs/build.json
+++ b/streams-schemas/src/main/jsonschema/verbs/build.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/build.json#",
     "type": "object",
     "title": "Build",
     "description": "Indicates that the actor has built the object. For example, if a person builds a model or compiles code.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/cancel.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/cancel.json b/streams-schemas/src/main/jsonschema/verbs/cancel.json
index 4ab2406..0d82c8e 100644
--- a/streams-schemas/src/main/jsonschema/verbs/cancel.json
+++ b/streams-schemas/src/main/jsonschema/verbs/cancel.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/cancel.json#",
     "type": "object",
     "title": "Cancel",
     "description": "Indicates that the actor has canceled the object. For instance, canceling a calendar event.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/checkin.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/checkin.json b/streams-schemas/src/main/jsonschema/verbs/checkin.json
index d59a8c2..88a9c86 100644
--- a/streams-schemas/src/main/jsonschema/verbs/checkin.json
+++ b/streams-schemas/src/main/jsonschema/verbs/checkin.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/checkin.json#",
     "type": "object",
     "title": "checkin",
     "description": "Indicates that the actor has checked-in to the object. For instance, a person checking-in to a Place.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/close.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/close.json b/streams-schemas/src/main/jsonschema/verbs/close.json
index 7aa049d..88a31b6 100644
--- a/streams-schemas/src/main/jsonschema/verbs/close.json
+++ b/streams-schemas/src/main/jsonschema/verbs/close.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/close.json#",
     "type": "object",
     "title": "Close",
     "description": "Indicates that the actor has closed the object. For instance, the object could represent a ticket being tracked in an issue management system.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/complete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/complete.json b/streams-schemas/src/main/jsonschema/verbs/complete.json
index 4a95d48..ddffd0e 100644
--- a/streams-schemas/src/main/jsonschema/verbs/complete.json
+++ b/streams-schemas/src/main/jsonschema/verbs/complete.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/complete.json#",
     "type": "object",
     "title": "Complete",
     "description": "Indicates that the actor has completed the object",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/confirm.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/confirm.json b/streams-schemas/src/main/jsonschema/verbs/confirm.json
index aa8d45c..5148c8c 100644
--- a/streams-schemas/src/main/jsonschema/verbs/confirm.json
+++ b/streams-schemas/src/main/jsonschema/verbs/confirm.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/confirm.json#",
     "type": "object",
     "title": "Confirm",
     "description": "Indicates that the actor has confirmed or agrees with the object. For instance, a software developer might confirm an issue reported against a product.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/consume.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/consume.json b/streams-schemas/src/main/jsonschema/verbs/consume.json
index 3dc558a..661b40b 100644
--- a/streams-schemas/src/main/jsonschema/verbs/consume.json
+++ b/streams-schemas/src/main/jsonschema/verbs/consume.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/consume.json#",
     "type": "object",
     "title": "Consume",
     "description": "Indicates that the actor has consumed the object. The specific meaning is dependent largely on the object's type. For instance, an actor may \"consume\" an audio object, indicating that the actor has listened to it; or an actor may \"consume\" a book, indicating that the book has been read. As such, the \"consume\" verb is a more generic form of other more specific verbs such as \"read\" and \"play\".",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/create.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/create.json b/streams-schemas/src/main/jsonschema/verbs/create.json
index dda3012..c5ad298 100644
--- a/streams-schemas/src/main/jsonschema/verbs/create.json
+++ b/streams-schemas/src/main/jsonschema/verbs/create.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/create.json#",
     "type": "object",
     "title": "Create",
     "description": "Indicates that the actor has created the object.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/delete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/delete.json b/streams-schemas/src/main/jsonschema/verbs/delete.json
index 39966c9..544bf5d 100644
--- a/streams-schemas/src/main/jsonschema/verbs/delete.json
+++ b/streams-schemas/src/main/jsonschema/verbs/delete.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/delete.json#",
     "type": "object",
     "title": "Delete",
     "description": "Indicates that the actor has deleted the object.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/deliver.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/deliver.json b/streams-schemas/src/main/jsonschema/verbs/deliver.json
index a4b5648..4d3d2c1 100644
--- a/streams-schemas/src/main/jsonschema/verbs/deliver.json
+++ b/streams-schemas/src/main/jsonschema/verbs/deliver.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/deliver.json#",
     "type": "object",
     "title": "Deliver",
     "description": "Indicates that the actor has delivered the object. For example, delivering a package.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/deny.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/deny.json b/streams-schemas/src/main/jsonschema/verbs/deny.json
index 5bf473b..f880ad3 100644
--- a/streams-schemas/src/main/jsonschema/verbs/deny.json
+++ b/streams-schemas/src/main/jsonschema/verbs/deny.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/deny.json#",
     "type": "object",
     "title": "Deny",
     "description": "Indicates that the actor has denied the object. For example, a manager may deny a travel request.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/disagree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/disagree.json b/streams-schemas/src/main/jsonschema/verbs/disagree.json
index b2eb0c2..17f0c4c 100644
--- a/streams-schemas/src/main/jsonschema/verbs/disagree.json
+++ b/streams-schemas/src/main/jsonschema/verbs/disagree.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/disagree.json#",
     "type": "object",
     "title": "Disagree",
     "description": "Indicates that the actor disagrees with the object.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/dislike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/dislike.json b/streams-schemas/src/main/jsonschema/verbs/dislike.json
index e33cb26..308d5eb 100644
--- a/streams-schemas/src/main/jsonschema/verbs/dislike.json
+++ b/streams-schemas/src/main/jsonschema/verbs/dislike.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/dislike.json#",
     "type": "object",
     "title": "Dislike",
     "description": "Indicates that the actor dislikes the object. Note that the \"dislike\" verb is distinct from the \"unlike\" verb which assumes that the object had been previously \"liked\".",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/experience.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/experience.json b/streams-schemas/src/main/jsonschema/verbs/experience.json
index b760a5d..543ac2c 100644
--- a/streams-schemas/src/main/jsonschema/verbs/experience.json
+++ b/streams-schemas/src/main/jsonschema/verbs/experience.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/experience.json#",
     "type": "object",
     "title": "Experience",
     "description": "Indicates that the actor has experienced the object in some manner. Note that, depending on the specific object types used for both the actor and object, the meaning of this verb can overlap that of the \"consume\" and \"play\" verbs. For instance, a person might \"experience\" a movie; or \"play\" the movie; or \"consume\" the movie. The \"experience\" verb can be considered a more generic form of other more specific verbs as \"consume\", \"play\", \"watch\", \"listen\", and \"read\"",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/favorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/favorite.json b/streams-schemas/src/main/jsonschema/verbs/favorite.json
index fa7afa3..17e2490 100644
--- a/streams-schemas/src/main/jsonschema/verbs/favorite.json
+++ b/streams-schemas/src/main/jsonschema/verbs/favorite.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/favorite.json#",
     "type": "object",
     "title": "Favorite",
     "description": "Indicates that the actor marked the object as an item of special interest.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/find.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/find.json b/streams-schemas/src/main/jsonschema/verbs/find.json
index b1a7dacc..79ebbe8 100644
--- a/streams-schemas/src/main/jsonschema/verbs/find.json
+++ b/streams-schemas/src/main/jsonschema/verbs/find.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/find.json#",
     "type": "object",
     "title": "Find",
     "description": "Indicates that the actor has found the object.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/flag-as-inappropriate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/flag-as-inappropriate.json b/streams-schemas/src/main/jsonschema/verbs/flag-as-inappropriate.json
index e6657aa..f7b5785 100644
--- a/streams-schemas/src/main/jsonschema/verbs/flag-as-inappropriate.json
+++ b/streams-schemas/src/main/jsonschema/verbs/flag-as-inappropriate.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/flag-as-inappropriate.json#",
     "type": "object",
     "title": "Flag-As-Inappropriate",
     "description": "Indicates that the actor has flagged the object as being inappropriate for some reason. When using this verb, the context property can be used to provide additional detail about why the object has been flagged.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/follow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/follow.json b/streams-schemas/src/main/jsonschema/verbs/follow.json
index 8f50b89..2a922f9 100644
--- a/streams-schemas/src/main/jsonschema/verbs/follow.json
+++ b/streams-schemas/src/main/jsonschema/verbs/follow.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/follow.json#",
     "type": "object",
     "title": "Follow",
     "description": "Indicates that the actor began following the activity of the object. In most cases, the objectType will be a \"person\", but it can potentially be of any type that can sensibly generate activity. Processors MAY ignore (silently drop) successive identical \"follow\" activities.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/give.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/give.json b/streams-schemas/src/main/jsonschema/verbs/give.json
index a9b6e74..952fa59 100644
--- a/streams-schemas/src/main/jsonschema/verbs/give.json
+++ b/streams-schemas/src/main/jsonschema/verbs/give.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/give.json#",
     "type": "object",
     "title": "Give",
     "description": "Indicates that the actor is giving an object to the target. Examples include one person giving a badge object to another person. The object identifies the object being given. The target identifies the receiver.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/host.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/host.json b/streams-schemas/src/main/jsonschema/verbs/host.json
index 8c59cd0..9661abe 100644
--- a/streams-schemas/src/main/jsonschema/verbs/host.json
+++ b/streams-schemas/src/main/jsonschema/verbs/host.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/host.json#",
     "type": "object",
     "title": "Host",
     "description": "Indicates that the actor is hosting the object. As in hosting an event, or hosting a service.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/ignore.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/ignore.json b/streams-schemas/src/main/jsonschema/verbs/ignore.json
index 442de31..ae0ea6a 100644
--- a/streams-schemas/src/main/jsonschema/verbs/ignore.json
+++ b/streams-schemas/src/main/jsonschema/verbs/ignore.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/ignore.json#",
     "type": "object",
     "title": "Ignore",
     "description": "Indicates that the actor has ignored the object. For instance, this verb may be used when an actor has ignored a friend request, in which case the object may be the request-friend activity.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/insert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/insert.json b/streams-schemas/src/main/jsonschema/verbs/insert.json
index 99db2ec..8dcd756 100644
--- a/streams-schemas/src/main/jsonschema/verbs/insert.json
+++ b/streams-schemas/src/main/jsonschema/verbs/insert.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/insert.json#",
     "type": "object",
     "title": "Insert",
     "description": "Indicates that the actor has inserted the object into the target.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/install.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/install.json b/streams-schemas/src/main/jsonschema/verbs/install.json
index e3d6e0c..6b270fa 100644
--- a/streams-schemas/src/main/jsonschema/verbs/install.json
+++ b/streams-schemas/src/main/jsonschema/verbs/install.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/install.json#",
     "type": "object",
     "title": "Install",
     "description": "Indicates that the actor has installed the object, as in installing an application.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/interact.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/interact.json b/streams-schemas/src/main/jsonschema/verbs/interact.json
index d589ce4..5098ee3 100644
--- a/streams-schemas/src/main/jsonschema/verbs/interact.json
+++ b/streams-schemas/src/main/jsonschema/verbs/interact.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/interact.json#",
     "type": "object",
     "title": "Interact",
     "description": "Indicates that the actor has interacted with the object. For instance, when one person interacts with another.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/invite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/invite.json b/streams-schemas/src/main/jsonschema/verbs/invite.json
index 34a8691..625a170 100644
--- a/streams-schemas/src/main/jsonschema/verbs/invite.json
+++ b/streams-schemas/src/main/jsonschema/verbs/invite.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/invite.json#",
     "type": "object",
     "title": "Invite",
     "description": "Indicates that the actor has invited the object, typically a person object, to join or participate in the object described by the target. The target could, for instance, be an event, group or a service.",



[11/53] [abbrv] incubator-streams git commit: start of implementation for STREAMS-398

Posted by mf...@apache.org.
start of implementation for STREAMS-398


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/50f67bf8
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/50f67bf8
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/50f67bf8

Branch: refs/heads/invalid_headers
Commit: 50f67bf8d97a61bb325f8524472f5c20e86287d0
Parents: 0e7fbcb
Author: Steve Blackmon (@steveblackmon) <sb...@apache.org>
Authored: Tue Dec 29 17:19:15 2015 -0600
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Jun 1 12:49:27 2016 -0500

----------------------------------------------------------------------
 streams-plugins/pom.xml                         |  56 ++++
 streams-plugins/streams-plugin-hive/pom.xml     | 232 +++++++++++++++
 .../apache/streams/plugins/StreamsPojoHive.java | 242 +++++++++++++++
 .../streams/plugins/StreamsPojoHiveMojo.java    |  71 +++++
 .../plugins/test/StreamsPojoHiveTest.java       |  55 ++++
 .../src/test/resources/Tweet.hql                | 297 +++++++++++++++++++
 .../test/resources/streams-plugin-hive/pom.xml  |  42 +++
 7 files changed, 995 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/50f67bf8/streams-plugins/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/pom.xml b/streams-plugins/pom.xml
new file mode 100644
index 0000000..2306aab
--- /dev/null
+++ b/streams-plugins/pom.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <artifactId>streams-project</artifactId>
+        <groupId>org.apache.streams</groupId>
+        <version>0.3-incubating-SNAPSHOT</version>
+        <relativePath>../pom.xml</relativePath>
+    </parent>
+
+    <artifactId>streams-plugins</artifactId>
+
+    <packaging>pom</packaging>
+    <name>streams-plugins</name>
+
+    <properties>
+
+    </properties>
+
+    <modules>
+        <module>streams-plugin-scala</module>
+ 	</modules>
+
+    <dependencyManagement>
+        <dependencies>
+            <dependency>
+                <groupId>org.apache.streams</groupId>
+                <artifactId>streams-config</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.streams</groupId>
+                <artifactId>streams-pojo</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/50f67bf8/streams-plugins/streams-plugin-hive/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/pom.xml b/streams-plugins/streams-plugin-hive/pom.xml
new file mode 100644
index 0000000..cbc055b
--- /dev/null
+++ b/streams-plugins/streams-plugin-hive/pom.xml
@@ -0,0 +1,232 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.streams.plugins</groupId>
+    <artifactId>streams-plugin-hive</artifactId>
+    <version>0.3-incubating-SNAPSHOT</version>
+    <packaging>maven-plugin</packaging>
+
+    <parent>
+        <groupId>org.apache.streams</groupId>
+        <artifactId>streams-plugins</artifactId>
+        <version>0.3-incubating-SNAPSHOT</version>
+        <relativePath>..</relativePath>
+    </parent>
+
+    <properties>
+        <hive.version>1.14</hive.version>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-config</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-core</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.jsonschema2pojo</groupId>
+            <artifactId>jsonschema2pojo-core</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-pojo</artifactId>
+            <version>${project.version}</version>
+            <scope>test</scope>
+            <type>test-jar</type>
+        </dependency>
+        <dependency>
+            <groupId>org.reflections</groupId>
+            <artifactId>reflections</artifactId>
+            <version>0.9.9</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-aether-provider</artifactId>
+            <version>3.3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-artifact</artifactId>
+            <version>3.3.3</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-compat</artifactId>
+            <version>3.3.3</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-core</artifactId>
+            <version>3.3.3</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.sonatype.aether</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-plugin-api</artifactId>
+            <version>3.3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-resources-plugin</artifactId>
+            <version>2.7</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.maven</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.codehaus.plexus</groupId>
+            <artifactId>plexus-utils</artifactId>
+            <version>3.0.15</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-plugin-plugin</artifactId>
+            <version>3.4</version>
+            <exclusions>
+                <exclusion>
+                    <artifactId>commons-logging</artifactId>
+                    <groupId>commons-logging</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-tools-api</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-annotations</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-tools-generators</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-testing</groupId>
+            <artifactId>maven-plugin-testing-harness</artifactId>
+            <version>3.3.0</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-lang</groupId>
+            <artifactId>commons-lang</artifactId>
+            <version>2.6</version>
+        </dependency>
+        <dependency>
+            <groupId>joda-time</groupId>
+            <artifactId>joda-time</artifactId>
+            <version>2.2</version>
+        </dependency>
+        <dependency>
+            <groupId>org.joda</groupId>
+            <artifactId>joda-convert</artifactId>
+            <version>1.8.1</version>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <sourceDirectory>src/main/java</sourceDirectory>
+        <testSourceDirectory>src/test/java</testSourceDirectory>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+            </resource>
+        </resources>
+        <testResources>
+            <testResource>
+                <directory>src/test/resources</directory>
+            </testResource>
+        </testResources>
+        <plugins>
+            <plugin>
+                <artifactId>maven-plugin-plugin</artifactId>
+                <version>3.4</version>
+                <configuration>
+                    <skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>mojo-descriptor</id>
+                        <phase>process-classes</phase>
+                        <goals>
+                            <goal>descriptor</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.reflections</groupId>
+                <artifactId>reflections-maven</artifactId>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>reflections</goal>
+                        </goals>
+                        <phase>process-classes</phase>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>2.4</version>
+                <executions>
+                    <execution>
+                        <id>streams-pojo-resource-dependencies</id>
+                        <phase>process-test-resources</phase>
+                        <goals>
+                            <goal>unpack-dependencies</goal>
+                        </goals>
+                        <configuration>
+                            <includeArtifactIds>streams-pojo</includeArtifactIds>
+                            <includes>org/apache/streams/pojo/json/**</includes>
+                            <outputDirectory>${project.build.directory}/test-classes</outputDirectory>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/50f67bf8/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHive.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHive.java b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHive.java
new file mode 100644
index 0000000..f8a00f7
--- /dev/null
+++ b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHive.java
@@ -0,0 +1,242 @@
+package org.apache.streams.plugins;
+
+import com.google.common.base.Strings;
+import com.google.common.collect.Iterables;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
+import com.google.common.collect.Sets;
+import org.apache.streams.data.DocumentClassifier;
+import org.reflections.ReflectionUtils;
+import org.reflections.Reflections;
+import org.reflections.scanners.SubTypesScanner;
+import org.reflections.scanners.TypeAnnotationsScanner;
+import org.reflections.util.ClasspathHelper;
+import org.reflections.util.ConfigurationBuilder;
+import org.reflections.ReflectionUtils.*;
+import org.reflections.util.FilterBuilder;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.annotation.Generated;
+import java.io.File;
+import java.io.IOException;
+import java.io.Serializable;
+import java.lang.reflect.Field;
+import java.nio.file.Files;
+import java.nio.file.OpenOption;
+import java.nio.file.Paths;
+import java.nio.file.StandardOpenOption;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeSet;
+import java.util.concurrent.ConcurrentHashMap;
+
+/**
+ * Created by sblackmon on 11/18/15.
+ */
+public class StreamsPojoHive implements Runnable {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoHive.class);
+
+    private final static String LS = System.getProperty("line.separator");
+
+    private StreamsPojoHiveMojo mojo;
+
+    String outDir = "./target/generated-sources/hive";
+    String packages[] = {"org.apache.streams.pojo.json"};
+
+    private final Reflections reflections = new Reflections(
+            new ConfigurationBuilder()
+                    .forPackages(packages)
+                    .filterInputsBy(new FilterBuilder().includePackage(packages))
+                    .setScanners(
+                            new SubTypesScanner(),
+                            new TypeAnnotationsScanner()));
+
+    public void main(String[] args) {
+        StreamsPojoHive streamsPojoScala = new StreamsPojoHive();
+        Thread thread = new Thread(streamsPojoScala);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+        return;
+    }
+
+    public StreamsPojoHive(StreamsPojoHiveMojo mojo) {
+        this.mojo = mojo;
+        if (    mojo != null &&
+                mojo.getTarget() != null &&
+                !Strings.isNullOrEmpty(mojo.getTarget().getAbsolutePath())
+            )
+            outDir = mojo.getTarget().getAbsolutePath();
+
+        if (    mojo != null &&
+                mojo.getPackages() != null &&
+                mojo.getPackages().length > 0
+            )
+            packages = mojo.getPackages();
+    }
+
+    public StreamsPojoHive() {
+    }
+
+    public void run() {
+
+        List<Class<?>> serializableClasses = detectSerializableClasses();
+
+        LOGGER.info("Detected {} serialiables:", serializableClasses.size());
+        for( Class clazz : serializableClasses )
+            LOGGER.debug(clazz.toString());
+
+        List<Class<?>> pojoClasses = detectPojoClasses(serializableClasses);
+
+        LOGGER.info("Detected {} pojos:", pojoClasses.size());
+        for( Class clazz : pojoClasses ) {
+            LOGGER.debug(clazz.toString());
+
+        }
+
+
+        for( Class clazz : pojoClasses ) {
+            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".hive").replace(".","/")+"/";
+            String pojoName = clazz.getSimpleName()+".hql";
+            String pojoHive = renderPojo(clazz);
+            writeFile(outDir+"/"+pojoPath+pojoName, pojoHive);
+        }
+
+    }
+
+    private void writeFile(String pojoFile, String pojoHive) {
+        try {
+            File path = new File(pojoFile);
+            File dir = path.getParentFile();
+            if( !dir.exists() )
+                dir.mkdirs();
+            Files.write(Paths.get(pojoFile), pojoHive.getBytes(), StandardOpenOption.CREATE_NEW);
+        } catch (Exception e) {
+            LOGGER.error("Write Exception: {}", e);
+        }
+    }
+
+    public List<Class<?>> detectSerializableClasses() {
+
+        Set<Class<? extends Serializable>> classes =
+                reflections.getSubTypesOf(java.io.Serializable.class);
+
+        List<Class<?>> result = Lists.newArrayList();
+
+        for( Class clazz : classes ) {
+            result.add(clazz);
+        }
+
+        return result;
+    }
+
+    public List<Class<?>> detectPojoClasses(List<Class<?>> classes) {
+
+        List<Class<?>> result = Lists.newArrayList();
+
+        for( Class clazz : classes ) {
+            try {
+                clazz.newInstance().toString();
+            } catch( Exception e) {}
+            // super-halfass way to know if this is a jsonschema2pojo
+            if( clazz.getAnnotations().length >= 1 )
+                result.add(clazz);
+        }
+
+        return result;
+    }
+
+    public String renderPojo(Class<?> pojoClass) {
+        StringBuffer stringBuffer = new StringBuffer();
+        stringBuffer.append("CREATE TABLE ");
+        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".hive"));
+        stringBuffer.append(LS);
+        stringBuffer.append("(");
+        stringBuffer.append(LS);
+
+        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
+        appendFields(stringBuffer, fields, "", ",");
+
+        stringBuffer.append(")");
+
+        return stringBuffer.toString();
+    }
+
+    private void appendFields(StringBuffer stringBuffer, Set<Field> fields, String varDef, String fieldDelimiter) {
+        if( fields.size() > 0 ) {
+            stringBuffer.append(LS);
+            Map<String,Field> fieldsToAppend = uniqueFields(fields);
+            for( Iterator<Field> iter = fieldsToAppend.values().iterator(); iter.hasNext(); ) {
+                Field field = iter.next();
+                stringBuffer.append(name(field));
+                stringBuffer.append(": ");
+                stringBuffer.append(type(field));
+                if( iter.hasNext()) stringBuffer.append(fieldDelimiter);
+                stringBuffer.append(LS);
+            }
+        } else {
+            stringBuffer.append(LS);
+        }
+    }
+
+    private String value(Field field) {
+        if( field.getName().equals("verb")) {
+            return "\"post\"";
+        } else if( field.getName().equals("objectType")) {
+            return "\"application\"";
+        } else return null;
+    }
+
+    private String type(Field field) {
+        if( field.getType().equals(java.lang.String.class)) {
+            return "STRING";
+        } else if( field.getType().equals(java.lang.Integer.class)) {
+            return "INT";
+        } else if( field.getType().equals(org.joda.time.DateTime.class)) {
+            return "DATE";
+        }else if( field.getType().equals(java.util.Map.class)) {
+            return "MAP";
+        } else if( field.getType().equals(java.util.List.class)) {
+            return "ARRAY";
+        }
+        return field.getType().getCanonicalName().replace(".pojo.json", ".scala");
+    }
+
+    private Map<String,Field> uniqueFields(Set<Field> fieldset) {
+        Map<String,Field> fields = Maps.newTreeMap();
+        Field item = null;
+        for( Iterator<Field> it = fieldset.iterator(); it.hasNext(); item = it.next() ) {
+            if( item != null && item.getName() != null ) {
+                Field added = fields.put(item.getName(), item);
+            }
+            // ensure right class will get used
+        }
+        return fields;
+    }
+
+    private String name(Field field) {
+        if( field.getName().equals("object"))
+            return "obj";
+        else return field.getName();
+    }
+
+    private boolean override(Field field) {
+        try {
+            if( field.getDeclaringClass().getSuperclass().getField(field.getName()) != null )
+                return true;
+            else return false;
+        } catch( Exception e ) {
+            return false;
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/50f67bf8/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHiveMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHiveMojo.java b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHiveMojo.java
new file mode 100644
index 0000000..a0af5ac
--- /dev/null
+++ b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHiveMojo.java
@@ -0,0 +1,71 @@
+package org.apache.streams.plugins;
+
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.descriptor.PluginDescriptor;
+import org.apache.maven.plugins.annotations.Component;
+import org.apache.maven.plugins.annotations.Execute;
+import org.apache.maven.plugins.annotations.LifecyclePhase;
+import org.apache.maven.plugins.annotations.Mojo;
+import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.settings.Settings;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+
+@Mojo(  name = "hive",
+        defaultPhase = LifecyclePhase.GENERATE_SOURCES
+)
+@Execute(   goal = "hive",
+            phase = LifecyclePhase.GENERATE_SOURCES
+)
+public class StreamsPojoHiveMojo extends AbstractMojo {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoHiveMojo.class);
+
+    @Component
+    private MavenProject project;
+
+//    @Component
+//    private Settings settings;
+//
+//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
+//    protected ArtifactRepository localRepository;
+//
+//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
+//    private PluginDescriptor plugin;
+//
+    @Parameter( defaultValue = "${project.basedir}", readonly = true )
+    private File basedir;
+
+    @Parameter(defaultValue = "${project.build.directory}", readonly = true)
+    private File target;
+
+    @Parameter(defaultValue = "org.apache.streams.pojo.json", readonly = true)
+    private String[] packages;
+
+    public void execute() throws MojoExecutionException {
+        StreamsPojoHive streamsPojoScala = new StreamsPojoHive(this);
+        Thread thread = new Thread(streamsPojoScala);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+        return;
+    }
+
+    public File getTarget() {
+        return target;
+    }
+
+    public String[] getPackages() {
+        return packages;
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/50f67bf8/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsPojoHiveTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsPojoHiveTest.java b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsPojoHiveTest.java
new file mode 100644
index 0000000..e5a7abd
--- /dev/null
+++ b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsPojoHiveTest.java
@@ -0,0 +1,55 @@
+package org.apache.streams.plugins.test;
+
+import org.apache.streams.plugins.StreamsPojoHive;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.io.FileFilter;
+
+/**
+ * Test that Activity beans are compatible with the example activities in the spec.
+ */
+public class StreamsPojoHiveTest {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoHiveTest.class);
+
+    /**
+     * Tests that all example activities can be loaded into Activity beans
+     *
+     * @throws Exception
+     */
+    @Test
+    public void testStreamsPojoHive() throws Exception {
+        StreamsPojoHive streamsPojoHive = new StreamsPojoHive();
+        streamsPojoHive.main(new String[0]);
+
+        File testOutput = new File( "./target/generated-sources/hive/org/apache/streams/hive");
+        FileFilter hqlFilter = new FileFilter() {
+            @Override
+            public boolean accept(File pathname) {
+                if( pathname.getName().endsWith(".hql") )
+                    return true;
+                return false;
+            }
+        };
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+        assert( testOutput.listFiles(hqlFilter).length == 11 );
+//        assert( new File(testOutput + "/traits").exists() == true );
+//        assert( new File(testOutput + "/traits").isDirectory() == true );
+//        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
+//        assert( new File(testOutput + "/objectTypes").exists() == true );
+//        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
+//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
+//        assert( new File(testOutput + "/verbs").exists() == true );
+//        assert( new File(testOutput + "/verbs").isDirectory() == true );
+//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/50f67bf8/streams-plugins/streams-plugin-hive/src/test/resources/Tweet.hql
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/resources/Tweet.hql b/streams-plugins/streams-plugin-hive/src/test/resources/Tweet.hql
new file mode 100644
index 0000000..dfd3a72
--- /dev/null
+++ b/streams-plugins/streams-plugin-hive/src/test/resources/Tweet.hql
@@ -0,0 +1,297 @@
+/*
+root
+ |-- contributors: string (nullable = true)
+ |-- coordinates: string (nullable = true)
+ |-- created_at: string (nullable = true)
+ |-- entities: struct (nullable = true)
+ |    |-- hashtags: array (nullable = true)
+ |    |    |-- element: struct (containsNull = true)
+ |    |    |    |-- indices: array (nullable = true)
+ |    |    |    |    |-- element: long (containsNull = true)
+ |    |    |    |-- text: string (nullable = true)
+ |    |-- symbols: array (nullable = true)
+ |    |    |-- element: string (containsNull = true)
+ |    |-- urls: array (nullable = true)
+ |    |    |-- element: struct (containsNull = true)
+ |    |    |    |-- display_url: string (nullable = true)
+ |    |    |    |-- expanded_url: string (nullable = true)
+ |    |    |    |-- indices: array (nullable = true)
+ |    |    |    |    |-- element: long (containsNull = true)
+ |    |    |    |-- url: string (nullable = true)
+ |    |-- user_mentions: array (nullable = true)
+ |    |    |-- element: struct (containsNull = true)
+ |    |    |    |-- id: long (nullable = true)
+ |    |    |    |-- id_str: string (nullable = true)
+ |    |    |    |-- indices: array (nullable = true)
+ |    |    |    |    |-- element: long (containsNull = true)
+ |    |    |    |-- name: string (nullable = true)
+ |    |    |    |-- screen_name: string (nullable = true)
+ |-- favorite_count: long (nullable = true)
+ |-- favorited: boolean (nullable = true)
+ |-- geo: string (nullable = true)
+ |-- id: long (nullable = true)
+ |-- id_str: string (nullable = true)
+ |-- in_reply_to_screen_name: string (nullable = true)
+ |-- in_reply_to_status_id: long (nullable = true)
+ |-- in_reply_to_status_id_str: string (nullable = true)
+ |-- in_reply_to_user_id: long (nullable = true)
+ |-- in_reply_to_user_id_str: string (nullable = true)
+ |-- lang: string (nullable = true)
+ |-- place: struct (nullable = true)
+ |    |-- attributes: struct (nullable = true)
+ |    |-- bounding_box: struct (nullable = true)
+ |    |    |-- coordinates: array (nullable = true)
+ |    |    |    |-- element: array (containsNull = true)
+ |    |    |    |    |-- element: array (containsNull = true)
+ |    |    |    |    |    |-- element: double (containsNull = true)
+ |    |    |-- type: string (nullable = true)
+ |    |-- contained_within: array (nullable = true)
+ |    |    |-- element: string (containsNull = true)
+ |    |-- country: string (nullable = true)
+ |    |-- country_code: string (nullable = true)
+ |    |-- full_name: string (nullable = true)
+ |    |-- id: string (nullable = true)
+ |    |-- name: string (nullable = true)
+ |    |-- place_type: string (nullable = true)
+ |    |-- url: string (nullable = true)
+ |-- possibly_sensitive: boolean (nullable = true)
+ |-- retweet_count: long (nullable = true)
+ |-- retweeted: boolean (nullable = true)
+ |-- retweeted_status: struct (nullable = true)
+ |    |-- contributors: string (nullable = true)
+ |    |-- coordinates: string (nullable = true)
+ |    |-- created_at: string (nullable = true)
+ |    |-- entities: struct (nullable = true)
+ |    |    |-- hashtags: array (nullable = true)
+ |    |    |    |-- element: struct (containsNull = true)
+ |    |    |    |    |-- indices: array (nullable = true)
+ |    |    |    |    |    |-- element: long (containsNull = true)
+ |    |    |    |    |-- text: string (nullable = true)
+ |    |    |-- symbols: array (nullable = true)
+ |    |    |    |-- element: string (containsNull = true)
+ |    |    |-- urls: array (nullable = true)
+ |    |    |    |-- element: struct (containsNull = true)
+ |    |    |    |    |-- display_url: string (nullable = true)
+ |    |    |    |    |-- expanded_url: string (nullable = true)
+ |    |    |    |    |-- indices: array (nullable = true)
+ |    |    |    |    |    |-- element: long (containsNull = true)
+ |    |    |    |    |-- url: string (nullable = true)
+ |    |    |-- user_mentions: array (nullable = true)
+ |    |    |    |-- element: struct (containsNull = true)
+ |    |    |    |    |-- id: long (nullable = true)
+ |    |    |    |    |-- id_str: string (nullable = true)
+ |    |    |    |    |-- indices: array (nullable = true)
+ |    |    |    |    |    |-- element: long (containsNull = true)
+ |    |    |    |    |-- name: string (nullable = true)
+ |    |    |    |    |-- screen_name: string (nullable = true)
+ |    |-- favorite_count: long (nullable = true)
+ |    |-- favorited: boolean (nullable = true)
+ |    |-- geo: string (nullable = true)
+ |    |-- id: long (nullable = true)
+ |    |-- id_str: string (nullable = true)
+ |    |-- in_reply_to_screen_name: string (nullable = true)
+ |    |-- in_reply_to_status_id: string (nullable = true)
+ |    |-- in_reply_to_status_id_str: string (nullable = true)
+ |    |-- in_reply_to_user_id: string (nullable = true)
+ |    |-- in_reply_to_user_id_str: string (nullable = true)
+ |    |-- lang: string (nullable = true)
+ |    |-- place: struct (nullable = true)
+ |    |    |-- attributes: struct (nullable = true)
+ |    |    |-- bounding_box: struct (nullable = true)
+ |    |    |    |-- coordinates: array (nullable = true)
+ |    |    |    |    |-- element: array (containsNull = true)
+ |    |    |    |    |    |-- element: array (containsNull = true)
+ |    |    |    |    |    |    |-- element: double (containsNull = true)
+ |    |    |    |-- type: string (nullable = true)
+ |    |    |-- contained_within: array (nullable = true)
+ |    |    |    |-- element: string (containsNull = true)
+ |    |    |-- country: string (nullable = true)
+ |    |    |-- country_code: string (nullable = true)
+ |    |    |-- full_name: string (nullable = true)
+ |    |    |-- id: string (nullable = true)
+ |    |    |-- name: string (nullable = true)
+ |    |    |-- place_type: string (nullable = true)
+ |    |    |-- url: string (nullable = true)
+ |    |-- possibly_sensitive: boolean (nullable = true)
+ |    |-- retweet_count: long (nullable = true)
+ |    |-- retweeted: boolean (nullable = true)
+ |    |-- source: string (nullable = true)
+ |    |-- text: string (nullable = true)
+ |    |-- truncated: boolean (nullable = true)
+ |    |-- user: struct (nullable = true)
+ |    |    |-- contributors_enabled: boolean (nullable = true)
+ |    |    |-- created_at: string (nullable = true)
+ |    |    |-- default_profile: boolean (nullable = true)
+ |    |    |-- default_profile_image: boolean (nullable = true)
+ |    |    |-- description: string (nullable = true)
+ |    |    |-- entities: struct (nullable = true)
+ |    |    |    |-- description: struct (nullable = true)
+ |    |    |    |    |-- urls: array (nullable = true)
+ |    |    |    |    |    |-- element: struct (containsNull = true)
+ |    |    |    |    |    |    |-- display_url: string (nullable = true)
+ |    |    |    |    |    |    |-- expanded_url: string (nullable = true)
+ |    |    |    |    |    |    |-- indices: array (nullable = true)
+ |    |    |    |    |    |    |    |-- element: long (containsNull = true)
+ |    |    |    |    |    |    |-- url: string (nullable = true)
+ |    |    |    |-- url: struct (nullable = true)
+ |    |    |    |    |-- urls: array (nullable = true)
+ |    |    |    |    |    |-- element: struct (containsNull = true)
+ |    |    |    |    |    |    |-- display_url: string (nullable = true)
+ |    |    |    |    |    |    |-- expanded_url: string (nullable = true)
+ |    |    |    |    |    |    |-- indices: array (nullable = true)
+ |    |    |    |    |    |    |    |-- element: long (containsNull = true)
+ |    |    |    |    |    |    |-- url: string (nullable = true)
+ |    |    |-- favourites_count: long (nullable = true)
+ |    |    |-- follow_request_sent: boolean (nullable = true)
+ |    |    |-- followers_count: long (nullable = true)
+ |    |    |-- following: boolean (nullable = true)
+ |    |    |-- friends_count: long (nullable = true)
+ |    |    |-- geo_enabled: boolean (nullable = true)
+ |    |    |-- id: long (nullable = true)
+ |    |    |-- id_str: string (nullable = true)
+ |    |    |-- is_translation_enabled: boolean (nullable = true)
+ |    |    |-- is_translator: boolean (nullable = true)
+ |    |    |-- lang: string (nullable = true)
+ |    |    |-- listed_count: long (nullable = true)
+ |    |    |-- location: string (nullable = true)
+ |    |    |-- name: string (nullable = true)
+ |    |    |-- notifications: boolean (nullable = true)
+ |    |    |-- profile_background_color: string (nullable = true)
+ |    |    |-- profile_background_image_url: string (nullable = true)
+ |    |    |-- profile_background_image_url_https: string (nullable = true)
+ |    |    |-- profile_background_tile: boolean (nullable = true)
+ |    |    |-- profile_banner_url: string (nullable = true)
+ |    |    |-- profile_image_url: string (nullable = true)
+ |    |    |-- profile_image_url_https: string (nullable = true)
+ |    |    |-- profile_link_color: string (nullable = true)
+ |    |    |-- profile_sidebar_border_color: string (nullable = true)
+ |    |    |-- profile_sidebar_fill_color: string (nullable = true)
+ |    |    |-- profile_text_color: string (nullable = true)
+ |    |    |-- profile_use_background_image: boolean (nullable = true)
+ |    |    |-- protected: boolean (nullable = true)
+ |    |    |-- screen_name: string (nullable = true)
+ |    |    |-- statuses_count: long (nullable = true)
+ |    |    |-- time_zone: string (nullable = true)
+ |    |    |-- url: string (nullable = true)
+ |    |    |-- utc_offset: long (nullable = true)
+ |    |    |-- verified: boolean (nullable = true)
+ |-- source: string (nullable = true)
+ |-- text: string (nullable = true)
+ |-- truncated: boolean (nullable = true)
+ |-- user: struct (nullable = true)
+ |    |-- contributors_enabled: boolean (nullable = true)
+ |    |-- created_at: string (nullable = true)
+ |    |-- default_profile: boolean (nullable = true)
+ |    |-- default_profile_image: boolean (nullable = true)
+ |    |-- description: string (nullable = true)
+ |    |-- entities: struct (nullable = true)
+ |    |    |-- description: struct (nullable = true)
+ |    |    |    |-- urls: array (nullable = true)
+ |    |    |    |    |-- element: string (containsNull = true)
+ |    |    |-- url: struct (nullable = true)
+ |    |    |    |-- urls: array (nullable = true)
+ |    |    |    |    |-- element: struct (containsNull = true)
+ |    |    |    |    |    |-- display_url: string (nullable = true)
+ |    |    |    |    |    |-- expanded_url: string (nullable = true)
+ |    |    |    |    |    |-- indices: array (nullable = true)
+ |    |    |    |    |    |    |-- element: long (containsNull = true)
+ |    |    |    |    |    |-- url: string (nullable = true)
+ |    |-- favourites_count: long (nullable = true)
+ |    |-- follow_request_sent: boolean (nullable = true)
+ |    |-- followers_count: long (nullable = true)
+ |    |-- following: boolean (nullable = true)
+ |    |-- friends_count: long (nullable = true)
+ |    |-- geo_enabled: boolean (nullable = true)
+ |    |-- id: long (nullable = true)
+ |    |-- id_str: string (nullable = true)
+ |    |-- is_translation_enabled: boolean (nullable = true)
+ |    |-- is_translator: boolean (nullable = true)
+ |    |-- lang: string (nullable = true)
+ |    |-- listed_count: long (nullable = true)
+ |    |-- location: string (nullable = true)
+ |    |-- name: string (nullable = true)
+ |    |-- notifications: boolean (nullable = true)
+ |    |-- profile_background_color: string (nullable = true)
+ |    |-- profile_background_image_url: string (nullable = true)
+ |    |-- profile_background_image_url_https: string (nullable = true)
+ |    |-- profile_background_tile: boolean (nullable = true)
+ |    |-- profile_banner_url: string (nullable = true)
+ |    |-- profile_image_url: string (nullable = true)
+ |    |-- profile_image_url_https: string (nullable = true)
+ |    |-- profile_link_color: string (nullable = true)
+ |    |-- profile_sidebar_border_color: string (nullable = true)
+ |    |-- profile_sidebar_fill_color: string (nullable = true)
+ |    |-- profile_text_color: string (nullable = true)
+ |    |-- profile_use_background_image: boolean (nullable = true)
+ |    |-- protected: boolean (nullable = true)
+ |    |-- screen_name: string (nullable = true)
+ |    |-- statuses_count: long (nullable = true)
+ |    |-- time_zone: string (nullable = true)
+ |    |-- url: string (nullable = true)
+ |    |-- utc_offset: long (nullable = true)
+ |    |-- verified: boolean (nullable = true)
+*/
+create table tweet (
+    created_at string,
+    entities struct
+    <
+        hashtags: array
+        <
+            struct
+            <
+                text: string
+            >
+        >,
+        urls: array
+        <
+            struct
+            <
+                expanded_url: string
+            >
+        >,
+        user_mentions: array
+        <
+            struct
+            <
+                id_str: string
+            >
+        >
+    >,
+    in_reply_to_user_id_str: string,
+    user: struct
+    <
+        id_str: string
+    >,
+    retweeted_status struct
+    <
+        entities struct
+        <
+            hashtags: array
+            <
+                struct
+                <
+                    text: string
+                >
+            >,
+            urls: array
+            <
+                struct
+                <
+                    expanded_url: string
+                >
+            >,
+            user_mentions: array
+            <
+                struct
+                <
+                    id_str: string
+                >
+            >
+        >,
+        in_reply_to_user_id_str: string,
+        user: struct
+        <
+            id_str: string
+        >
+    >
+)
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/50f67bf8/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml b/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
new file mode 100644
index 0000000..b1de7b8
--- /dev/null
+++ b/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
@@ -0,0 +1,42 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>org.apache.streams.plugins</groupId>
+    <artifactId>streams-plugin-hive-test</artifactId>
+    <version>0.3-incubating-SNAPSHOT</version>
+    <packaging>jar</packaging>
+    <name>Test StreamsPojoHiveMojo</name>
+
+    <dependencies>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.streams.plugins</groupId>
+                <artifactId>streams-plugin-hive</artifactId>
+                <version>0.3-incubating-SNAPSHOT</version>
+                <configuration>
+                    <packages>
+                        <package>org.apache.streams.pojo.json</package>
+                    </packages>
+                    <target>target/test-classes/streams-hive-plugin/</target>
+                </configuration>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>hive</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
\ No newline at end of file



[23/53] [abbrv] incubator-streams git commit: refactoring, testing, documentation, CLI modes

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/approve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/approve.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/approve.json
new file mode 100644
index 0000000..247871c
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/approve.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/approve.json#",
+    "type": "object",
+    "title": "Approve",
+    "description": "Indicates that the actor has approved the object. For instance, a manager might approve a travel request.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "approve"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} approved {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/archive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/archive.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/archive.json
new file mode 100644
index 0000000..7ee2226
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/archive.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/archive.json#",
+    "type": "object",
+    "title": "Archive",
+    "description": "Indicates that the actor has archived the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "archive"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} archived {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/assign.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/assign.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/assign.json
new file mode 100644
index 0000000..1d43041
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/assign.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/assign.json#",
+    "type": "object",
+    "title": "Assign",
+    "description": "Indicates that the actor has assigned the object to the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "assign"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} assigned {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/at.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/at.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/at.json
new file mode 100644
index 0000000..34497e2
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/at.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/at.json#",
+    "type": "object",
+    "title": "At",
+    "description": "Indicates that the actor is currently located at the object. For instance, a person being at a specific physical location.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "assign"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} assigned {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/attach.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/attach.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/attach.json
new file mode 100644
index 0000000..76c5a4f
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/attach.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/attach.json#",
+    "type": "object",
+    "title": "Attach",
+    "description": "Indicates that the actor has attached the object to the target.For instance, a person attaching a file to a wiki page or an email.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "attach"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} attached {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/attend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/attend.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/attend.json
new file mode 100644
index 0000000..6b02d07
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/attend.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/attend.json#",
+    "type": "object",
+    "title": "Attend",
+    "description": "Indicates that the actor has attended the object. For instance, a person attending a meeting.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "attend"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} attended {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/author.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/author.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/author.json
new file mode 100644
index 0000000..4898139
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/author.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/author.json#",
+    "type": "object",
+    "title": "Author",
+    "description": "Indicates that the actor has authored the object. Note that this is a more specific form of the verb \"create\".",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "author"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} authored {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/authorize.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/authorize.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/authorize.json
new file mode 100644
index 0000000..661e32c
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/authorize.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/authorize.json#",
+    "type": "object",
+    "title": "Authorize",
+    "description": "Indicates that the actor has authorized the object. If a target is specified, it means that the authorization is specifically in regards to the target. For instance, a service can authorize a person to access a given application; in which case the actor is the service, the object is the person, and the target is the application. In contrast, a person can authorize a request; in which case the actor is the person and the object is the request and there might be no explicit target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "authorize"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} authorized {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/borrow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/borrow.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/borrow.json
new file mode 100644
index 0000000..74eee36
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/borrow.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/borrow.json#",
+    "type": "object",
+    "title": "Borrow",
+    "description": "Indicates that the actor has borrowed the object. If a target is specified, it identifies the entity from which the object was borrowed. For instance, if a person borrows a book from a library, the person is the actor, the book is the object and the library is the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "borrow"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} borrow {object.displayName} from {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/build.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/build.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/build.json
new file mode 100644
index 0000000..d8e7d25
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/build.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/build.json#",
+    "type": "object",
+    "title": "Build",
+    "description": "Indicates that the actor has built the object. For example, if a person builds a model or compiles code.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "build"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} built {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/cancel.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/cancel.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/cancel.json
new file mode 100644
index 0000000..0d82c8e
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/cancel.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/cancel.json#",
+    "type": "object",
+    "title": "Cancel",
+    "description": "Indicates that the actor has canceled the object. For instance, canceling a calendar event.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "cancel"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} cancelled {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/checkin.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/checkin.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/checkin.json
new file mode 100644
index 0000000..88a9c86
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/checkin.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/checkin.json#",
+    "type": "object",
+    "title": "checkin",
+    "description": "Indicates that the actor has checked-in to the object. For instance, a person checking-in to a Place.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "checkin"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} checked in at {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/close.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/close.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/close.json
new file mode 100644
index 0000000..88a31b6
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/close.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/close.json#",
+    "type": "object",
+    "title": "Close",
+    "description": "Indicates that the actor has closed the object. For instance, the object could represent a ticket being tracked in an issue management system.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "close"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} closed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/complete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/complete.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/complete.json
new file mode 100644
index 0000000..ddffd0e
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/complete.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/complete.json#",
+    "type": "object",
+    "title": "Complete",
+    "description": "Indicates that the actor has completed the object",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "complete"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} completed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/confirm.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/confirm.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/confirm.json
new file mode 100644
index 0000000..5148c8c
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/confirm.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/confirm.json#",
+    "type": "object",
+    "title": "Confirm",
+    "description": "Indicates that the actor has confirmed or agrees with the object. For instance, a software developer might confirm an issue reported against a product.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "confirm"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} confirmed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/consume.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/consume.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/consume.json
new file mode 100644
index 0000000..661b40b
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/consume.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/consume.json#",
+    "type": "object",
+    "title": "Consume",
+    "description": "Indicates that the actor has consumed the object. The specific meaning is dependent largely on the object's type. For instance, an actor may \"consume\" an audio object, indicating that the actor has listened to it; or an actor may \"consume\" a book, indicating that the book has been read. As such, the \"consume\" verb is a more generic form of other more specific verbs such as \"read\" and \"play\".",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "consume"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} consumed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/create.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/create.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/create.json
new file mode 100644
index 0000000..c5ad298
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/create.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/create.json#",
+    "type": "object",
+    "title": "Create",
+    "description": "Indicates that the actor has created the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "create"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} created {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/delete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/delete.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/delete.json
new file mode 100644
index 0000000..544bf5d
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/delete.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/delete.json#",
+    "type": "object",
+    "title": "Delete",
+    "description": "Indicates that the actor has deleted the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "delete"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} deleted {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/deliver.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/deliver.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/deliver.json
new file mode 100644
index 0000000..4d3d2c1
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/deliver.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/deliver.json#",
+    "type": "object",
+    "title": "Deliver",
+    "description": "Indicates that the actor has delivered the object. For example, delivering a package.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "deliver"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} delivered {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/deny.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/deny.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/deny.json
new file mode 100644
index 0000000..f880ad3
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/deny.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/deny.json#",
+    "type": "object",
+    "title": "Deny",
+    "description": "Indicates that the actor has denied the object. For example, a manager may deny a travel request.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "deny"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} denied {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/disagree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/disagree.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/disagree.json
new file mode 100644
index 0000000..17f0c4c
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/disagree.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/disagree.json#",
+    "type": "object",
+    "title": "Disagree",
+    "description": "Indicates that the actor disagrees with the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "disagree"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} disagrees with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/dislike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/dislike.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/dislike.json
new file mode 100644
index 0000000..308d5eb
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/dislike.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/dislike.json#",
+    "type": "object",
+    "title": "Dislike",
+    "description": "Indicates that the actor dislikes the object. Note that the \"dislike\" verb is distinct from the \"unlike\" verb which assumes that the object had been previously \"liked\".",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "dislike"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} dislikes {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/experience.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/experience.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/experience.json
new file mode 100644
index 0000000..543ac2c
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/experience.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/experience.json#",
+    "type": "object",
+    "title": "Experience",
+    "description": "Indicates that the actor has experienced the object in some manner. Note that, depending on the specific object types used for both the actor and object, the meaning of this verb can overlap that of the \"consume\" and \"play\" verbs. For instance, a person might \"experience\" a movie; or \"play\" the movie; or \"consume\" the movie. The \"experience\" verb can be considered a more generic form of other more specific verbs as \"consume\", \"play\", \"watch\", \"listen\", and \"read\"",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "experience"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} experienced {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/favorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/favorite.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/favorite.json
new file mode 100644
index 0000000..17e2490
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/favorite.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/favorite.json#",
+    "type": "object",
+    "title": "Favorite",
+    "description": "Indicates that the actor marked the object as an item of special interest.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "favorite"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} marked {object.displayName} as a favorite"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/find.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/find.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/find.json
new file mode 100644
index 0000000..79ebbe8
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/find.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/find.json#",
+    "type": "object",
+    "title": "Find",
+    "description": "Indicates that the actor has found the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "find"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} found {object.displayName}."
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/flag-as-inappropriate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/flag-as-inappropriate.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/flag-as-inappropriate.json
new file mode 100644
index 0000000..f7b5785
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/flag-as-inappropriate.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/flag-as-inappropriate.json#",
+    "type": "object",
+    "title": "Flag-As-Inappropriate",
+    "description": "Indicates that the actor has flagged the object as being inappropriate for some reason. When using this verb, the context property can be used to provide additional detail about why the object has been flagged.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "flag-as-inappropriate"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} flagged {object.displayName} as inappropriate."
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/follow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/follow.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/follow.json
new file mode 100644
index 0000000..2a922f9
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/follow.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/follow.json#",
+    "type": "object",
+    "title": "Follow",
+    "description": "Indicates that the actor began following the activity of the object. In most cases, the objectType will be a \"person\", but it can potentially be of any type that can sensibly generate activity. Processors MAY ignore (silently drop) successive identical \"follow\" activities.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "follow"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} started following {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/give.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/give.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/give.json
new file mode 100644
index 0000000..952fa59
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/give.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/give.json#",
+    "type": "object",
+    "title": "Give",
+    "description": "Indicates that the actor is giving an object to the target. Examples include one person giving a badge object to another person. The object identifies the object being given. The target identifies the receiver.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "give"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} gave {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/host.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/host.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/host.json
new file mode 100644
index 0000000..9661abe
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/host.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/host.json#",
+    "type": "object",
+    "title": "Host",
+    "description": "Indicates that the actor is hosting the object. As in hosting an event, or hosting a service.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "host"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} is hosting {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/ignore.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/ignore.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/ignore.json
new file mode 100644
index 0000000..ae0ea6a
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/ignore.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/ignore.json#",
+    "type": "object",
+    "title": "Ignore",
+    "description": "Indicates that the actor has ignored the object. For instance, this verb may be used when an actor has ignored a friend request, in which case the object may be the request-friend activity.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "ignore"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} ignored {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/insert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/insert.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/insert.json
new file mode 100644
index 0000000..8dcd756
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/insert.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/insert.json#",
+    "type": "object",
+    "title": "Insert",
+    "description": "Indicates that the actor has inserted the object into the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "insert"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} inserted {object.displayName} into {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/install.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/install.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/install.json
new file mode 100644
index 0000000..6b270fa
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/install.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/install.json#",
+    "type": "object",
+    "title": "Install",
+    "description": "Indicates that the actor has installed the object, as in installing an application.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "install"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} installed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/interact.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/interact.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/interact.json
new file mode 100644
index 0000000..5098ee3
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/interact.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/interact.json#",
+    "type": "object",
+    "title": "Interact",
+    "description": "Indicates that the actor has interacted with the object. For instance, when one person interacts with another.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "interact"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} interacted with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/invite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/invite.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/invite.json
new file mode 100644
index 0000000..625a170
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/invite.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/invite.json#",
+    "type": "object",
+    "title": "Invite",
+    "description": "Indicates that the actor has invited the object, typically a person object, to join or participate in the object described by the target. The target could, for instance, be an event, group or a service.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "invite"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} invited {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/join.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/join.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/join.json
new file mode 100644
index 0000000..5276072
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/join.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/join.json#",
+    "type": "object",
+    "title": "Join",
+    "description": "Indicates that the actor has become a member of the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "join"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} joined {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/leave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/leave.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/leave.json
new file mode 100644
index 0000000..9995099
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/leave.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/leave.json#",
+    "type": "object",
+    "title": "Leave",
+    "description": "Indicates that the actor has left the object. For instance, a Person leaving a Group or checking-out of a Place.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "leave"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} left {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/like.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/like.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/like.json
new file mode 100644
index 0000000..d583305
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/like.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/like.json#",
+    "type": "object",
+    "title": "Like",
+    "description": "Indicates that the actor marked the object as an item of special interest.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "like"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} likes {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/listen.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/listen.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/listen.json
new file mode 100644
index 0000000..9982ac6
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/listen.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/listen.json#",
+    "type": "object",
+    "title": "Listen",
+    "description": "Indicates that the actor has listened to the object. This is typically only applicable for objects representing audio content, such as music, an audio-book, or a radio broadcast.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "listen"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} listened to {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/lose.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/lose.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/lose.json
new file mode 100644
index 0000000..1d959a4
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/lose.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/lose.json#",
+    "type": "object",
+    "title": "Lose",
+    "description": "Indicates that the actor has lost the object. For instance, if a person loses a game.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "lose"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} lost {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/make-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/make-friend.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/make-friend.json
new file mode 100644
index 0000000..141aba7
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/make-friend.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/make-friend.json#",
+    "type": "object",
+    "title": "Befriend",
+    "description": "Indicates the creation of a friendship that is reciprocated by the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "make-friend"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} is now friends with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/open.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/open.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/open.json
new file mode 100644
index 0000000..6c06529
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/open.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/open.json#",
+    "type": "object",
+    "title": "Open",
+    "description": "Indicates that the actor has opened the object. For instance, the object could represent a ticket being tracked in an issue management system.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "open"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} opened {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/play.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/play.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/play.json
new file mode 100644
index 0000000..115ac11
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/play.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/play.json#",
+    "type": "object",
+    "title": "Play",
+    "description": "Indicates that the actor spent some time enjoying the object. For example, if the object is a video this indicates that the subject watched all or part of the video.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "play"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} played {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/post.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/post.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/post.json
new file mode 100644
index 0000000..20a5feb
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/post.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/post.json#",
+    "type": "object",
+    "title": "Post",
+    "description": "To publish an object",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "post"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} posted {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/present.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/present.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/present.json
new file mode 100644
index 0000000..0cf7154
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/present.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/present.json#",
+    "type": "object",
+    "title": "Present",
+    "description": "Indicates that the actor has presented the object. For instance, when a person gives a presentation at a conference.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "present"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} presented {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/purchase.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/purchase.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/purchase.json
new file mode 100644
index 0000000..e867ad9
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/purchase.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/purchase.json#",
+    "type": "object",
+    "title": "Purchase",
+    "description": "Indicates that the actor has purchased the object. If a target is specified, in indicates the entity from which the object was purchased.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "purchase"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} purchased {object.displayName} from {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/qualify.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/qualify.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/qualify.json
new file mode 100644
index 0000000..8bc5248
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/qualify.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/qualify.json#",
+    "type": "object",
+    "title": "Qualify",
+    "description": "Indicates that the actor has qualified for the object. If a target is specified, it indicates the context within which the qualification applies.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "qualify"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} qualified {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/read.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/read.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/read.json
new file mode 100644
index 0000000..2776a4e
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/read.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/read.json#",
+    "type": "object",
+    "title": "Read",
+    "description": "Indicates that the actor read the object. This is typically only applicable for objects representing printed or written content, such as a book, a message or a comment.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "read"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} read {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/receive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/receive.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/receive.json
new file mode 100644
index 0000000..da88b34
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/receive.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/receive.json#",
+    "type": "object",
+    "title": "Receive",
+    "description": "Indicates that the actor is receiving an object. Examples include a person receiving a badge object. The object identifies the object being received.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "receive"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} received {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/reject.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/reject.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/reject.json
new file mode 100644
index 0000000..d8a8bb4
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/reject.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/reject.json#",
+    "type": "object",
+    "title": "Reject",
+    "description": "Indicates that the actor has rejected the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "reject"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} rejected {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/remove-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/remove-friend.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/remove-friend.json
new file mode 100644
index 0000000..84f6b78
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/remove-friend.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/remove-friend.json#",
+    "type": "object",
+    "title": "UnFriend",
+    "description": "Indicates that the actor has removed the object from the collection of friends.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "remove-friend"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} removed friend {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/remove.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/remove.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/remove.json
new file mode 100644
index 0000000..367da5d
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/remove.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/remove.json#",
+    "type": "object",
+    "title": "Remove",
+    "description": "Indicates that the actor has removed the object from the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "remove"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} removed {object.displayName} from {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/replace.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/replace.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/replace.json
new file mode 100644
index 0000000..418ea94
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/replace.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/replace.json#",
+    "type": "object",
+    "title": "Replace",
+    "description": "Indicates that the actor has replaced the target with the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "replace"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} replaced {target.displayName} with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/request-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/request-friend.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/request-friend.json
new file mode 100644
index 0000000..51333e2
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/request-friend.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/request-friend.json#",
+    "type": "object",
+    "title": "RequestFriend",
+    "description": "Indicates the creation of a friendship that has not yet been reciprocated by the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "request-friend"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} sent a friend request to {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/request.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/request.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/request.json
new file mode 100644
index 0000000..f15104c
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/request.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/request.json#",
+    "type": "object",
+    "title": "Request",
+    "description": "Indicates that the actor has requested the object. If a target is specified, it indicates the entity from which the object is being requested.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "request"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} requested {object.displayName} from {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/resolve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/resolve.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/resolve.json
new file mode 100644
index 0000000..2b8365d
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/resolve.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/resolve.json#",
+    "type": "object",
+    "title": "Resolve",
+    "description": "Indicates that the actor has resolved the object. For instance, the object could represent a ticket being tracked in an issue management system.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "resolve"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} resolved {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/retract.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/retract.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/retract.json
new file mode 100644
index 0000000..8ddbcbc
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/retract.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/retract.json#",
+    "type": "object",
+    "title": "Retract",
+    "description": "Indicates that the actor has retracted the object. For instance, if an actor wishes to retract a previously published activity, the object would be the previously published activity that is being retracted.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "retract"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} retracted {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/return.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/return.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/return.json
new file mode 100644
index 0000000..40426cf
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/return.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/return.json#",
+    "type": "object",
+    "title": "Return",
+    "description": "Indicates that the actor has returned the object. If a target is specified, it indicates the entity to which the object was returned.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "return"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} returned {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/rsvp-maybe.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/rsvp-maybe.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/rsvp-maybe.json
new file mode 100644
index 0000000..6e9e8f5
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/rsvp-maybe.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/rsvp-maybe.json#",
+    "type": "object",
+    "title": "Rsvp Maybe",
+    "description": "To indicate that the actor may attend an event",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "rsvp-maybe"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} might attend {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/rsvp-no.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/rsvp-no.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/rsvp-no.json
new file mode 100644
index 0000000..6339f1e
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/rsvp-no.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/rsvp-no.json#",
+    "type": "object",
+    "title": "Rsvp No",
+    "description": "To indicate that the actor will not attend an event",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "rsvp-no"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} will not attend {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/rsvp-yes.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/rsvp-yes.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/rsvp-yes.json
new file mode 100644
index 0000000..7fecc78
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/rsvp-yes.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/rsvp-yes.json#",
+    "type": "object",
+    "title": "Rsvp Yes",
+    "description": "To indicate that the actor will attend an event",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "rsvp-yes"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} is attending {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/satisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/satisfy.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/satisfy.json
new file mode 100644
index 0000000..9c36006
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/satisfy.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/satisfy.json#",
+    "type": "object",
+    "title": "Satisfy",
+    "description": "Indicates that the actor has satisfied the object. If a target is specified, it indicate the context within which the object was satisfied. For instance, if a person satisfies the requirements for a particular challenge, the person is the actor; the requirement is the object; and the challenge is the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "satisfy"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} has satisfied {object.displayName}"
+        }
+    }
+}



[02/53] [abbrv] incubator-streams git commit: STREAMS-398 - streams-schemas

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/agree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/agree.json b/streams-schemas/src/site/resources/verbs/agree.json
new file mode 100644
index 0000000..5095153
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/agree.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Agree",
+    "description": "Indicates that the actor agrees with the object. For example, a person agreeing with an argument, or expressing agreement with a particular issue.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "agree"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} agrees with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/append.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/append.json b/streams-schemas/src/site/resources/verbs/append.json
new file mode 100644
index 0000000..648d192
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/append.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Append",
+    "description": "Indicates that the actor has appended the object to the target. For instance, a person appending a new record to a database.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "append"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} append {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/approve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/approve.json b/streams-schemas/src/site/resources/verbs/approve.json
new file mode 100644
index 0000000..ec66f9b
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/approve.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Approve",
+    "description": "Indicates that the actor has approved the object. For instance, a manager might approve a travel request.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "approve"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} approved {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/archive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/archive.json b/streams-schemas/src/site/resources/verbs/archive.json
new file mode 100644
index 0000000..24aea16
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/archive.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Archive",
+    "description": "Indicates that the actor has archived the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "archive"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} archived {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/assign.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/assign.json b/streams-schemas/src/site/resources/verbs/assign.json
new file mode 100644
index 0000000..8fe5458
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/assign.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Assign",
+    "description": "Indicates that the actor has assigned the object to the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "assign"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} assigned {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/at.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/at.json b/streams-schemas/src/site/resources/verbs/at.json
new file mode 100644
index 0000000..42c1222
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/at.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "At",
+    "description": "Indicates that the actor is currently located at the object. For instance, a person being at a specific physical location.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "assign"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} assigned {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/attach.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/attach.json b/streams-schemas/src/site/resources/verbs/attach.json
new file mode 100644
index 0000000..77ff605
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/attach.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Attach",
+    "description": "Indicates that the actor has attached the object to the target.For instance, a person attaching a file to a wiki page or an email.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "attach"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} attached {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/attend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/attend.json b/streams-schemas/src/site/resources/verbs/attend.json
new file mode 100644
index 0000000..07e60fd
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/attend.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Attend",
+    "description": "Indicates that the actor has attended the object. For instance, a person attending a meeting.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "attend"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} attended {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/author.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/author.json b/streams-schemas/src/site/resources/verbs/author.json
new file mode 100644
index 0000000..adc8b28
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/author.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Author",
+    "description": "Indicates that the actor has authored the object. Note that this is a more specific form of the verb \"create\".",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "author"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} authored {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/authorize.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/authorize.json b/streams-schemas/src/site/resources/verbs/authorize.json
new file mode 100644
index 0000000..7439b06
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/authorize.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Authorize",
+    "description": "Indicates that the actor has authorized the object. If a target is specified, it means that the authorization is specifically in regards to the target. For instance, a service can authorize a person to access a given application; in which case the actor is the service, the object is the person, and the target is the application. In contrast, a person can authorize a request; in which case the actor is the person and the object is the request and there might be no explicit target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "authorize"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} authorized {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/borrow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/borrow.json b/streams-schemas/src/site/resources/verbs/borrow.json
new file mode 100644
index 0000000..ede59c1
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/borrow.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Borrow",
+    "description": "Indicates that the actor has borrowed the object. If a target is specified, it identifies the entity from which the object was borrowed. For instance, if a person borrows a book from a library, the person is the actor, the book is the object and the library is the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "borrow"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} borrow {object.displayName} from {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/build.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/build.json b/streams-schemas/src/site/resources/verbs/build.json
new file mode 100644
index 0000000..a90441f
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/build.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Build",
+    "description": "Indicates that the actor has built the object. For example, if a person builds a model or compiles code.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "build"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} built {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/cancel.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/cancel.json b/streams-schemas/src/site/resources/verbs/cancel.json
new file mode 100644
index 0000000..4ab2406
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/cancel.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Cancel",
+    "description": "Indicates that the actor has canceled the object. For instance, canceling a calendar event.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "cancel"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} cancelled {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/checkin.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/checkin.json b/streams-schemas/src/site/resources/verbs/checkin.json
new file mode 100644
index 0000000..d59a8c2
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/checkin.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "checkin",
+    "description": "Indicates that the actor has checked-in to the object. For instance, a person checking-in to a Place.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "checkin"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} checked in at {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/close.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/close.json b/streams-schemas/src/site/resources/verbs/close.json
new file mode 100644
index 0000000..7aa049d
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/close.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Close",
+    "description": "Indicates that the actor has closed the object. For instance, the object could represent a ticket being tracked in an issue management system.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "close"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} closed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/complete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/complete.json b/streams-schemas/src/site/resources/verbs/complete.json
new file mode 100644
index 0000000..4a95d48
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/complete.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Complete",
+    "description": "Indicates that the actor has completed the object",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "complete"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} completed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/confirm.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/confirm.json b/streams-schemas/src/site/resources/verbs/confirm.json
new file mode 100644
index 0000000..aa8d45c
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/confirm.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Confirm",
+    "description": "Indicates that the actor has confirmed or agrees with the object. For instance, a software developer might confirm an issue reported against a product.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "confirm"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} confirmed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/consume.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/consume.json b/streams-schemas/src/site/resources/verbs/consume.json
new file mode 100644
index 0000000..3dc558a
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/consume.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Consume",
+    "description": "Indicates that the actor has consumed the object. The specific meaning is dependent largely on the object's type. For instance, an actor may \"consume\" an audio object, indicating that the actor has listened to it; or an actor may \"consume\" a book, indicating that the book has been read. As such, the \"consume\" verb is a more generic form of other more specific verbs such as \"read\" and \"play\".",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "consume"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} consumed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/create.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/create.json b/streams-schemas/src/site/resources/verbs/create.json
new file mode 100644
index 0000000..dda3012
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/create.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Create",
+    "description": "Indicates that the actor has created the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "create"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} created {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/delete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/delete.json b/streams-schemas/src/site/resources/verbs/delete.json
new file mode 100644
index 0000000..39966c9
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/delete.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Delete",
+    "description": "Indicates that the actor has deleted the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "delete"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} deleted {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/deliver.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/deliver.json b/streams-schemas/src/site/resources/verbs/deliver.json
new file mode 100644
index 0000000..a4b5648
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/deliver.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Deliver",
+    "description": "Indicates that the actor has delivered the object. For example, delivering a package.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "deliver"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} delivered {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/deny.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/deny.json b/streams-schemas/src/site/resources/verbs/deny.json
new file mode 100644
index 0000000..5bf473b
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/deny.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Deny",
+    "description": "Indicates that the actor has denied the object. For example, a manager may deny a travel request.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "deny"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} denied {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/disagree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/disagree.json b/streams-schemas/src/site/resources/verbs/disagree.json
new file mode 100644
index 0000000..b2eb0c2
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/disagree.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Disagree",
+    "description": "Indicates that the actor disagrees with the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "disagree"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} disagrees with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/dislike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/dislike.json b/streams-schemas/src/site/resources/verbs/dislike.json
new file mode 100644
index 0000000..e33cb26
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/dislike.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Dislike",
+    "description": "Indicates that the actor dislikes the object. Note that the \"dislike\" verb is distinct from the \"unlike\" verb which assumes that the object had been previously \"liked\".",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "dislike"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} dislikes {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/experience.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/experience.json b/streams-schemas/src/site/resources/verbs/experience.json
new file mode 100644
index 0000000..b760a5d
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/experience.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Experience",
+    "description": "Indicates that the actor has experienced the object in some manner. Note that, depending on the specific object types used for both the actor and object, the meaning of this verb can overlap that of the \"consume\" and \"play\" verbs. For instance, a person might \"experience\" a movie; or \"play\" the movie; or \"consume\" the movie. The \"experience\" verb can be considered a more generic form of other more specific verbs as \"consume\", \"play\", \"watch\", \"listen\", and \"read\"",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "experience"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} experienced {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/favorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/favorite.json b/streams-schemas/src/site/resources/verbs/favorite.json
new file mode 100644
index 0000000..fa7afa3
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/favorite.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Favorite",
+    "description": "Indicates that the actor marked the object as an item of special interest.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "favorite"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} marked {object.displayName} as a favorite"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/find.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/find.json b/streams-schemas/src/site/resources/verbs/find.json
new file mode 100644
index 0000000..b1a7dacc
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/find.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Find",
+    "description": "Indicates that the actor has found the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "find"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} found {object.displayName}."
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/flag-as-inappropriate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/flag-as-inappropriate.json b/streams-schemas/src/site/resources/verbs/flag-as-inappropriate.json
new file mode 100644
index 0000000..e6657aa
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/flag-as-inappropriate.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Flag-As-Inappropriate",
+    "description": "Indicates that the actor has flagged the object as being inappropriate for some reason. When using this verb, the context property can be used to provide additional detail about why the object has been flagged.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "flag-as-inappropriate"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} flagged {object.displayName} as inappropriate."
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/follow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/follow.json b/streams-schemas/src/site/resources/verbs/follow.json
new file mode 100644
index 0000000..8f50b89
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/follow.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Follow",
+    "description": "Indicates that the actor began following the activity of the object. In most cases, the objectType will be a \"person\", but it can potentially be of any type that can sensibly generate activity. Processors MAY ignore (silently drop) successive identical \"follow\" activities.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "follow"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} started following {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/give.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/give.json b/streams-schemas/src/site/resources/verbs/give.json
new file mode 100644
index 0000000..a9b6e74
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/give.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Give",
+    "description": "Indicates that the actor is giving an object to the target. Examples include one person giving a badge object to another person. The object identifies the object being given. The target identifies the receiver.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "give"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} gave {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/host.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/host.json b/streams-schemas/src/site/resources/verbs/host.json
new file mode 100644
index 0000000..8c59cd0
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/host.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Host",
+    "description": "Indicates that the actor is hosting the object. As in hosting an event, or hosting a service.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "host"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} is hosting {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/ignore.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/ignore.json b/streams-schemas/src/site/resources/verbs/ignore.json
new file mode 100644
index 0000000..442de31
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/ignore.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Ignore",
+    "description": "Indicates that the actor has ignored the object. For instance, this verb may be used when an actor has ignored a friend request, in which case the object may be the request-friend activity.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "ignore"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} ignored {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/insert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/insert.json b/streams-schemas/src/site/resources/verbs/insert.json
new file mode 100644
index 0000000..99db2ec
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/insert.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Insert",
+    "description": "Indicates that the actor has inserted the object into the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "insert"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} inserted {object.displayName} into {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/install.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/install.json b/streams-schemas/src/site/resources/verbs/install.json
new file mode 100644
index 0000000..e3d6e0c
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/install.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Install",
+    "description": "Indicates that the actor has installed the object, as in installing an application.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "install"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} installed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/interact.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/interact.json b/streams-schemas/src/site/resources/verbs/interact.json
new file mode 100644
index 0000000..d589ce4
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/interact.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Interact",
+    "description": "Indicates that the actor has interacted with the object. For instance, when one person interacts with another.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "interact"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} interacted with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/invite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/invite.json b/streams-schemas/src/site/resources/verbs/invite.json
new file mode 100644
index 0000000..34a8691
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/invite.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Invite",
+    "description": "Indicates that the actor has invited the object, typically a person object, to join or participate in the object described by the target. The target could, for instance, be an event, group or a service.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "invite"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} invited {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/join.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/join.json b/streams-schemas/src/site/resources/verbs/join.json
new file mode 100644
index 0000000..78daed8
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/join.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Join",
+    "description": "Indicates that the actor has become a member of the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "join"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} joined {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/leave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/leave.json b/streams-schemas/src/site/resources/verbs/leave.json
new file mode 100644
index 0000000..1ce73bc
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/leave.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Leave",
+    "description": "Indicates that the actor has left the object. For instance, a Person leaving a Group or checking-out of a Place.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "leave"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} left {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/like.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/like.json b/streams-schemas/src/site/resources/verbs/like.json
new file mode 100644
index 0000000..4ac1bf7
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/like.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Like",
+    "description": "Indicates that the actor marked the object as an item of special interest.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "like"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} likes {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/listen.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/listen.json b/streams-schemas/src/site/resources/verbs/listen.json
new file mode 100644
index 0000000..3476144
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/listen.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Listen",
+    "description": "Indicates that the actor has listened to the object. This is typically only applicable for objects representing audio content, such as music, an audio-book, or a radio broadcast.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "listen"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} listened to {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/lose.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/lose.json b/streams-schemas/src/site/resources/verbs/lose.json
new file mode 100644
index 0000000..60899ba
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/lose.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Lose",
+    "description": "Indicates that the actor has lost the object. For instance, if a person loses a game.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "lose"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} lost {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/make-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/make-friend.json b/streams-schemas/src/site/resources/verbs/make-friend.json
new file mode 100644
index 0000000..a6440f1
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/make-friend.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Befriend",
+    "description": "Indicates the creation of a friendship that is reciprocated by the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "make-friend"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} is now friends with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/open.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/open.json b/streams-schemas/src/site/resources/verbs/open.json
new file mode 100644
index 0000000..0145bab
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/open.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Open",
+    "description": "Indicates that the actor has opened the object. For instance, the object could represent a ticket being tracked in an issue management system.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "open"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} opened {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/play.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/play.json b/streams-schemas/src/site/resources/verbs/play.json
new file mode 100644
index 0000000..3f25748
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/play.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Play",
+    "description": "Indicates that the actor spent some time enjoying the object. For example, if the object is a video this indicates that the subject watched all or part of the video.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "play"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} played {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/post.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/post.json b/streams-schemas/src/site/resources/verbs/post.json
new file mode 100644
index 0000000..ea1ad39
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/post.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Post",
+    "description": "To publish an object",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "post"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} posted {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/present.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/present.json b/streams-schemas/src/site/resources/verbs/present.json
new file mode 100644
index 0000000..bcfb1dc
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/present.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Present",
+    "description": "Indicates that the actor has presented the object. For instance, when a person gives a presentation at a conference.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "present"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} presented {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/purchase.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/purchase.json b/streams-schemas/src/site/resources/verbs/purchase.json
new file mode 100644
index 0000000..303386a
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/purchase.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Purchase",
+    "description": "Indicates that the actor has purchased the object. If a target is specified, in indicates the entity from which the object was purchased.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "purchase"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} purchased {object.displayName} from {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/qualify.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/qualify.json b/streams-schemas/src/site/resources/verbs/qualify.json
new file mode 100644
index 0000000..974448f
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/qualify.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Qualify",
+    "description": "Indicates that the actor has qualified for the object. If a target is specified, it indicates the context within which the qualification applies.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "qualify"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} qualified {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/read.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/read.json b/streams-schemas/src/site/resources/verbs/read.json
new file mode 100644
index 0000000..e797f41
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/read.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Read",
+    "description": "Indicates that the actor read the object. This is typically only applicable for objects representing printed or written content, such as a book, a message or a comment.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "read"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} read {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/receive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/receive.json b/streams-schemas/src/site/resources/verbs/receive.json
new file mode 100644
index 0000000..0d44aef
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/receive.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Receive",
+    "description": "Indicates that the actor is receiving an object. Examples include a person receiving a badge object. The object identifies the object being received.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "receive"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} received {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/reject.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/reject.json b/streams-schemas/src/site/resources/verbs/reject.json
new file mode 100644
index 0000000..b82fac7
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/reject.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Reject",
+    "description": "Indicates that the actor has rejected the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "reject"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} rejected {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/remove-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/remove-friend.json b/streams-schemas/src/site/resources/verbs/remove-friend.json
new file mode 100644
index 0000000..073441d
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/remove-friend.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "UnFriend",
+    "description": "Indicates that the actor has removed the object from the collection of friends.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "remove-friend"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} removed friend {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/remove.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/remove.json b/streams-schemas/src/site/resources/verbs/remove.json
new file mode 100644
index 0000000..5b694db
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/remove.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Remove",
+    "description": "Indicates that the actor has removed the object from the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "remove"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} removed {object.displayName} from {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/replace.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/replace.json b/streams-schemas/src/site/resources/verbs/replace.json
new file mode 100644
index 0000000..198c8c5
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/replace.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Replace",
+    "description": "Indicates that the actor has replaced the target with the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "replace"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} replaced {target.displayName} with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/request-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/request-friend.json b/streams-schemas/src/site/resources/verbs/request-friend.json
new file mode 100644
index 0000000..9e246ca
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/request-friend.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "RequestFriend",
+    "description": "Indicates the creation of a friendship that has not yet been reciprocated by the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "request-friend"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} sent a friend request to {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/request.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/request.json b/streams-schemas/src/site/resources/verbs/request.json
new file mode 100644
index 0000000..35807f5
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/request.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Request",
+    "description": "Indicates that the actor has requested the object. If a target is specified, it indicates the entity from which the object is being requested.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "request"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} requested {object.displayName} from {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/resolve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/resolve.json b/streams-schemas/src/site/resources/verbs/resolve.json
new file mode 100644
index 0000000..0b71ce3
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/resolve.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Resolve",
+    "description": "Indicates that the actor has resolved the object. For instance, the object could represent a ticket being tracked in an issue management system.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "resolve"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} resolved {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/retract.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/retract.json b/streams-schemas/src/site/resources/verbs/retract.json
new file mode 100644
index 0000000..ff7cbe7
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/retract.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Retract",
+    "description": "Indicates that the actor has retracted the object. For instance, if an actor wishes to retract a previously published activity, the object would be the previously published activity that is being retracted.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "retract"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} retracted {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/return.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/return.json b/streams-schemas/src/site/resources/verbs/return.json
new file mode 100644
index 0000000..14a8cfb
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/return.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Return",
+    "description": "Indicates that the actor has returned the object. If a target is specified, it indicates the entity to which the object was returned.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "return"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} returned {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/rsvp-maybe.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/rsvp-maybe.json b/streams-schemas/src/site/resources/verbs/rsvp-maybe.json
new file mode 100644
index 0000000..4838406
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/rsvp-maybe.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Rsvp Maybe",
+    "description": "To indicate that the actor may attend an event",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "rsvp-maybe"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} might attend {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/rsvp-no.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/rsvp-no.json b/streams-schemas/src/site/resources/verbs/rsvp-no.json
new file mode 100644
index 0000000..dc36ee3
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/rsvp-no.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Rsvp No",
+    "description": "To indicate that the actor will not attend an event",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "rsvp-no"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} will not attend {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/rsvp-yes.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/rsvp-yes.json b/streams-schemas/src/site/resources/verbs/rsvp-yes.json
new file mode 100644
index 0000000..f62141e
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/rsvp-yes.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Rsvp Yes",
+    "description": "To indicate that the actor will attend an event",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "rsvp-yes"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} is attending {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/satisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/satisfy.json b/streams-schemas/src/site/resources/verbs/satisfy.json
new file mode 100644
index 0000000..a719680
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/satisfy.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Satisfy",
+    "description": "Indicates that the actor has satisfied the object. If a target is specified, it indicate the context within which the object was satisfied. For instance, if a person satisfies the requirements for a particular challenge, the person is the actor; the requirement is the object; and the challenge is the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "satisfy"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} has satisfied {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/save.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/save.json b/streams-schemas/src/site/resources/verbs/save.json
new file mode 100644
index 0000000..1bdbc4b
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/save.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Save",
+    "description": "Indicates that the actor has called out the object as being of interest primarily to him- or herself. Though this action MAY be shared publicly, the implication is that the object has been saved primarily for the actor's own benefit rather than to show it to others as would be indicated by the \"share\" verb.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "save"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} saved {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/schedule.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/schedule.json b/streams-schemas/src/site/resources/verbs/schedule.json
new file mode 100644
index 0000000..a9824a3
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/schedule.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Schedule",
+    "description": "Indicates that the actor has scheduled the object. For instance, scheduling a meeting.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "schedule"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} scheduled {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/search.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/search.json b/streams-schemas/src/site/resources/verbs/search.json
new file mode 100644
index 0000000..3263bbb
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/search.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Search",
+    "description": "Indicates that the actor is or has searched for the object. If a target is specified, it indicates the context within which the search is or has been conducted.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "satisfy"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} search for {object.displayName} in {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/sell.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/sell.json b/streams-schemas/src/site/resources/verbs/sell.json
new file mode 100644
index 0000000..16aa351
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/sell.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Sell",
+    "description": "Indicates that the actor has sold the object. If a target is specified, it indicates the entity to which the object was sold.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "sell"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} sold {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/send.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/send.json b/streams-schemas/src/site/resources/verbs/send.json
new file mode 100644
index 0000000..ead4108
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/send.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Share",
+    "description": "Indicates that the actor has called out the object to readers. In most cases, the actor did not create the object being shared, but is instead drawing attention to it.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "share"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} shared {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/share.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/share.json b/streams-schemas/src/site/resources/verbs/share.json
new file mode 100644
index 0000000..18c0aea
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/share.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Share",
+    "description": "To share an object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "share"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} shared {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/sponsor.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/sponsor.json b/streams-schemas/src/site/resources/verbs/sponsor.json
new file mode 100644
index 0000000..cc6f5cf
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/sponsor.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Sponsor",
+    "description": "Indicates that the actor has sponsored the object. If a target is specified, it indicates the context within which the sponsorship is offered. For instance, a company can sponsor an event; or an individual can sponsor a project; etc.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "sponsor"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} sponsored {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/start.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/start.json b/streams-schemas/src/site/resources/verbs/start.json
new file mode 100644
index 0000000..61eaf06
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/start.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Start",
+    "description": "Indicates that the actor has started the object. For instance, when a person starts a project.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "start"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} started {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/stop-following.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/stop-following.json b/streams-schemas/src/site/resources/verbs/stop-following.json
new file mode 100644
index 0000000..e09317d
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/stop-following.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "UnFollow",
+    "description": "Indicates that the actor has stopped following the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "follow"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} stopped following {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/submit.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/submit.json b/streams-schemas/src/site/resources/verbs/submit.json
new file mode 100644
index 0000000..c1d25b1
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/submit.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Submit",
+    "description": "Indicates that the actor has submitted the object. If a target is specified, it indicates the entity to which the object was submitted.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "submit"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} submitted {object.displayName} to {target.displayName}"
+        }
+    }
+}



[44/53] [abbrv] incubator-streams git commit: Merge branch 'master' into invalid_headers

Posted by mf...@apache.org.
Merge branch 'master' into invalid_headers


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/b569cd4d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/b569cd4d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/b569cd4d

Branch: refs/heads/invalid_headers
Commit: b569cd4dc0b3e10e1174ceabb9fdbc259b229e5f
Parents: 2d8ff24 b21ec4b
Author: Matt Franklin <mf...@apache.org>
Authored: Wed Oct 12 13:47:47 2016 -0400
Committer: Matt Franklin <mf...@apache.org>
Committed: Wed Oct 12 13:47:47 2016 -0400

----------------------------------------------------------------------
 NOTICE                                          |   2 +-
 README.md                                       |  13 +-
 pom.xml                                         |   9 +-
 streams-config/pom.xml                          |   2 +-
 .../streams-processor-lucene/pom.xml            | 163 --------
 .../lucene/LuceneSimpleTaggingProcessor.java    | 355 -----------------
 .../lucene/LuceneTaggerConfiguration.json       |  29 --
 .../lucene/TestLucenSimpleTaggingProcessor.java | 171 ---------
 .../src/test/resources/TestTags.tsv             |   2 -
 streams-contrib/streams-processor-tika/pom.xml  | 162 --------
 .../org/apache/streams/tika/CategoryParser.java | 114 ------
 .../org/apache/streams/tika/TikaProcessor.java  | 139 -------
 .../apache/streams/tika/BoilerPipeArticle.json  |  76 ----
 .../apache/streams/tika/TestCategoryParser.java |  30 --
 .../apache/streams/tika/TestTikaProcessor.java  |  29 --
 .../src/main/jsonschema/com/twitter/tweet.json  |   6 +-
 .../activity-consumer/osgi.bnd                  |   9 -
 .../activity-consumer/pom.xml                   | 171 ---------
 .../activityconsumer/ActivityConsumer.java      |  39 --
 .../ActivityConsumerWarehouse.java              |  31 --
 .../impl/ActivityConsumerWarehouseImpl.java     |  57 ---
 .../impl/PushActivityConsumer.java              | 106 ------
 .../spring/activity-consumer-context.xml        |  28 --
 .../META-INF/spring/activity-consumer-osgi.xml  |  29 --
 .../src/main/resources/readme.txt               |   1 -
 .../activity-registration/osgi.bnd              |   9 -
 .../activity-registration/pom.xml               | 130 -------
 .../ActivityPublisherRegistration.java          |  29 --
 .../ActivityStreamsSubscriberRegistration.java  |  29 --
 .../impl/ActivityPublisherRegistrationImpl.java |  67 ----
 ...tivityStreamsSubscriberRegistrationImpl.java |  67 ----
 .../activity-registration-context-osgi.xml      |  30 --
 .../spring/activity-registration-context.xml    |  29 --
 .../src/main/resources/readme.txt               |   1 -
 .../activity-subscriber/osgi.bnd                |   9 -
 .../activity-subscriber/pom.xml                 | 134 -------
 .../ActivityStreamsSubscriber.java              |  38 --
 .../ActivityStreamsSubscriberWarehouse.java     |  34 --
 .../ActivityStreamsSubscription.java            |  38 --
 .../ActivityStreamsSubscriptionFilter.java      |  34 --
 .../ActivityStreamsSubscriptionOutput.java      |  47 ---
 .../impl/ActivityStreamsSubscriberDelegate.java | 126 ------
 .../ActivityStreamsSubscriberWarehouseImpl.java |  60 ---
 ...yStreamsSubscriptionCassandraFilterImpl.java |  42 --
 .../impl/ActivityStreamsSubscriptionImpl.java   |  74 ----
 ...vityStreamsSubscriptionLuceneFilterImpl.java |  43 ---
 .../spring/activity-subscriber-context.xml      |  28 --
 .../spring/activity-subscriber-osgi.xml         |  29 --
 .../src/main/resources/readme.txt               |   1 -
 .../src/site/resources/readme.txt               |   1 -
 streams-osgi-components/pom.xml                 |  43 ---
 streams-plugins/pom.xml                         |  62 +++
 .../streams-plugin-cassandra/pom.xml            | 251 ++++++++++++
 .../StreamsCassandraGenerationConfig.java       |  81 ++++
 .../StreamsCassandraResourceGenerator.java      | 366 ++++++++++++++++++
 .../StreamsCassandraResourceGeneratorMojo.java  |  62 +++
 .../src/site/markdown/index.md                  |  36 ++
 ...treamsCassandraResourceGeneratorCLITest.java |  52 +++
 ...reamsCassandraResourceGeneratorMojoTest.java |  78 ++++
 .../StreamsCassandraResourceGeneratorTest.java  |  80 ++++
 .../resources/streams-plugin-cassandra/pom.xml  |  76 ++++
 .../streams-plugin-elasticsearch/pom.xml        | 252 ++++++++++++
 .../StreamsElasticsearchGenerationConfig.java   |  81 ++++
 .../StreamsElasticsearchResourceGenerator.java  | 380 +++++++++++++++++++
 ...reamsElasticsearchResourceGeneratorMojo.java |  72 ++++
 .../src/site/markdown/index.md                  |  38 ++
 ...msElasticsearchResourceGeneratorCLITest.java |  39 ++
 ...sElasticsearchResourceGeneratorMojoTest.java |  50 +++
 ...reamsElasticsearchResourceGeneratorTest.java | 110 ++++++
 .../streams-plugin-elasticsearch/pom.xml        |  76 ++++
 streams-plugins/streams-plugin-hbase/pom.xml    | 251 ++++++++++++
 .../hbase/StreamsHbaseGenerationConfig.java     |  90 +++++
 .../hbase/StreamsHbaseResourceGenerator.java    | 193 ++++++++++
 .../StreamsHbaseResourceGeneratorMojo.java      |  71 ++++
 .../src/site/markdown/index.md                  |  40 ++
 .../StreamsHbaseResourceGeneratorCLITest.java   |  41 ++
 .../StreamsHbaseResourceGeneratorMojoTest.java  |  65 ++++
 .../test/StreamsHbaseResourceGeneratorTest.java | 102 +++++
 .../test/resources/streams-plugin-hbase/pom.xml |  77 ++++
 streams-plugins/streams-plugin-hive/pom.xml     | 251 ++++++++++++
 .../hive/StreamsHiveGenerationConfig.java       |  83 ++++
 .../hive/StreamsHiveResourceGenerator.java      | 308 +++++++++++++++
 .../hive/StreamsHiveResourceGeneratorMojo.java  |  63 +++
 .../src/site/markdown/index.md                  |  40 ++
 .../StreamsHiveResourceGeneratorCLITest.java    |  41 ++
 .../StreamsHiveResourceGeneratorMojoTest.java   |  64 ++++
 .../test/StreamsHiveResourceGeneratorTest.java  | 102 +++++
 .../src/test/resources/Tweet.hql                | 297 +++++++++++++++
 .../src/test/resources/expected/activity.hql    | 203 ++++++++++
 .../src/test/resources/expected/collection.hql  |  47 +++
 .../src/test/resources/expected/media_link.hql  |  11 +
 .../src/test/resources/expected/object.hql      |  61 +++
 .../resources/expected/objectTypes/place.hql    |  79 ++++
 .../test/resources/expected/verbs/purchase.hql  | 203 ++++++++++
 .../test/resources/streams-plugin-hive/pom.xml  |  76 ++++
 streams-plugins/streams-plugin-pig/pom.xml      | 251 ++++++++++++
 .../plugins/pig/StreamsPigGenerationConfig.java |  83 ++++
 .../pig/StreamsPigResourceGenerator.java        | 305 +++++++++++++++
 .../pig/StreamsPigResourceGeneratorMojo.java    |  61 +++
 .../src/site/markdown/index.md                  |  38 ++
 .../StreamsPigResourceGeneratorCLITest.java     |  39 ++
 .../StreamsPigResourceGeneratorMojoTest.java    |  64 ++++
 .../test/StreamsPigResourceGeneratorTest.java   | 100 +++++
 .../src/test/resources/expected/media_link.pig  |   1 +
 .../resources/expected/objectTypes/file.pig     |   1 +
 .../expected/objectTypes/photo-album.pig        |   1 +
 .../test/resources/streams-plugin-pig/pom.xml   |  76 ++++
 streams-plugins/streams-plugin-pojo/pom.xml     | 253 ++++++++++++
 .../plugins/StreamsPojoGenerationConfig.java    |  68 ++++
 .../plugins/StreamsPojoSourceGenerator.java     |  75 ++++
 .../plugins/StreamsPojoSourceGeneratorMojo.java |  95 +++++
 .../src/site/markdown/index.md                  |  38 ++
 .../test/StreamsPojoSourceGeneratorCLITest.java |  43 +++
 .../StreamsPojoSourceGeneratorMojoTest.java     |  68 ++++
 .../test/StreamsPojoSourceGeneratorTest.java    |  72 ++++
 .../test/resources/streams-plugin-pojo/pom.xml  | 131 +++++++
 streams-plugins/streams-plugin-scala/pom.xml    | 258 +++++++++++++
 .../plugins/StreamsScalaSourceGenerator.java    | 351 +++++++++++++++++
 .../StreamsScalaSourceGeneratorMojo.java        |  59 +++
 .../src/site/markdown/index.md                  |  36 ++
 .../test/StreamsScalaSourceGeneratorTest.java   |  55 +++
 .../test/resources/streams-plugin-scala/pom.xml |  40 ++
 streams-pojo/pom.xml                            |   8 +-
 streams-runtimes/pom.xml                        |   1 -
 streams-runtimes/streams-runtime-local/pom.xml  |   2 +-
 .../jsonschema/SparkRuntimeConfiguration.json   |  27 --
 .../streams-runtime-webapp/README.md            |   8 -
 streams-runtimes/streams-runtime-webapp/pom.xml | 250 ------------
 .../aggregation/ActivityAggregator.java         |  59 ---
 .../configuration/EipConfigurator.java          | 201 ----------
 .../ActivityPublisherRegistrationProcessor.java |  72 ----
 ...yStreamsSubscriberRegistrationProcessor.java |  93 -----
 .../routers/ActivityConsumerRouteBuilder.java   |  32 --
 .../ActivityStreamsSubscriberRouteBuilder.java  |  32 --
 .../routers/impl/ActivityConsumerRouter.java    | 144 -------
 .../impl/ActivityStreamsSubscriberRouter.java   | 141 -------
 .../messaging/service/ActivityService.java      |  31 --
 .../messaging/service/SubscriptionService.java  |  29 --
 .../service/impl/CassandraActivityService.java  |  96 -----
 .../impl/CassandraSubscriptionService.java      |  43 ---
 .../META-INF/spring/propertiesLoader.xml        |  35 --
 .../spring/streams-eip-applicationContext.xml   | 113 ------
 .../streams-eip-osgi-component-import.xml       |  38 --
 .../META-INF/spring/streamsCamelContext.xml     |  96 -----
 .../main/resources/META-INF/streams.properties  |  41 --
 .../impl/CassandraActivityServiceTest.java      |  86 -----
 streams-schemas/pom.xml                         |  39 ++
 .../streams-schema-activitystreams/pom.xml      |  82 ++++
 .../src/main/jsonschema/activity.json           | 108 ++++++
 .../src/main/jsonschema/collection.json         |  47 +++
 .../src/main/jsonschema/media_link.json         |  34 ++
 .../src/main/jsonschema/object.json             |  98 +++++
 .../src/main/jsonschema/objectTypes/alert.json  |  19 +
 .../jsonschema/objectTypes/application.json     |  19 +
 .../main/jsonschema/objectTypes/article.json    |  19 +
 .../src/main/jsonschema/objectTypes/audio.json  |  19 +
 .../src/main/jsonschema/objectTypes/badge.json  |  19 +
 .../src/main/jsonschema/objectTypes/binary.json |  19 +
 .../main/jsonschema/objectTypes/bookmark.json   |  19 +
 .../main/jsonschema/objectTypes/comment.json    |  19 +
 .../src/main/jsonschema/objectTypes/device.json |  19 +
 .../src/main/jsonschema/objectTypes/event.json  |  51 +++
 .../src/main/jsonschema/objectTypes/file.json   |  25 ++
 .../src/main/jsonschema/objectTypes/folder.json |  19 +
 .../src/main/jsonschema/objectTypes/game.json   |  19 +
 .../src/main/jsonschema/objectTypes/group.json  |  19 +
 .../src/main/jsonschema/objectTypes/image.json  |  22 ++
 .../src/main/jsonschema/objectTypes/issue.json  |  25 ++
 .../src/main/jsonschema/objectTypes/job.json    |  19 +
 .../src/main/jsonschema/objectTypes/list.json   |  28 ++
 .../src/main/jsonschema/objectTypes/note.json   |  19 +
 .../src/main/jsonschema/objectTypes/offer.json  |  19 +
 .../jsonschema/objectTypes/organization.json    |  19 +
 .../src/main/jsonschema/objectTypes/page.json   |  19 +
 .../main/jsonschema/objectTypes/permission.json |  36 ++
 .../src/main/jsonschema/objectTypes/person.json |  25 ++
 .../jsonschema/objectTypes/photo-album.json     |  19 +
 .../src/main/jsonschema/objectTypes/photo.json  |  23 ++
 .../src/main/jsonschema/objectTypes/place.json  |  39 ++
 .../main/jsonschema/objectTypes/playlist.json   |  19 +
 .../main/jsonschema/objectTypes/process.json    |  19 +
 .../main/jsonschema/objectTypes/product.json    |  25 ++
 .../main/jsonschema/objectTypes/property.json   |  48 +++
 .../main/jsonschema/objectTypes/question.json   |  28 ++
 .../src/main/jsonschema/objectTypes/review.json |  22 ++
 .../src/main/jsonschema/objectTypes/role.json   |  25 ++
 .../main/jsonschema/objectTypes/service.json    |  19 +
 .../src/main/jsonschema/objectTypes/song.json   |  19 +
 .../src/main/jsonschema/objectTypes/status.json |  19 +
 .../src/main/jsonschema/objectTypes/task.json   |  40 ++
 .../src/main/jsonschema/objectTypes/team.json   |  19 +
 .../src/main/jsonschema/objectTypes/video.json  |  19 +
 .../src/main/jsonschema/verbs/accept.json       |  24 ++
 .../src/main/jsonschema/verbs/access.json       |  24 ++
 .../src/main/jsonschema/verbs/acknowledge.json  |  24 ++
 .../src/main/jsonschema/verbs/add.json          |  24 ++
 .../src/main/jsonschema/verbs/agree.json        |  24 ++
 .../src/main/jsonschema/verbs/append.json       |  24 ++
 .../src/main/jsonschema/verbs/approve.json      |  24 ++
 .../src/main/jsonschema/verbs/archive.json      |  24 ++
 .../src/main/jsonschema/verbs/assign.json       |  24 ++
 .../src/main/jsonschema/verbs/at.json           |  24 ++
 .../src/main/jsonschema/verbs/attach.json       |  24 ++
 .../src/main/jsonschema/verbs/attend.json       |  24 ++
 .../src/main/jsonschema/verbs/author.json       |  24 ++
 .../src/main/jsonschema/verbs/authorize.json    |  24 ++
 .../src/main/jsonschema/verbs/borrow.json       |  24 ++
 .../src/main/jsonschema/verbs/build.json        |  24 ++
 .../src/main/jsonschema/verbs/cancel.json       |  24 ++
 .../src/main/jsonschema/verbs/checkin.json      |  24 ++
 .../src/main/jsonschema/verbs/close.json        |  24 ++
 .../src/main/jsonschema/verbs/complete.json     |  24 ++
 .../src/main/jsonschema/verbs/confirm.json      |  24 ++
 .../src/main/jsonschema/verbs/consume.json      |  24 ++
 .../src/main/jsonschema/verbs/create.json       |  24 ++
 .../src/main/jsonschema/verbs/delete.json       |  24 ++
 .../src/main/jsonschema/verbs/deliver.json      |  24 ++
 .../src/main/jsonschema/verbs/deny.json         |  24 ++
 .../src/main/jsonschema/verbs/disagree.json     |  24 ++
 .../src/main/jsonschema/verbs/dislike.json      |  24 ++
 .../src/main/jsonschema/verbs/experience.json   |  24 ++
 .../src/main/jsonschema/verbs/favorite.json     |  24 ++
 .../src/main/jsonschema/verbs/find.json         |  24 ++
 .../jsonschema/verbs/flag-as-inappropriate.json |  24 ++
 .../src/main/jsonschema/verbs/follow.json       |  24 ++
 .../src/main/jsonschema/verbs/give.json         |  24 ++
 .../src/main/jsonschema/verbs/host.json         |  24 ++
 .../src/main/jsonschema/verbs/ignore.json       |  24 ++
 .../src/main/jsonschema/verbs/insert.json       |  24 ++
 .../src/main/jsonschema/verbs/install.json      |  24 ++
 .../src/main/jsonschema/verbs/interact.json     |  24 ++
 .../src/main/jsonschema/verbs/invite.json       |  24 ++
 .../src/main/jsonschema/verbs/join.json         |  24 ++
 .../src/main/jsonschema/verbs/leave.json        |  24 ++
 .../src/main/jsonschema/verbs/like.json         |  24 ++
 .../src/main/jsonschema/verbs/listen.json       |  24 ++
 .../src/main/jsonschema/verbs/lose.json         |  24 ++
 .../src/main/jsonschema/verbs/make-friend.json  |  24 ++
 .../src/main/jsonschema/verbs/open.json         |  24 ++
 .../src/main/jsonschema/verbs/play.json         |  24 ++
 .../src/main/jsonschema/verbs/post.json         |  24 ++
 .../src/main/jsonschema/verbs/present.json      |  24 ++
 .../src/main/jsonschema/verbs/purchase.json     |  24 ++
 .../src/main/jsonschema/verbs/qualify.json      |  24 ++
 .../src/main/jsonschema/verbs/read.json         |  24 ++
 .../src/main/jsonschema/verbs/receive.json      |  24 ++
 .../src/main/jsonschema/verbs/reject.json       |  24 ++
 .../main/jsonschema/verbs/remove-friend.json    |  24 ++
 .../src/main/jsonschema/verbs/remove.json       |  24 ++
 .../src/main/jsonschema/verbs/replace.json      |  24 ++
 .../main/jsonschema/verbs/request-friend.json   |  24 ++
 .../src/main/jsonschema/verbs/request.json      |  24 ++
 .../src/main/jsonschema/verbs/resolve.json      |  24 ++
 .../src/main/jsonschema/verbs/retract.json      |  24 ++
 .../src/main/jsonschema/verbs/return.json       |  24 ++
 .../src/main/jsonschema/verbs/rsvp-maybe.json   |  24 ++
 .../src/main/jsonschema/verbs/rsvp-no.json      |  24 ++
 .../src/main/jsonschema/verbs/rsvp-yes.json     |  24 ++
 .../src/main/jsonschema/verbs/satisfy.json      |  24 ++
 .../src/main/jsonschema/verbs/save.json         |  24 ++
 .../src/main/jsonschema/verbs/schedule.json     |  24 ++
 .../src/main/jsonschema/verbs/search.json       |  24 ++
 .../src/main/jsonschema/verbs/sell.json         |  24 ++
 .../src/main/jsonschema/verbs/send.json         |  24 ++
 .../src/main/jsonschema/verbs/share.json        |  24 ++
 .../src/main/jsonschema/verbs/sponsor.json      |  24 ++
 .../src/main/jsonschema/verbs/start.json        |  24 ++
 .../main/jsonschema/verbs/stop-following.json   |  24 ++
 .../src/main/jsonschema/verbs/submit.json       |  24 ++
 .../src/main/jsonschema/verbs/tag.json          |  24 ++
 .../src/main/jsonschema/verbs/terminate.json    |  24 ++
 .../src/main/jsonschema/verbs/tie.json          |  24 ++
 .../src/main/jsonschema/verbs/unfavorite.json   |  24 ++
 .../src/main/jsonschema/verbs/unlike.json       |  24 ++
 .../src/main/jsonschema/verbs/unsatisfy.json    |  24 ++
 .../src/main/jsonschema/verbs/unsave.json       |  24 ++
 .../src/main/jsonschema/verbs/unshare.json      |  24 ++
 .../src/main/jsonschema/verbs/update.json       |  34 ++
 .../src/main/jsonschema/verbs/use.json          |  24 ++
 .../src/main/jsonschema/verbs/watch.json        |  24 ++
 .../src/main/jsonschema/verbs/win.json          |  24 ++
 .../src/main/xmlschema/activity.xsd             |  94 +++++
 streams-util/pom.xml                            |  89 ++++-
 .../java/org/apache/streams/util/GuidUtils.java |   2 +-
 .../org/apache/streams/util/RegexUtils.java     |   3 +
 .../apache/streams/util/SerializationUtil.java  |   3 +-
 .../apache/streams/util/schema/FieldType.java   |  14 +
 .../apache/streams/util/schema/FieldUtil.java   |  34 ++
 .../apache/streams/util/schema/FileUtil.java    |  77 ++++
 .../streams/util/schema/GenerationConfig.java   | 116 ++++++
 .../org/apache/streams/util/schema/Schema.java  |  57 +++
 .../apache/streams/util/schema/SchemaStore.java |  42 ++
 .../streams/util/schema/SchemaStoreImpl.java    | 347 +++++++++++++++++
 .../apache/streams/util/schema/SchemaUtil.java  |  49 +++
 .../org/apache/streams/util/schema/URIUtil.java |  30 ++
 .../util/schema/test/SchemaOrderingTest.java    | 150 ++++++++
 .../util/schema/test/SchemaStoreTest.java       |  71 ++++
 .../src/test/resources/activities/accept.json   |  16 +
 .../src/test/resources/activities/access.json   |  17 +
 .../test/resources/activities/acknowledge.json  |  16 +
 .../src/test/resources/activities/add.json      |  21 +
 .../src/test/resources/activities/agree.json    |  15 +
 .../src/test/resources/activities/append.json   |  16 +
 .../src/test/resources/activities/approve.json  |  20 +
 .../src/test/resources/activities/archive.json  |  15 +
 .../src/test/resources/activities/assign.json   |  20 +
 .../src/test/resources/activities/at.json       |  15 +
 .../src/test/resources/activities/attach.json   |  20 +
 .../src/test/resources/activities/attend.json   |  15 +
 .../src/test/resources/activities/author.json   |  15 +
 .../test/resources/activities/authorize.json    |  23 ++
 .../src/test/resources/activities/borrow.json   |  21 +
 .../src/test/resources/activities/build.json    |  16 +
 .../src/test/resources/activities/cancel.json   |  16 +
 .../src/test/resources/activities/checkin.json  |  16 +
 .../src/test/resources/activities/close.json    |  16 +
 .../src/test/resources/activities/complete.json |  16 +
 .../src/test/resources/activities/confirm.json  |  17 +
 .../src/test/resources/activities/consume.json  |  16 +
 .../src/test/resources/activities/create.json   |  15 +
 .../src/test/resources/activities/delete.json   |  16 +
 .../src/test/resources/activities/deliver.json  |  20 +
 .../src/test/resources/activities/deny.json     |  23 ++
 .../src/test/resources/activities/disagree.json |  30 ++
 .../src/test/resources/activities/dislike.json  |  15 +
 .../test/resources/activities/experience.json   |  16 +
 .../src/test/resources/activities/favorite.json |  15 +
 .../src/test/resources/activities/find.json     |  19 +
 .../activities/flag-as-inappropriate.json       |  24 ++
 .../src/test/resources/activities/follow.json   |  15 +
 .../src/test/resources/activities/give.json     |  28 ++
 .../src/test/resources/activities/host.json     |  15 +
 .../src/test/resources/activities/ignore.json   |  15 +
 .../src/test/resources/activities/insert.json   |  19 +
 .../src/test/resources/activities/install.json  |  18 +
 .../src/test/resources/activities/interact.json |  16 +
 .../src/test/resources/activities/invite.json   |  19 +
 .../src/test/resources/activities/join.json     |  15 +
 .../src/test/resources/activities/leave.json    |  15 +
 .../src/test/resources/activities/like.json     |  22 ++
 .../src/test/resources/activities/listen.json   |  15 +
 .../src/test/resources/activities/lose.json     |  15 +
 .../test/resources/activities/make-friend.json  |  15 +
 .../src/test/resources/activities/open.json     |  15 +
 .../src/test/resources/activities/play.json     |  15 +
 .../src/test/resources/activities/post.json     |  25 ++
 .../src/test/resources/activities/present.json  |  15 +
 .../src/test/resources/activities/purchase.json |  16 +
 .../src/test/resources/activities/qualify.json  |  15 +
 .../src/test/resources/activities/read.json     |  16 +
 .../src/test/resources/activities/receive.json  |  16 +
 .../src/test/resources/activities/reject.json   |  15 +
 .../resources/activities/remove-friend.json     |  15 +
 .../src/test/resources/activities/remove.json   |  23 ++
 .../src/test/resources/activities/replace.json  |  19 +
 .../resources/activities/request-friend.json    |  16 +
 .../src/test/resources/activities/request.json  |  23 ++
 .../src/test/resources/activities/resolve.json  |  15 +
 .../src/test/resources/activities/retract.json  |  26 ++
 .../src/test/resources/activities/return.json   |  19 +
 .../test/resources/activities/rsvp-maybe.json   |  16 +
 .../src/test/resources/activities/rsvp-no.json  |  16 +
 .../src/test/resources/activities/rsvp-yes.json |  16 +
 .../src/test/resources/activities/satisfy.json  |  21 +
 .../src/test/resources/activities/save.json     |  20 +
 .../src/test/resources/activities/schedule.json |  15 +
 .../src/test/resources/activities/search.json   |  21 +
 .../src/test/resources/activities/sell.json     |  19 +
 .../src/test/resources/activities/send.json     |  19 +
 .../src/test/resources/activities/share.json    |  16 +
 .../src/test/resources/activities/sponsor.json  |  17 +
 .../src/test/resources/activities/start.json    |  15 +
 .../resources/activities/stop-following.json    |  15 +
 .../src/test/resources/activities/submit.json   |  15 +
 .../src/test/resources/activities/tag.json      |  19 +
 .../test/resources/activities/terminate.json    |  15 +
 .../src/test/resources/activities/tie.json      |  24 ++
 .../test/resources/activities/unfavorite.json   |  15 +
 .../src/test/resources/activities/unlike.json   |  15 +
 .../test/resources/activities/unsatisfy.json    |  20 +
 .../src/test/resources/activities/unsave.json   |  15 +
 .../src/test/resources/activities/unshare.json  |  15 +
 .../src/test/resources/activities/update.json   |  15 +
 .../src/test/resources/activities/use.json      |  15 +
 .../src/test/resources/activities/watch.json    |  16 +
 .../src/test/resources/activities/win.json      |  15 +
 streams-util/src/test/resources/media_link.json |   7 +
 .../src/test/resources/objects/event.json       |  18 +
 .../src/test/resources/objects/group.json       |  16 +
 .../src/test/resources/objects/issue.json       |   9 +
 .../src/test/resources/objects/note.json        |  12 +
 .../src/test/resources/objects/permission.json  |   9 +
 .../src/test/resources/objects/place.json       |   9 +
 .../src/test/resources/objects/task.json        |  16 +
 .../src/test/resources/objects/video.json       |   8 +
 395 files changed, 14114 insertions(+), 4602 deletions(-)
----------------------------------------------------------------------



[38/53] [abbrv] incubator-streams git commit: Merge remote-tracking branch 'steveblackmon/STREAMS-389'

Posted by mf...@apache.org.
Merge remote-tracking branch 'steveblackmon/STREAMS-389'


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/8e929ebf
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/8e929ebf
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/8e929ebf

Branch: refs/heads/invalid_headers
Commit: 8e929ebf811abf5402514bd5030f064a02157127
Parents: f14a25c c89fe1e
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Wed Oct 12 10:50:44 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Oct 12 10:50:44 2016 -0500

----------------------------------------------------------------------
 pom.xml                                         |   1 +
 streams-plugins/pom.xml                         |  56 +++
 streams-plugins/streams-plugin-scala/pom.xml    | 243 ++++++++++++
 .../streams/plugins/StreamsPojoScala.java       | 371 +++++++++++++++++++
 .../streams/plugins/StreamsPojoScalaMojo.java   |  71 ++++
 .../plugins/test/StreamsPojoScalaTest.java      |  55 +++
 .../test/resources/streams-plugin-scala/pom.xml |  40 ++
 7 files changed, 837 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/8e929ebf/pom.xml
----------------------------------------------------------------------
diff --cc pom.xml
index 466e94b,58304e0..48a5ad6
--- a/pom.xml
+++ b/pom.xml
@@@ -174,10 -172,11 +174,11 @@@
          <module>streams-contrib</module>
          <module>streams-components</module>
          <module>streams-monitoring</module>
 -        <module>streams-osgi-components</module>
          <module>streams-pojo</module>
          <module>streams-pojo-extensions</module>
+         <module>streams-plugins</module>
          <module>streams-runtimes</module>
 +        <module>streams-testing</module>
          <module>streams-util</module>
          <module>streams-verbs</module>
      </modules>


[09/53] [abbrv] incubator-streams git commit: STREAMS-398 - pojo generation

Posted by mf...@apache.org.
STREAMS-398 - pojo generation

code and plugin for generating POJOs now resides in streams-project
unit testing for generating POJOs without maven
unit testing for generating POJOs with maven


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/7b8ef0a2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/7b8ef0a2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/7b8ef0a2

Branch: refs/heads/invalid_headers
Commit: 7b8ef0a22707af88426c18e0869ad01a261602c5
Parents: 0424855
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Thu Apr 21 11:42:44 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Jun 1 12:49:27 2016 -0500

----------------------------------------------------------------------
 pom.xml                                         |   1 +
 streams-plugins/streams-plugin-pojo/pom.xml     |  28 ++-
 .../plugins/StreamsPojoGenerationConfig.java    | 230 ++++---------------
 .../plugins/StreamsPojoSourceGenerator.java     |  98 ++++++++
 .../plugins/StreamsPojoSourceGeneratorMojo.java |  80 +++----
 .../StreamsPojoSourceGeneratorMojoTest.java     |  96 ++++++++
 .../test/StreamsPojoSourceGeneratorTest.java    |  43 +++-
 .../test/resources/streams-plugin-pojo/pom.xml  |  90 +++++++-
 streams-pojo/pom.xml                            |   6 +
 9 files changed, 421 insertions(+), 251 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/7b8ef0a2/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index cb935af..6010572 100644
--- a/pom.xml
+++ b/pom.xml
@@ -177,6 +177,7 @@
         <module>streams-pojo-extensions</module>
         <module>streams-plugins</module>
         <module>streams-runtimes</module>
+        <module>streams-schemas</module>
         <module>streams-testing</module>
         <module>streams-util</module>
         <module>streams-verbs</module>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/7b8ef0a2/streams-plugins/streams-plugin-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/pom.xml b/streams-plugins/streams-plugin-pojo/pom.xml
index 399a371..d7210c8 100644
--- a/streams-plugins/streams-plugin-pojo/pom.xml
+++ b/streams-plugins/streams-plugin-pojo/pom.xml
@@ -43,8 +43,14 @@
             <version>${project.version}</version>
         </dependency>
         <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schemas</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
             <groupId>org.jsonschema2pojo</groupId>
             <artifactId>jsonschema2pojo-core</artifactId>
+            <version>0.4.10</version>
             <exclusions>
                 <exclusion>
                     <groupId>commons-logging</groupId>
@@ -55,6 +61,7 @@
         <dependency>
             <groupId>org.jsonschema2pojo</groupId>
             <artifactId>jsonschema2pojo-maven-plugin</artifactId>
+            <version>0.4.10</version>
         </dependency>
         <dependency>
             <groupId>org.apache.streams</groupId>
@@ -86,6 +93,12 @@
             <scope>test</scope>
         </dependency>
         <dependency>
+            <groupId>org.apache.maven.shared</groupId>
+            <artifactId>maven-verifier</artifactId>
+            <version>1.6</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
             <groupId>org.apache.maven</groupId>
             <artifactId>maven-core</artifactId>
             <version>3.3.3</version>
@@ -216,19 +229,20 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-dependency-plugin</artifactId>
-                <version>2.4</version>
+                <configuration>
+                    <includes>**/*.json</includes>
+                    <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                    <includeGroupIds>org.apache.streams</includeGroupIds>
+                    <includeArtifactIds>streams-schemas</includeArtifactIds>
+                    <includeTypes>jar,test-jar</includeTypes>
+                </configuration>
                 <executions>
                     <execution>
-                        <id>resource-dependencies</id>
+                        <id>test-resource-dependencies</id>
                         <phase>process-test-resources</phase>
                         <goals>
                             <goal>unpack-dependencies</goal>
                         </goals>
-                        <configuration>
-                            <includeArtifactIds>streams-pojo</includeArtifactIds>
-                            <includes>**/*.json</includes>
-                            <outputDirectory>${project.build.directory}/test-classes</outputDirectory>
-                        </configuration>
                     </execution>
                 </executions>
             </plugin>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/7b8ef0a2/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoGenerationConfig.java b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoGenerationConfig.java
index b42ccf9..4c1f850 100644
--- a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoGenerationConfig.java
+++ b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoGenerationConfig.java
@@ -2,197 +2,67 @@ package org.apache.streams.plugins;
 
 import org.jsonschema2pojo.AnnotationStyle;
 import org.jsonschema2pojo.Annotator;
+import org.jsonschema2pojo.DefaultGenerationConfig;
 import org.jsonschema2pojo.GenerationConfig;
 import org.jsonschema2pojo.SourceType;
 import org.jsonschema2pojo.rules.RuleFactory;
+import org.jsonschema2pojo.util.URLUtil;
 
 import java.io.File;
 import java.io.FileFilter;
 import java.net.URL;
+import java.util.ArrayList;
+import java.util.Collections;
 import java.util.Iterator;
+import java.util.List;
 
 /**
  * Created by sblackmon on 3/27/16.
  */
-public class StreamsPojoGenerationConfig implements GenerationConfig {
+public class StreamsPojoGenerationConfig extends DefaultGenerationConfig {
+
+    private String sourceDirectory;
+    private List<String> sourcePaths;
+    private String targetPackage;
+    private String targetDirectory;
+
+    public void setSourceDirectory(String sourceDirectory) {
+        this.sourceDirectory = sourceDirectory;
+    }
+
+    public void setSourcePaths(List<String> sourcePaths) {
+        this.sourcePaths = sourcePaths;
+    }
+
+    public void setTargetPackage(String targetPackage) {
+        this.targetPackage = targetPackage;
+    }
+
+    public void setTargetDirectory(String targetDirectory) {
+        this.targetDirectory = targetDirectory;
+    }
+
+    @Override
+    public String getTargetPackage() {
+        return targetPackage;
+    }
+
+    @Override
+    public File getTargetDirectory() {
+        return new File(targetDirectory);
+    }
+
+    @Override
+    public Iterator<URL> getSource() {
+        if (null != sourceDirectory) {
+            return Collections.singleton(URLUtil.parseURL(sourceDirectory)).iterator();
+        }
+        List<URL> sourceURLs = new ArrayList<URL>();
+        if( sourcePaths != null && sourcePaths.size() > 0)
+            for (String source : sourcePaths) {
+                sourceURLs.add(URLUtil.parseURL(source));
+            }
+        return sourceURLs.iterator();
+    }
 
-        @Override
-        public boolean isGenerateBuilders() {
-            return false;
-        }
-
-        @Override
-        public boolean isUsePrimitives() {
-            return false;
-        }
-
-        @Override
-        public Iterator<URL> getSource() {
-            return null;
-        }
-
-        @Override
-        public File getTargetDirectory() {
-            return null;
-        }
-
-        @Override
-        public String getTargetPackage() {
-            return null;
-        }
-
-        @Override
-        public char[] getPropertyWordDelimiters() {
-            return new char[0];
-        }
-
-        @Override
-        public boolean isUseLongIntegers() {
-            return false;
-        }
-
-        @Override
-        public boolean isUseDoubleNumbers() {
-            return false;
-        }
-
-        @Override
-        public boolean isUseBigDecimals() {
-            return false;
-        }
-
-        @Override
-        public boolean isIncludeHashcodeAndEquals() {
-            return false;
-        }
-
-        @Override
-        public boolean isIncludeToString() {
-            return false;
-        }
-
-        @Override
-        public AnnotationStyle getAnnotationStyle() {
-            return null;
-        }
-
-        @Override
-        public Class<? extends Annotator> getCustomAnnotator() {
-            return null;
-        }
-
-        @Override
-        public Class<? extends RuleFactory> getCustomRuleFactory() {
-            return null;
-        }
-
-        @Override
-        public boolean isIncludeJsr303Annotations() {
-            return false;
-        }
-
-        @Override
-        public SourceType getSourceType() {
-            return null;
-        }
-
-        @Override
-        public boolean isRemoveOldOutput() {
-            return false;
-        }
-
-        @Override
-        public String getOutputEncoding() {
-            return null;
-        }
-
-        @Override
-        public boolean isUseJodaDates() {
-            return false;
-        }
-
-        @Override
-        public boolean isUseJodaLocalDates() {
-            return false;
-        }
-
-        @Override
-        public boolean isUseJodaLocalTimes() {
-            return false;
-        }
-
-        @Override
-        public boolean isUseCommonsLang3() {
-            return false;
-        }
-
-        @Override
-        public boolean isParcelable() {
-            return false;
-        }
-
-        @Override
-        public FileFilter getFileFilter() {
-            return null;
-        }
-
-        @Override
-        public boolean isInitializeCollections() {
-            return false;
-        }
-
-        @Override
-        public String getClassNamePrefix() {
-            return null;
-        }
-
-        @Override
-        public String getClassNameSuffix() {
-            return null;
-        }
-
-        @Override
-        public boolean isIncludeConstructors() {
-            return false;
-        }
-
-        @Override
-        public boolean isConstructorsRequiredPropertiesOnly() {
-            return false;
-        }
-
-        @Override
-        public boolean isIncludeAdditionalProperties() {
-            return false;
-        }
-
-        @Override
-        public boolean isIncludeAccessors() {
-            return false;
-        }
-
-        @Override
-        public String getTargetVersion() {
-            return null;
-        }
-
-        @Override
-        public boolean isIncludeDynamicAccessors() {
-            return false;
-        }
-
-        @Override
-        public String getDateTimeType() {
-            return null;
-        }
-
-        @Override
-        public String getDateType() {
-            return null;
-        }
-
-        @Override
-        public String getTimeType() {
-            return null;
-        }
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/7b8ef0a2/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java
new file mode 100644
index 0000000..d80123d
--- /dev/null
+++ b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java
@@ -0,0 +1,98 @@
+package org.apache.streams.plugins;
+
+import com.google.common.base.Preconditions;
+import org.apache.maven.artifact.DependencyResolutionRequiredException;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.jsonschema2pojo.Jsonschema2Pojo;
+import org.jsonschema2pojo.maven.ProjectClasspath;
+import org.jsonschema2pojo.util.URLUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URL;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.nio.file.StandardOpenOption;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+
+import static org.apache.commons.lang.StringUtils.isNotBlank;
+
+/**
+ * Created by sblackmon on 4/20/16.
+ */
+public class StreamsPojoSourceGenerator implements Runnable {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoSourceGenerator.class);
+
+    private final static String LS = System.getProperty("line.separator");
+
+    private StreamsPojoSourceGeneratorMojo mojo;
+
+    private StreamsPojoGenerationConfig config;
+
+    public void main(String[] args) {
+        StreamsPojoGenerationConfig config = new StreamsPojoGenerationConfig();
+
+        String sourceDirectory = "./target/test-classes/activities";
+        String targetDirectory = "./target/generated-sources/streams-plugin-pojo";
+        String targetPackage = "";
+
+        if( args.length > 0 )
+            sourceDirectory = args[0];
+        if( args.length > 1 )
+            targetDirectory = args[1];
+        if( args.length > 2 )
+            targetPackage = args[2];
+
+        config.setSourceDirectory(sourceDirectory);
+        config.setTargetPackage(targetPackage);
+        config.setTargetDirectory(targetDirectory);
+
+        StreamsPojoSourceGenerator streamsPojoSourceGenerator = new StreamsPojoSourceGenerator(config);
+        Thread thread = new Thread(streamsPojoSourceGenerator);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+        return;
+    }
+
+    public StreamsPojoSourceGenerator(StreamsPojoGenerationConfig config) {
+        this.config = config;
+    }
+
+    @Override
+    public void run() {
+
+        Preconditions.checkNotNull(config);
+
+        try {
+            Jsonschema2Pojo.generate(config);
+        } catch (Throwable e) {
+            LOGGER.error("{} {}", e.getClass(), e.getMessage());
+        }
+    }
+
+
+
+    private void writeFile(String pojoFile, String pojoHive) {
+        try {
+            File path = new File(pojoFile);
+            File dir = path.getParentFile();
+            if( !dir.exists() )
+                dir.mkdirs();
+            Files.write(Paths.get(pojoFile), pojoHive.getBytes(), StandardOpenOption.CREATE_NEW);
+        } catch (Exception e) {
+            LOGGER.error("Write Exception: {}", e);
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/7b8ef0a2/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
index 8980daa..9d595fe 100644
--- a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
@@ -29,10 +29,10 @@ import java.util.List;
 
 import static org.apache.commons.lang.StringUtils.isNotBlank;
 
-@Mojo(  name = "hive",
+@Mojo(  name = "pojo",
         defaultPhase = LifecyclePhase.GENERATE_SOURCES
 )
-@Execute(   goal = "hive",
+@Execute(   goal = "pojo",
             phase = LifecyclePhase.GENERATE_SOURCES
 )
 public class StreamsPojoSourceGeneratorMojo extends AbstractMojo {
@@ -55,45 +55,42 @@ public class StreamsPojoSourceGeneratorMojo extends AbstractMojo {
     @Parameter( defaultValue = "${project.basedir}", readonly = true )
     public File basedir;
 
-    @Parameter( defaultValue = "${jsonschema2pojo.sourceDirectory}", readonly = true ) // Maven 3 only
+    @Parameter( defaultValue = "./src/main/jsonschema", readonly = true ) // Maven 3 only
     public String sourceDirectory;
 
-    @Parameter( defaultValue = "${jsonschema2pojo.sourcePaths}", readonly = true ) // Maven 3 only
-    public String[] sourcePaths;
+    @Parameter( readonly = true ) // Maven 3 only
+    public List<String> sourcePaths;
 
-    @Parameter(defaultValue = "${project.build.directory}", readonly = true)
-    public File target;
+    @Parameter(defaultValue = "./target/generated-sources/streams-plugin-pojo", readonly = true)
+    public String targetDirectory;
+
+    @Parameter(readonly = true)
+    public String targetPackage;
 
     public void execute() throws MojoExecutionException {
 
         addProjectDependenciesToClasspath();
 
-        // verify source directories
-        if (isNotBlank(sourceDirectory)) {
-            // verify sourceDirectory
-            try {
-                URLUtil.parseURL(sourceDirectory);
-            } catch (IllegalArgumentException e) {
-                throw new MojoExecutionException(e.getMessage(), e);
-            }
-        } else if (sourcePaths != null) {
-            // verify individual source paths
-            for (String source : sourcePaths) {
-                try {
-                    URLUtil.parseURL(source);
-                } catch (IllegalArgumentException e) {
-                    throw new MojoExecutionException(e.getMessage(), e);
-                }
-            }
-        } else {
-            throw new MojoExecutionException("One of sourceDirectory or sourcePaths must be provided");
-        }
+        StreamsPojoGenerationConfig config = new StreamsPojoGenerationConfig();
 
+        if( sourcePaths != null && sourcePaths.size() > 0)
+            config.setSourcePaths(sourcePaths);
+        else
+            config.setSourceDirectory(sourceDirectory);
+        config.setTargetPackage(targetPackage);
+        config.setTargetDirectory(targetDirectory);
+
+        StreamsPojoSourceGenerator streamsPojoSourceGenerator = new StreamsPojoSourceGenerator(config);
+        Thread thread = new Thread(streamsPojoSourceGenerator);
+        thread.start();
         try {
-            Jsonschema2Pojo.generate(new StreamsPojoGenerationConfig());
-        } catch (IOException e) {
-            throw new MojoExecutionException("Error generating classes from JSON Schema file(s) " + sourceDirectory, e);
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
         }
+        return;
 
 //        List<Class<?>> serializableClasses = detectSerializableClasses();
 //
@@ -133,29 +130,6 @@ public class StreamsPojoSourceGeneratorMojo extends AbstractMojo {
 
     }
 
-    private void writeFile(String pojoFile, String pojoHive) {
-        try {
-            File path = new File(pojoFile);
-            File dir = path.getParentFile();
-            if( !dir.exists() )
-                dir.mkdirs();
-            Files.write(Paths.get(pojoFile), pojoHive.getBytes(), StandardOpenOption.CREATE_NEW);
-        } catch (Exception e) {
-            LOGGER.error("Write Exception: {}", e);
-        }
-    }
-
-    public Iterator<URL> getSource() {
-        if (null != sourceDirectory) {
-            return Collections.singleton(URLUtil.parseURL(sourceDirectory)).iterator();
-        }
-        List<URL> sourceURLs = new ArrayList<URL>();
-        for (String source : sourcePaths) {
-            sourceURLs.add(URLUtil.parseURL(source));
-        }
-        return sourceURLs.iterator();
-    }
-
 //    public List<Class<?>> detectSerializableClasses() {
 //
 //        Set<Class<? extends Serializable>> classes =

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/7b8ef0a2/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java
new file mode 100644
index 0000000..a99f059
--- /dev/null
+++ b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java
@@ -0,0 +1,96 @@
+package org.apache.streams.plugins.test;
+
+import com.google.common.collect.Lists;
+import junit.framework.TestCase;
+import org.apache.maven.it.Verifier;
+import org.apache.maven.it.util.ResourceExtractor;
+import org.apache.maven.plugin.testing.AbstractMojoTestCase;
+import org.apache.streams.plugins.StreamsPojoGenerationConfig;
+import org.apache.streams.plugins.StreamsPojoSourceGenerator;
+import org.apache.streams.plugins.StreamsPojoSourceGeneratorMojo;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.io.FileFilter;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Test that Activity beans are compatible with the example activities in the spec.
+ */
+public class StreamsPojoSourceGeneratorMojoTest extends TestCase {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoSourceGeneratorMojoTest.class);
+
+    protected void setUp() throws Exception
+    {
+        // required for mojo lookups to work
+        super.setUp();
+    }
+
+    /**
+     * Tests that streams-plugin-pojo running via maven can convert activity schemas into pojos
+     * which then compile.
+     *
+     * @throws Exception
+     */
+    @Test
+    public void testStreamsPojoSourceGeneratorMojo() throws Exception {
+
+        File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/streams-plugin-pojo" );
+
+        Verifier verifier;
+
+        verifier = new Verifier( testDir.getAbsolutePath() );
+
+        List cliOptions = new ArrayList();
+        cliOptions.add( "-N" );
+        verifier.executeGoals( Lists.<String>newArrayList(
+                "clean",
+                "dependency:unpack-dependencies",
+                "generate-sources",
+                "compile"));
+
+        verifier.verifyErrorFreeLog();
+
+        verifier.resetStreams();
+//
+//        File pom = getTestFile(  );
+//        assertNotNull( pom );
+//        assertTrue( pom.exists() );
+//
+//        StreamsPojoSourceGeneratorMojo myMojo = (StreamsPojoSourceGeneratorMojo)
+//                lookupMojo( "pojo", pom);
+//        assertNotNull( myMojo );
+//        myMojo.execute();
+//
+//        File testOutput = new File( "target/generated-sources/test-mojo");
+//        FileFilter javaFilter = new FileFilter() {
+//            @Override
+//            public boolean accept(File pathname) {
+//            if( pathname.getName().endsWith(".java") )
+//                return true;
+//            return false;
+//            }
+//        };
+//
+//        assert( testOutput != null );
+//        assert( testOutput.exists() == true );
+//        assert( testOutput.isDirectory() == true );
+//        assert( testOutput.listFiles(javaFilter).length == 11 );
+//        assert( new File(testOutput + "/traits").exists() == true );
+//        assert( new File(testOutput + "/traits").isDirectory() == true );
+//        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
+//        assert( new File(testOutput + "/objectTypes").exists() == true );
+//        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
+//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
+//        assert( new File(testO`utput + "/verbs").exists() == true );
+//        assert( new File(testOutput + "/verbs").isDirectory() == true );
+//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/7b8ef0a2/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
index 63d4995..667661f 100644
--- a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
@@ -1,11 +1,15 @@
 package org.apache.streams.plugins.test;
 
+import com.google.common.collect.Lists;
+import org.apache.streams.plugins.StreamsPojoGenerationConfig;
+import org.apache.streams.plugins.StreamsPojoSourceGenerator;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.io.File;
 import java.io.FileFilter;
+import java.util.List;
 
 /**
  * Test that Activity beans are compatible with the example activities in the spec.
@@ -21,23 +25,48 @@ public class StreamsPojoSourceGeneratorTest {
      */
     @Test
     public void testStreamsPojoSourceGenerator() throws Exception {
-//        StreamsPojoSourceGenerator streamsPojoSourceGenerator = new StreamsPojoSourceGenerator();
-//        StreamsPojoSourceGenerator.main(new String[0]);
 
-        File testOutput = new File( "./target/generated-sources/streams-pojo");
+        StreamsPojoGenerationConfig config = new StreamsPojoGenerationConfig();
+
+        List<String> sourcePaths = Lists.newArrayList(
+            "target/test-classes/streams-schemas/activity.json",
+            "target/test-classes/streams-schemas/collection.json",
+            "target/test-classes/streams-schemas/media_link.json",
+            "target/test-classes/streams-schemas/object.json",
+            "target/test-classes/streams-schemas/objectTypes",
+            "target/test-classes/streams-schemas/verbs"
+        );
+        config.setSourcePaths(sourcePaths);
+
+//        config.setSourceDirectory("target/test-classes/streams-schemas");
+        config.setTargetPackage("org.apache.streams.pojo.test");
+        config.setTargetDirectory("target/generated-sources/test");
+
+        StreamsPojoSourceGenerator streamsPojoSourceGenerator = new StreamsPojoSourceGenerator(config);
+        Thread thread = new Thread(streamsPojoSourceGenerator);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+
+        File testOutput = new File( "target/generated-sources/test");
         FileFilter javaFilter = new FileFilter() {
             @Override
             public boolean accept(File pathname) {
-                if( pathname.getName().endsWith(".java") )
-                    return true;
-                return false;
+            if( pathname.getName().endsWith(".java") )
+                return true;
+            return false;
             }
         };
 
         assert( testOutput != null );
         assert( testOutput.exists() == true );
         assert( testOutput.isDirectory() == true );
-        assert( testOutput.listFiles(javaFilter).length == 11 );
+//        assert( testOutput.listFiles(javaFilter).length == 11 );
 //        assert( new File(testOutput + "/traits").exists() == true );
 //        assert( new File(testOutput + "/traits").isDirectory() == true );
 //        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/7b8ef0a2/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml b/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
index fbb2864..359179e 100644
--- a/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
+++ b/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
@@ -9,12 +9,49 @@
     <packaging>jar</packaging>
     <name>Test StreamsPojoMojo</name>
 
+    <properties>
+        <jackson.version>2.6.1</jackson.version>
+        <commons-lang.version>2.6</commons-lang.version>
+    </properties>
+
     <dependencies>
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
+            <version>4.11</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schemas</artifactId>
+            <version>${project.version}</version>
             <scope>test</scope>
         </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-annotations</artifactId>
+            <version>${jackson.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-core</artifactId>
+            <version>${jackson.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-databind</artifactId>
+            <version>${jackson.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.datatype</groupId>
+            <artifactId>jackson-datatype-joda</artifactId>
+            <version>${jackson.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>commons-lang</groupId>
+            <artifactId>commons-lang</artifactId>
+            <version>${commons-lang.version}</version>
+        </dependency>
     </dependencies>
 
     <build>
@@ -24,10 +61,16 @@
                 <artifactId>streams-plugin-pojo</artifactId>
                 <version>0.3-incubating-SNAPSHOT</version>
                 <configuration>
-                    <packages>
-                        <package>org.apache.streams.pojo.json</package>
-                    </packages>
-                    <target>target/test-classes/streams-pojo-plugin/</target>
+                    <sourcePaths>
+                        <sourcePath>target/test-classes/streams-schemas/activity.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/collection.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/media_link.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/object.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/objectTypes</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/verbs</sourcePath>
+                    </sourcePaths>
+                    <targetPackage>org.apache.streams.pojo.testmojo</targetPackage>
+                    <targetDirectory>target/generated-sources/test-mojo</targetDirectory>
                 </configuration>
                 <executions>
                     <execution>
@@ -37,6 +80,45 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>2.10</version>
+                <configuration>
+                    <includes>**/*.json</includes>
+                    <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                    <includeGroupIds>org.apache.streams</includeGroupIds>
+                    <includeArtifactIds>streams-schemas</includeArtifactIds>
+                    <includeTypes>jar,test-jar</includeTypes>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>unpack-schemas</id>
+                        <phase>process-resources</phase>
+                        <goals>
+                            <goal>unpack-dependencies</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>build-helper-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>add-source</id>
+                        <phase>generate-sources</phase>
+                        <goals>
+                            <goal>add-source</goal>
+                        </goals>
+                        <configuration>
+                            <sources>
+                                <source>target/generated-sources/test-mojo</source>
+                            </sources>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 </project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/7b8ef0a2/streams-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-pojo/pom.xml b/streams-pojo/pom.xml
index 942156a..055b842 100644
--- a/streams-pojo/pom.xml
+++ b/streams-pojo/pom.xml
@@ -39,6 +39,12 @@
             <artifactId>jsonschema2pojo-core</artifactId>
             <type>jar</type>
             <scope>compile</scope>
+            <exclusions>
+                <exclusion>
+                    <groupId>commons-logging</groupId>
+                    <artifactId>commons-logging</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
 
         <dependency>


[15/53] [abbrv] incubator-streams git commit: WIP for apachecon

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/note.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/note.json b/streams-schemas/src/site/resources/objectTypes/note.json
deleted file mode 100644
index 09de97c..0000000
--- a/streams-schemas/src/site/resources/objectTypes/note.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "note",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "note"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/offer.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/offer.json b/streams-schemas/src/site/resources/objectTypes/offer.json
deleted file mode 100644
index 38db718..0000000
--- a/streams-schemas/src/site/resources/objectTypes/offer.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "offer",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "offer"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/organization.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/organization.json b/streams-schemas/src/site/resources/objectTypes/organization.json
deleted file mode 100644
index a3fd5a2..0000000
--- a/streams-schemas/src/site/resources/objectTypes/organization.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "organization",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "organization"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/page.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/page.json b/streams-schemas/src/site/resources/objectTypes/page.json
deleted file mode 100644
index 4f76aa2..0000000
--- a/streams-schemas/src/site/resources/objectTypes/page.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "page",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "page"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/permission.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/permission.json b/streams-schemas/src/site/resources/objectTypes/permission.json
deleted file mode 100644
index 32b395c..0000000
--- a/streams-schemas/src/site/resources/objectTypes/permission.json
+++ /dev/null
@@ -1,36 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "permission",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "permission"
-        },
-        "scope": {
-            "type": "object",
-            "extends": {
-              "$ref": "../object.json"
-            }
-        },
-        "actions": {
-            "type": "array",
-            "items": {
-               "type": "string",
-               "enumeration": [
-                  "create",
-                  "delete",
-                  "modify"
-               ]
-            }
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/person.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/person.json b/streams-schemas/src/site/resources/objectTypes/person.json
deleted file mode 100644
index f42eb8e..0000000
--- a/streams-schemas/src/site/resources/objectTypes/person.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "person",
-    "description": "vCard Format. Does not match PoCO",
-    "extends": [
-        {
-            "$ref": "../object.json"
-        },
-        {
-            "$ref": "http://www.json-schema.org/card"
-        }
-    ],
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "person"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/photo-album.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/photo-album.json b/streams-schemas/src/site/resources/objectTypes/photo-album.json
deleted file mode 100644
index 933804b..0000000
--- a/streams-schemas/src/site/resources/objectTypes/photo-album.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "article",
-    "extends": {
-        "$ref": "../objectTypes/list.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "photo-album"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/photo.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/photo.json b/streams-schemas/src/site/resources/objectTypes/photo.json
deleted file mode 100644
index 347f25c..0000000
--- a/streams-schemas/src/site/resources/objectTypes/photo.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "photo",
-    "extends": {
-        "$ref": "../objectTypes/file.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "photo"
-        },
-        "displayName": {
-            "type": "string",
-            "default": "a photo"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/place.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/place.json b/streams-schemas/src/site/resources/objectTypes/place.json
deleted file mode 100644
index bb96a79..0000000
--- a/streams-schemas/src/site/resources/objectTypes/place.json
+++ /dev/null
@@ -1,43 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "place",
-    "extends": [
-        {
-            "$ref": "../object.json"
-        }
-    ],
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "place"
-        },
-        "address": {
-          "type": "object",
-          "extends": [
-            {
-              "$ref": "http://www.json-schema.org/address"
-            }
-          ]
-        },
-        "position": {
-          "type": "object",
-          "properties": {
-            "altitude": {
-              "type": "number"
-            },
-            "latitude": {
-              "type": "number"
-            },
-            "longitude": {
-              "type": "number"
-            }
-          }
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/playlist.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/playlist.json b/streams-schemas/src/site/resources/objectTypes/playlist.json
deleted file mode 100644
index 6ce9dd2..0000000
--- a/streams-schemas/src/site/resources/objectTypes/playlist.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "playlist",
-    "extends": {
-        "$ref": "../objectTypes/list.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "playlist"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/process.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/process.json b/streams-schemas/src/site/resources/objectTypes/process.json
deleted file mode 100644
index d717cc7..0000000
--- a/streams-schemas/src/site/resources/objectTypes/process.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "process",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "process"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/product.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/product.json b/streams-schemas/src/site/resources/objectTypes/product.json
deleted file mode 100644
index 4e035cf..0000000
--- a/streams-schemas/src/site/resources/objectTypes/product.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "product",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "product"
-        },
-        "fullImage": {
-            "type": "object",
-            "extends": {
-              "$ref": "../media_link.json"
-            }
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/property.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/property.json b/streams-schemas/src/site/resources/objectTypes/property.json
deleted file mode 100644
index 0cd630e..0000000
--- a/streams-schemas/src/site/resources/objectTypes/property.json
+++ /dev/null
@@ -1,48 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "property",
-    "description": "A property describes name, path and value. Can be used with delete, update or post verbs",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "property"
-        },
-        "displayName": {
-            "type": "string",
-            "description": "The human readable name of the property in the appropriate language",
-            "optional": true
-        },
-        "path": {
-            "type": "string",
-            "description": "dot delimited path to the property in the target. Ex: streetAddress"
-        }
-    },
-    "example": {
-        "actor": {
-            "id": 1212,
-            "displayName": "Peter"
-        },
-        "verb": "update",
-        "time": "2010-08-02T15:29:00Z",
-        "object": {
-            "objectType": "property",
-            "displayName": "street address",
-            "path": "streetAddress",
-            "content": "234 Amazing St"
-        },
-        "target": {
-            "id": 12121,
-            "time": "2010-08-02T15:29:00Z",
-            "displayName": "Peter's House"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/question.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/question.json b/streams-schemas/src/site/resources/objectTypes/question.json
deleted file mode 100644
index cccdfe0..0000000
--- a/streams-schemas/src/site/resources/objectTypes/question.json
+++ /dev/null
@@ -1,28 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "question",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "question"
-        },
-        "options": {
-            "type": "array",
-            "items": {
-               "type": "object",
-                "extends": {
-                  "$ref": "../object.json"
-                }
-            }
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/review.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/review.json b/streams-schemas/src/site/resources/objectTypes/review.json
deleted file mode 100644
index 7629cb6..0000000
--- a/streams-schemas/src/site/resources/objectTypes/review.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "review",
-    "extends": {
-        "$ref": "../objectTypes/article.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "review"
-        },
-        "rating": {
-           "type": "number"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/role.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/role.json b/streams-schemas/src/site/resources/objectTypes/role.json
deleted file mode 100644
index 25524ab..0000000
--- a/streams-schemas/src/site/resources/objectTypes/role.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "role",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "role"
-        },
-        "members": {
-            "type": "object",
-            "extends": {
-              "$ref": "../collection.json"
-            }
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/service.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/service.json b/streams-schemas/src/site/resources/objectTypes/service.json
deleted file mode 100644
index 3d4a496..0000000
--- a/streams-schemas/src/site/resources/objectTypes/service.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "service",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "service"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/song.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/song.json b/streams-schemas/src/site/resources/objectTypes/song.json
deleted file mode 100644
index 46d6eb0..0000000
--- a/streams-schemas/src/site/resources/objectTypes/song.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "song",
-    "extends": {
-        "$ref": "../objectTypes/audio.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "song"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/status.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/status.json b/streams-schemas/src/site/resources/objectTypes/status.json
deleted file mode 100644
index a029f19..0000000
--- a/streams-schemas/src/site/resources/objectTypes/status.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "status",
-    "extends": {
-        "$ref": "../objectTypes/note.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "song"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/task.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/task.json b/streams-schemas/src/site/resources/objectTypes/task.json
deleted file mode 100644
index fb2f39f..0000000
--- a/streams-schemas/src/site/resources/objectTypes/task.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "task",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "task"
-        },
-        "by": {
-          "type": "string",
-          "format": "date-time"
-        },
-        "prerequisites": {
-          "type": "array",
-          "items": {
-            "type": "object",
-            "$ref": "../activity.json"
-          }
-        },
-        "required": {
-          "type": "boolean"
-        },
-        "supersedes": {
-          "type": "array",
-          "items": {
-            "type": "object",
-            "$ref": "../activity.json"
-          }
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/team.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/team.json b/streams-schemas/src/site/resources/objectTypes/team.json
deleted file mode 100644
index 37419a0..0000000
--- a/streams-schemas/src/site/resources/objectTypes/team.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "team",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "team"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/video.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/video.json b/streams-schemas/src/site/resources/objectTypes/video.json
deleted file mode 100644
index 7ac63d8..0000000
--- a/streams-schemas/src/site/resources/objectTypes/video.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "video",
-    "extends": {
-        "$ref": "../objectTypes/file.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "video"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/accept.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/accept.json b/streams-schemas/src/site/resources/verbs/accept.json
deleted file mode 100644
index a9f91fe..0000000
--- a/streams-schemas/src/site/resources/verbs/accept.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Accept",
-    "description": "Indicates that that the actor has accepted the object. For instance, a person accepting an award, or accepting an assignment.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "accept"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} accepted {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/access.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/access.json b/streams-schemas/src/site/resources/verbs/access.json
deleted file mode 100644
index 156e3cb..0000000
--- a/streams-schemas/src/site/resources/verbs/access.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Access",
-    "description": "Indicates that the actor has accessed the object. For instance, a person accessing a room, or accessing a file.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "access"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} accessed {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/acknowledge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/acknowledge.json b/streams-schemas/src/site/resources/verbs/acknowledge.json
deleted file mode 100644
index 2e84c43..0000000
--- a/streams-schemas/src/site/resources/verbs/acknowledge.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Acknowledge",
-    "description": "Indicates that the actor has acknowledged the object. This effectively signals that the actor is aware of the object's existence.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "acknowledge"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} acknowledge {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/add.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/add.json b/streams-schemas/src/site/resources/verbs/add.json
deleted file mode 100644
index cec0c58..0000000
--- a/streams-schemas/src/site/resources/verbs/add.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Add",
-    "description": "Indicates that the actor has added the object to the target. For instance, adding a photo to an album.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "add"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} added {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/agree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/agree.json b/streams-schemas/src/site/resources/verbs/agree.json
deleted file mode 100644
index 5095153..0000000
--- a/streams-schemas/src/site/resources/verbs/agree.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Agree",
-    "description": "Indicates that the actor agrees with the object. For example, a person agreeing with an argument, or expressing agreement with a particular issue.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "agree"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} agrees with {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/append.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/append.json b/streams-schemas/src/site/resources/verbs/append.json
deleted file mode 100644
index 648d192..0000000
--- a/streams-schemas/src/site/resources/verbs/append.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Append",
-    "description": "Indicates that the actor has appended the object to the target. For instance, a person appending a new record to a database.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "append"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} append {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/approve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/approve.json b/streams-schemas/src/site/resources/verbs/approve.json
deleted file mode 100644
index ec66f9b..0000000
--- a/streams-schemas/src/site/resources/verbs/approve.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Approve",
-    "description": "Indicates that the actor has approved the object. For instance, a manager might approve a travel request.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "approve"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} approved {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/archive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/archive.json b/streams-schemas/src/site/resources/verbs/archive.json
deleted file mode 100644
index 24aea16..0000000
--- a/streams-schemas/src/site/resources/verbs/archive.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Archive",
-    "description": "Indicates that the actor has archived the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "archive"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} archived {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/assign.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/assign.json b/streams-schemas/src/site/resources/verbs/assign.json
deleted file mode 100644
index 8fe5458..0000000
--- a/streams-schemas/src/site/resources/verbs/assign.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Assign",
-    "description": "Indicates that the actor has assigned the object to the target.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "assign"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} assigned {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/at.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/at.json b/streams-schemas/src/site/resources/verbs/at.json
deleted file mode 100644
index 42c1222..0000000
--- a/streams-schemas/src/site/resources/verbs/at.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "At",
-    "description": "Indicates that the actor is currently located at the object. For instance, a person being at a specific physical location.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "assign"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} assigned {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/attach.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/attach.json b/streams-schemas/src/site/resources/verbs/attach.json
deleted file mode 100644
index 77ff605..0000000
--- a/streams-schemas/src/site/resources/verbs/attach.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Attach",
-    "description": "Indicates that the actor has attached the object to the target.For instance, a person attaching a file to a wiki page or an email.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "attach"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} attached {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/attend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/attend.json b/streams-schemas/src/site/resources/verbs/attend.json
deleted file mode 100644
index 07e60fd..0000000
--- a/streams-schemas/src/site/resources/verbs/attend.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Attend",
-    "description": "Indicates that the actor has attended the object. For instance, a person attending a meeting.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "attend"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} attended {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/author.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/author.json b/streams-schemas/src/site/resources/verbs/author.json
deleted file mode 100644
index adc8b28..0000000
--- a/streams-schemas/src/site/resources/verbs/author.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Author",
-    "description": "Indicates that the actor has authored the object. Note that this is a more specific form of the verb \"create\".",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "author"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} authored {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/authorize.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/authorize.json b/streams-schemas/src/site/resources/verbs/authorize.json
deleted file mode 100644
index 7439b06..0000000
--- a/streams-schemas/src/site/resources/verbs/authorize.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Authorize",
-    "description": "Indicates that the actor has authorized the object. If a target is specified, it means that the authorization is specifically in regards to the target. For instance, a service can authorize a person to access a given application; in which case the actor is the service, the object is the person, and the target is the application. In contrast, a person can authorize a request; in which case the actor is the person and the object is the request and there might be no explicit target.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "authorize"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} authorized {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/borrow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/borrow.json b/streams-schemas/src/site/resources/verbs/borrow.json
deleted file mode 100644
index ede59c1..0000000
--- a/streams-schemas/src/site/resources/verbs/borrow.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Borrow",
-    "description": "Indicates that the actor has borrowed the object. If a target is specified, it identifies the entity from which the object was borrowed. For instance, if a person borrows a book from a library, the person is the actor, the book is the object and the library is the target.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "borrow"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} borrow {object.displayName} from {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/build.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/build.json b/streams-schemas/src/site/resources/verbs/build.json
deleted file mode 100644
index a90441f..0000000
--- a/streams-schemas/src/site/resources/verbs/build.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Build",
-    "description": "Indicates that the actor has built the object. For example, if a person builds a model or compiles code.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "build"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} built {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/cancel.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/cancel.json b/streams-schemas/src/site/resources/verbs/cancel.json
deleted file mode 100644
index 4ab2406..0000000
--- a/streams-schemas/src/site/resources/verbs/cancel.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Cancel",
-    "description": "Indicates that the actor has canceled the object. For instance, canceling a calendar event.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "cancel"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} cancelled {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/checkin.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/checkin.json b/streams-schemas/src/site/resources/verbs/checkin.json
deleted file mode 100644
index d59a8c2..0000000
--- a/streams-schemas/src/site/resources/verbs/checkin.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "checkin",
-    "description": "Indicates that the actor has checked-in to the object. For instance, a person checking-in to a Place.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "checkin"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} checked in at {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/close.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/close.json b/streams-schemas/src/site/resources/verbs/close.json
deleted file mode 100644
index 7aa049d..0000000
--- a/streams-schemas/src/site/resources/verbs/close.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Close",
-    "description": "Indicates that the actor has closed the object. For instance, the object could represent a ticket being tracked in an issue management system.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "close"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} closed {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/complete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/complete.json b/streams-schemas/src/site/resources/verbs/complete.json
deleted file mode 100644
index 4a95d48..0000000
--- a/streams-schemas/src/site/resources/verbs/complete.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Complete",
-    "description": "Indicates that the actor has completed the object",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "complete"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} completed {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/confirm.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/confirm.json b/streams-schemas/src/site/resources/verbs/confirm.json
deleted file mode 100644
index aa8d45c..0000000
--- a/streams-schemas/src/site/resources/verbs/confirm.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Confirm",
-    "description": "Indicates that the actor has confirmed or agrees with the object. For instance, a software developer might confirm an issue reported against a product.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "confirm"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} confirmed {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/consume.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/consume.json b/streams-schemas/src/site/resources/verbs/consume.json
deleted file mode 100644
index 3dc558a..0000000
--- a/streams-schemas/src/site/resources/verbs/consume.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Consume",
-    "description": "Indicates that the actor has consumed the object. The specific meaning is dependent largely on the object's type. For instance, an actor may \"consume\" an audio object, indicating that the actor has listened to it; or an actor may \"consume\" a book, indicating that the book has been read. As such, the \"consume\" verb is a more generic form of other more specific verbs such as \"read\" and \"play\".",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "consume"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} consumed {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/create.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/create.json b/streams-schemas/src/site/resources/verbs/create.json
deleted file mode 100644
index dda3012..0000000
--- a/streams-schemas/src/site/resources/verbs/create.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Create",
-    "description": "Indicates that the actor has created the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "create"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} created {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/delete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/delete.json b/streams-schemas/src/site/resources/verbs/delete.json
deleted file mode 100644
index 39966c9..0000000
--- a/streams-schemas/src/site/resources/verbs/delete.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Delete",
-    "description": "Indicates that the actor has deleted the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "delete"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} deleted {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/deliver.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/deliver.json b/streams-schemas/src/site/resources/verbs/deliver.json
deleted file mode 100644
index a4b5648..0000000
--- a/streams-schemas/src/site/resources/verbs/deliver.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Deliver",
-    "description": "Indicates that the actor has delivered the object. For example, delivering a package.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "deliver"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} delivered {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/deny.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/deny.json b/streams-schemas/src/site/resources/verbs/deny.json
deleted file mode 100644
index 5bf473b..0000000
--- a/streams-schemas/src/site/resources/verbs/deny.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Deny",
-    "description": "Indicates that the actor has denied the object. For example, a manager may deny a travel request.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "deny"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} denied {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/disagree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/disagree.json b/streams-schemas/src/site/resources/verbs/disagree.json
deleted file mode 100644
index b2eb0c2..0000000
--- a/streams-schemas/src/site/resources/verbs/disagree.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Disagree",
-    "description": "Indicates that the actor disagrees with the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "disagree"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} disagrees with {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/dislike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/dislike.json b/streams-schemas/src/site/resources/verbs/dislike.json
deleted file mode 100644
index e33cb26..0000000
--- a/streams-schemas/src/site/resources/verbs/dislike.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Dislike",
-    "description": "Indicates that the actor dislikes the object. Note that the \"dislike\" verb is distinct from the \"unlike\" verb which assumes that the object had been previously \"liked\".",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "dislike"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} dislikes {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/experience.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/experience.json b/streams-schemas/src/site/resources/verbs/experience.json
deleted file mode 100644
index b760a5d..0000000
--- a/streams-schemas/src/site/resources/verbs/experience.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Experience",
-    "description": "Indicates that the actor has experienced the object in some manner. Note that, depending on the specific object types used for both the actor and object, the meaning of this verb can overlap that of the \"consume\" and \"play\" verbs. For instance, a person might \"experience\" a movie; or \"play\" the movie; or \"consume\" the movie. The \"experience\" verb can be considered a more generic form of other more specific verbs as \"consume\", \"play\", \"watch\", \"listen\", and \"read\"",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "experience"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} experienced {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/favorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/favorite.json b/streams-schemas/src/site/resources/verbs/favorite.json
deleted file mode 100644
index fa7afa3..0000000
--- a/streams-schemas/src/site/resources/verbs/favorite.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Favorite",
-    "description": "Indicates that the actor marked the object as an item of special interest.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "favorite"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} marked {object.displayName} as a favorite"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/find.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/find.json b/streams-schemas/src/site/resources/verbs/find.json
deleted file mode 100644
index b1a7dacc..0000000
--- a/streams-schemas/src/site/resources/verbs/find.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Find",
-    "description": "Indicates that the actor has found the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "find"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} found {object.displayName}."
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/flag-as-inappropriate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/flag-as-inappropriate.json b/streams-schemas/src/site/resources/verbs/flag-as-inappropriate.json
deleted file mode 100644
index e6657aa..0000000
--- a/streams-schemas/src/site/resources/verbs/flag-as-inappropriate.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Flag-As-Inappropriate",
-    "description": "Indicates that the actor has flagged the object as being inappropriate for some reason. When using this verb, the context property can be used to provide additional detail about why the object has been flagged.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "flag-as-inappropriate"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} flagged {object.displayName} as inappropriate."
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/follow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/follow.json b/streams-schemas/src/site/resources/verbs/follow.json
deleted file mode 100644
index 8f50b89..0000000
--- a/streams-schemas/src/site/resources/verbs/follow.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Follow",
-    "description": "Indicates that the actor began following the activity of the object. In most cases, the objectType will be a \"person\", but it can potentially be of any type that can sensibly generate activity. Processors MAY ignore (silently drop) successive identical \"follow\" activities.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "follow"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} started following {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/give.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/give.json b/streams-schemas/src/site/resources/verbs/give.json
deleted file mode 100644
index a9b6e74..0000000
--- a/streams-schemas/src/site/resources/verbs/give.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Give",
-    "description": "Indicates that the actor is giving an object to the target. Examples include one person giving a badge object to another person. The object identifies the object being given. The target identifies the receiver.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "give"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} gave {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/host.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/host.json b/streams-schemas/src/site/resources/verbs/host.json
deleted file mode 100644
index 8c59cd0..0000000
--- a/streams-schemas/src/site/resources/verbs/host.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Host",
-    "description": "Indicates that the actor is hosting the object. As in hosting an event, or hosting a service.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "host"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} is hosting {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/ignore.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/ignore.json b/streams-schemas/src/site/resources/verbs/ignore.json
deleted file mode 100644
index 442de31..0000000
--- a/streams-schemas/src/site/resources/verbs/ignore.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Ignore",
-    "description": "Indicates that the actor has ignored the object. For instance, this verb may be used when an actor has ignored a friend request, in which case the object may be the request-friend activity.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "ignore"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} ignored {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/insert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/insert.json b/streams-schemas/src/site/resources/verbs/insert.json
deleted file mode 100644
index 99db2ec..0000000
--- a/streams-schemas/src/site/resources/verbs/insert.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Insert",
-    "description": "Indicates that the actor has inserted the object into the target.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "insert"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} inserted {object.displayName} into {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/install.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/install.json b/streams-schemas/src/site/resources/verbs/install.json
deleted file mode 100644
index e3d6e0c..0000000
--- a/streams-schemas/src/site/resources/verbs/install.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Install",
-    "description": "Indicates that the actor has installed the object, as in installing an application.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "install"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} installed {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/interact.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/interact.json b/streams-schemas/src/site/resources/verbs/interact.json
deleted file mode 100644
index d589ce4..0000000
--- a/streams-schemas/src/site/resources/verbs/interact.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Interact",
-    "description": "Indicates that the actor has interacted with the object. For instance, when one person interacts with another.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "interact"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} interacted with {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/invite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/invite.json b/streams-schemas/src/site/resources/verbs/invite.json
deleted file mode 100644
index 34a8691..0000000
--- a/streams-schemas/src/site/resources/verbs/invite.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Invite",
-    "description": "Indicates that the actor has invited the object, typically a person object, to join or participate in the object described by the target. The target could, for instance, be an event, group or a service.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "invite"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} invited {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/join.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/join.json b/streams-schemas/src/site/resources/verbs/join.json
deleted file mode 100644
index 78daed8..0000000
--- a/streams-schemas/src/site/resources/verbs/join.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Join",
-    "description": "Indicates that the actor has become a member of the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "join"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} joined {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/leave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/leave.json b/streams-schemas/src/site/resources/verbs/leave.json
deleted file mode 100644
index 1ce73bc..0000000
--- a/streams-schemas/src/site/resources/verbs/leave.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Leave",
-    "description": "Indicates that the actor has left the object. For instance, a Person leaving a Group or checking-out of a Place.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "leave"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} left {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/like.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/like.json b/streams-schemas/src/site/resources/verbs/like.json
deleted file mode 100644
index 4ac1bf7..0000000
--- a/streams-schemas/src/site/resources/verbs/like.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Like",
-    "description": "Indicates that the actor marked the object as an item of special interest.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "like"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} likes {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/listen.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/listen.json b/streams-schemas/src/site/resources/verbs/listen.json
deleted file mode 100644
index 3476144..0000000
--- a/streams-schemas/src/site/resources/verbs/listen.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Listen",
-    "description": "Indicates that the actor has listened to the object. This is typically only applicable for objects representing audio content, such as music, an audio-book, or a radio broadcast.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "listen"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} listened to {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/lose.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/lose.json b/streams-schemas/src/site/resources/verbs/lose.json
deleted file mode 100644
index 60899ba..0000000
--- a/streams-schemas/src/site/resources/verbs/lose.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Lose",
-    "description": "Indicates that the actor has lost the object. For instance, if a person loses a game.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "lose"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} lost {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/make-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/make-friend.json b/streams-schemas/src/site/resources/verbs/make-friend.json
deleted file mode 100644
index a6440f1..0000000
--- a/streams-schemas/src/site/resources/verbs/make-friend.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Befriend",
-    "description": "Indicates the creation of a friendship that is reciprocated by the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "make-friend"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} is now friends with {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/open.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/open.json b/streams-schemas/src/site/resources/verbs/open.json
deleted file mode 100644
index 0145bab..0000000
--- a/streams-schemas/src/site/resources/verbs/open.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Open",
-    "description": "Indicates that the actor has opened the object. For instance, the object could represent a ticket being tracked in an issue management system.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "open"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} opened {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/play.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/play.json b/streams-schemas/src/site/resources/verbs/play.json
deleted file mode 100644
index 3f25748..0000000
--- a/streams-schemas/src/site/resources/verbs/play.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Play",
-    "description": "Indicates that the actor spent some time enjoying the object. For example, if the object is a video this indicates that the subject watched all or part of the video.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "play"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} played {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/post.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/post.json b/streams-schemas/src/site/resources/verbs/post.json
deleted file mode 100644
index ea1ad39..0000000
--- a/streams-schemas/src/site/resources/verbs/post.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Post",
-    "description": "To publish an object",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "post"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} posted {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/present.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/present.json b/streams-schemas/src/site/resources/verbs/present.json
deleted file mode 100644
index bcfb1dc..0000000
--- a/streams-schemas/src/site/resources/verbs/present.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Present",
-    "description": "Indicates that the actor has presented the object. For instance, when a person gives a presentation at a conference.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "present"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} presented {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/purchase.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/purchase.json b/streams-schemas/src/site/resources/verbs/purchase.json
deleted file mode 100644
index 303386a..0000000
--- a/streams-schemas/src/site/resources/verbs/purchase.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Purchase",
-    "description": "Indicates that the actor has purchased the object. If a target is specified, in indicates the entity from which the object was purchased.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "purchase"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} purchased {object.displayName} from {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/verbs/qualify.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/qualify.json b/streams-schemas/src/site/resources/verbs/qualify.json
deleted file mode 100644
index 974448f..0000000
--- a/streams-schemas/src/site/resources/verbs/qualify.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "Qualify",
-    "description": "Indicates that the actor has qualified for the object. If a target is specified, it indicates the context within which the qualification applies.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "qualify"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} qualified {object.displayName}"
-        }
-    }
-}



[50/53] [abbrv] incubator-streams git commit: Added missing license headers for pig plugin

Posted by mf...@apache.org.
Added missing license headers for pig plugin


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/be7323de
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/be7323de
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/be7323de

Branch: refs/heads/invalid_headers
Commit: be7323de851081612d7194275c17d08e6685bc2d
Parents: 536acbd
Author: Matt Franklin <mf...@apache.org>
Authored: Wed Oct 12 14:22:29 2016 -0400
Committer: Matt Franklin <mf...@apache.org>
Committed: Wed Oct 12 14:22:29 2016 -0400

----------------------------------------------------------------------
 streams-plugins/streams-plugin-pig/pom.xml       |  1 +
 .../plugins/pig/StreamsPigGenerationConfig.java  | 19 +++++++++++++++++++
 .../plugins/pig/StreamsPigResourceGenerator.java | 19 +++++++++++++++++++
 .../pig/StreamsPigResourceGeneratorMojo.java     | 19 +++++++++++++++++++
 .../test/StreamsPigResourceGeneratorCLITest.java | 19 +++++++++++++++++++
 .../StreamsPigResourceGeneratorMojoTest.java     | 19 +++++++++++++++++++
 .../test/StreamsPigResourceGeneratorTest.java    | 19 +++++++++++++++++++
 .../test/resources/streams-plugin-pig/pom.xml    | 19 +++++++++++++++++++
 8 files changed, 134 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/be7323de/streams-plugins/streams-plugin-pig/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/pom.xml b/streams-plugins/streams-plugin-pig/pom.xml
index 095848a..4ae7810 100644
--- a/streams-plugins/streams-plugin-pig/pom.xml
+++ b/streams-plugins/streams-plugin-pig/pom.xml
@@ -6,6 +6,7 @@
   ~ regarding copyright ownership.  The ASF licenses this file
   ~ to you under the Apache License, Version 2.0 (the
   ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
   ~
   ~   http://www.apache.org/licenses/LICENSE-2.0
   ~

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/be7323de/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigGenerationConfig.java b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigGenerationConfig.java
index 1b346f4..2af8eeb 100644
--- a/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigGenerationConfig.java
+++ b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigGenerationConfig.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.pig;
 
 import org.apache.streams.util.schema.GenerationConfig;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/be7323de/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGenerator.java b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGenerator.java
index f1f94a6..465cdb2 100644
--- a/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGenerator.java
+++ b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGenerator.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.pig;
 
 import com.fasterxml.jackson.databind.JsonNode;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/be7323de/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGeneratorMojo.java b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGeneratorMojo.java
index 571c75a..1d2673f 100644
--- a/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-pig/src/main/java/org/apache/streams/plugins/pig/StreamsPigResourceGeneratorMojo.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.pig;
 
 import org.apache.maven.plugin.AbstractMojo;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/be7323de/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorCLITest.java
index 8190d50..bc99c5b 100644
--- a/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorCLITest.java
+++ b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorCLITest.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.pig.test;
 
 import com.google.common.collect.Lists;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/be7323de/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorMojoTest.java
index 76c4eb2..686f6e2 100644
--- a/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorMojoTest.java
+++ b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorMojoTest.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.pig.test;
 
 import com.google.common.collect.Lists;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/be7323de/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorTest.java b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorTest.java
index 98442ad..438f0c2 100644
--- a/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-pig/src/test/java/org/apache/streams/plugins/pig/test/StreamsPigResourceGeneratorTest.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.pig.test;
 
 import com.google.common.base.Predicate;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/be7323de/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml b/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml
index cc7b5fd..e17d649 100644
--- a/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml
+++ b/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml
@@ -1,3 +1,22 @@
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
 <project xmlns="http://maven.apache.org/POM/4.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">


[35/53] [abbrv] incubator-streams git commit: resolves STREAMS-410

Posted by mf...@apache.org.
resolves STREAMS-410


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/ce7aa24d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/ce7aa24d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/ce7aa24d

Branch: refs/heads/invalid_headers
Commit: ce7aa24dab5a417a0470a0ce8e0f7cd2f3520271
Parents: a726b3c
Author: Elias Ponvert <ep...@gmail.com>
Authored: Tue Oct 11 17:02:40 2016 -0500
Committer: Elias Ponvert <ep...@gmail.com>
Committed: Tue Oct 11 17:02:40 2016 -0500

----------------------------------------------------------------------
 pom.xml                                         |   1 -
 .../streams-processor-lucene/pom.xml            | 163 ---------
 .../lucene/LuceneSimpleTaggingProcessor.java    | 355 -------------------
 .../lucene/LuceneTaggerConfiguration.json       |  29 --
 .../lucene/TestLucenSimpleTaggingProcessor.java | 171 ---------
 .../src/test/resources/TestTags.tsv             |   2 -
 streams-contrib/streams-processor-tika/pom.xml  | 162 ---------
 .../org/apache/streams/tika/CategoryParser.java | 114 ------
 .../org/apache/streams/tika/TikaProcessor.java  | 139 --------
 .../apache/streams/tika/BoilerPipeArticle.json  |  76 ----
 .../apache/streams/tika/TestCategoryParser.java |  30 --
 .../apache/streams/tika/TestTikaProcessor.java  |  29 --
 .../activity-consumer/osgi.bnd                  |   9 -
 .../activity-consumer/pom.xml                   | 171 ---------
 .../activityconsumer/ActivityConsumer.java      |  39 --
 .../ActivityConsumerWarehouse.java              |  31 --
 .../impl/ActivityConsumerWarehouseImpl.java     |  57 ---
 .../impl/PushActivityConsumer.java              | 106 ------
 .../spring/activity-consumer-context.xml        |  28 --
 .../META-INF/spring/activity-consumer-osgi.xml  |  29 --
 .../src/main/resources/readme.txt               |   1 -
 .../activity-registration/osgi.bnd              |   9 -
 .../activity-registration/pom.xml               | 130 -------
 .../ActivityPublisherRegistration.java          |  29 --
 .../ActivityStreamsSubscriberRegistration.java  |  29 --
 .../impl/ActivityPublisherRegistrationImpl.java |  67 ----
 ...tivityStreamsSubscriberRegistrationImpl.java |  67 ----
 .../activity-registration-context-osgi.xml      |  30 --
 .../spring/activity-registration-context.xml    |  29 --
 .../src/main/resources/readme.txt               |   1 -
 .../activity-subscriber/osgi.bnd                |   9 -
 .../activity-subscriber/pom.xml                 | 134 -------
 .../ActivityStreamsSubscriber.java              |  38 --
 .../ActivityStreamsSubscriberWarehouse.java     |  34 --
 .../ActivityStreamsSubscription.java            |  38 --
 .../ActivityStreamsSubscriptionFilter.java      |  34 --
 .../ActivityStreamsSubscriptionOutput.java      |  47 ---
 .../impl/ActivityStreamsSubscriberDelegate.java | 126 -------
 .../ActivityStreamsSubscriberWarehouseImpl.java |  60 ----
 ...yStreamsSubscriptionCassandraFilterImpl.java |  42 ---
 .../impl/ActivityStreamsSubscriptionImpl.java   |  74 ----
 ...vityStreamsSubscriptionLuceneFilterImpl.java |  43 ---
 .../spring/activity-subscriber-context.xml      |  28 --
 .../spring/activity-subscriber-osgi.xml         |  29 --
 .../src/main/resources/readme.txt               |   1 -
 .../src/site/resources/readme.txt               |   1 -
 streams-osgi-components/pom.xml                 |  43 ---
 streams-runtimes/pom.xml                        |   1 -
 .../jsonschema/SparkRuntimeConfiguration.json   |  27 --
 .../streams-runtime-webapp/README.md            |   8 -
 streams-runtimes/streams-runtime-webapp/pom.xml | 250 -------------
 .../aggregation/ActivityAggregator.java         |  59 ---
 .../configuration/EipConfigurator.java          | 201 -----------
 .../ActivityPublisherRegistrationProcessor.java |  72 ----
 ...yStreamsSubscriberRegistrationProcessor.java |  93 -----
 .../routers/ActivityConsumerRouteBuilder.java   |  32 --
 .../ActivityStreamsSubscriberRouteBuilder.java  |  32 --
 .../routers/impl/ActivityConsumerRouter.java    | 144 --------
 .../impl/ActivityStreamsSubscriberRouter.java   | 141 --------
 .../messaging/service/ActivityService.java      |  31 --
 .../messaging/service/SubscriptionService.java  |  29 --
 .../service/impl/CassandraActivityService.java  |  96 -----
 .../impl/CassandraSubscriptionService.java      |  43 ---
 .../META-INF/spring/propertiesLoader.xml        |  35 --
 .../spring/streams-eip-applicationContext.xml   | 113 ------
 .../streams-eip-osgi-component-import.xml       |  38 --
 .../META-INF/spring/streamsCamelContext.xml     |  96 -----
 .../main/resources/META-INF/streams.properties  |  41 ---
 .../impl/CassandraActivityServiceTest.java      |  86 -----
 69 files changed, 4582 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index d51b25f..466e94b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -174,7 +174,6 @@
         <module>streams-contrib</module>
         <module>streams-components</module>
         <module>streams-monitoring</module>
-        <!--<module>streams-osgi-components</module>-->
         <module>streams-pojo</module>
         <module>streams-pojo-extensions</module>
         <module>streams-runtimes</module>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-contrib/streams-processor-lucene/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-processor-lucene/pom.xml b/streams-contrib/streams-processor-lucene/pom.xml
deleted file mode 100644
index d8dba13..0000000
--- a/streams-contrib/streams-processor-lucene/pom.xml
+++ /dev/null
@@ -1,163 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements.  See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership.  The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied.  See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-    <artifactId>streams-processor-lucene</artifactId>
-
-    <parent>
-        <groupId>org.apache.streams</groupId>
-        <artifactId>streams-contrib</artifactId>
-        <version>0.1-SNAPSHOT</version>
-        <relativePath>../pom.xml</relativePath>
-    </parent>
-
-    <properties>
-        <!-- This is the Version Number for the Apache Streams Project -->
-        <streams.version>0.1-SNAPSHOT</streams.version>
-    </properties>
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-config</artifactId>
-            <version>${streams.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-core</artifactId>
-            <version>${streams.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-pojo</artifactId>
-            <version>${streams.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>com.fasterxml.jackson.core</groupId>
-            <artifactId>jackson-core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.fasterxml.jackson.core</groupId>
-            <artifactId>jackson-annotations</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.jsonschema2pojo</groupId>
-            <artifactId>jsonschema2pojo-core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>commons-io</groupId>
-            <artifactId>commons-io</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.commons</groupId>
-            <artifactId>commons-lang3</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.jayway.jsonpath</groupId>
-            <artifactId>json-path</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.jayway.jsonpath</groupId>
-            <artifactId>json-path-assert</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-testing</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-            <type>test-jar</type>
-        </dependency>
-    </dependencies>
-
-    <build>
-        <sourceDirectory>src/main/java</sourceDirectory>
-        <testSourceDirectory>src/test/java</testSourceDirectory>
-        <resources>
-            <resource>
-                <directory>src/main/resources</directory>
-            </resource>
-        </resources>
-        <testResources>
-            <testResource>
-                <directory>src/test/resources</directory>
-            </testResource>
-        </testResources>
-    <plugins>
-        <plugin>
-            <groupId>org.codehaus.mojo</groupId>
-            <artifactId>build-helper-maven-plugin</artifactId>
-            <executions>
-                <execution>
-                    <id>add-source</id>
-                    <phase>generate-sources</phase>
-                    <goals>
-                        <goal>add-source</goal>
-                    </goals>
-                    <configuration>
-                        <sources>
-                            <source>target/generated-sources/jsonschema2pojo/**/*.java</source>
-                        </sources>
-                    </configuration>
-                </execution>
-                <execution>
-                    <id>add-source-jaxb2</id>
-                    <phase>generate-sources</phase>
-                    <goals>
-                        <goal>add-source</goal>
-                    </goals>
-                    <configuration>
-                        <sources>
-                            <source>target/generated-sources/jaxb2</source>
-                        </sources>
-                    </configuration>
-                </execution>
-            </executions>
-        </plugin>
-        <plugin>
-            <groupId>org.jsonschema2pojo</groupId>
-            <artifactId>jsonschema2pojo-maven-plugin</artifactId>
-            <configuration>
-                <addCompileSourceRoot>true</addCompileSourceRoot>
-                <generateBuilders>true</generateBuilders>
-                <sourcePaths>
-                    <sourcePath>${project.basedir}/src/main/jsonschema/org/apache/streams/lucene/LuceneTaggerConfiguration.json</sourcePath>
-                </sourcePaths>
-                <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
-                <targetPackage>org.apache.streams.lucene</targetPackage>
-                <useLongIntegers>true</useLongIntegers>
-                <useJodaDates>true</useJodaDates>
-            </configuration>
-            <executions>
-                <execution>
-                    <goals>
-                        <goal>generate</goal>
-                    </goals>
-                </execution>
-            </executions>
-        </plugin>
-    </plugins>
-    </build>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-contrib/streams-processor-lucene/src/main/java/org/apache/streams/lucene/LuceneSimpleTaggingProcessor.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-processor-lucene/src/main/java/org/apache/streams/lucene/LuceneSimpleTaggingProcessor.java b/streams-contrib/streams-processor-lucene/src/main/java/org/apache/streams/lucene/LuceneSimpleTaggingProcessor.java
deleted file mode 100644
index 2595afd..0000000
--- a/streams-contrib/streams-processor-lucene/src/main/java/org/apache/streams/lucene/LuceneSimpleTaggingProcessor.java
+++ /dev/null
@@ -1,355 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.lucene;
-
-import com.fasterxml.jackson.core.JsonParseException;
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.node.ArrayNode;
-import com.fasterxml.jackson.databind.node.JsonNodeFactory;
-import com.fasterxml.jackson.databind.node.ObjectNode;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Sets;
-import com.google.inject.Injector;
-import com.jayway.jsonpath.InvalidPathException;
-import com.jayway.jsonpath.JsonPath;
-import com.w2olabs.core.graph.CommunityRepository;
-import com.w2olabs.core.graph.CommunityRepositoryResolver;
-import com.w2olabs.core.graph.entities.Entity;
-import com.w2olabs.streams.pojo.W2OActivity;
-import com.w2olabs.util.guice.GuiceInjector;
-import com.w2olabs.util.tagging.SimpleVerbatim;
-import com.w2olabs.util.tagging.engines.international.LanguageTag;
-import com.w2olabs.util.tagging.engines.international.TaggingEngineLanguage;
-import org.apache.avro.data.Json;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.streams.core.StreamsDatum;
-import org.apache.streams.core.StreamsProcessor;
-import org.apache.streams.jackson.StreamsJacksonMapper;
-import org.apache.streams.pojo.json.Activity;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.IOException;
-import java.io.Serializable;
-import java.util.*;
-import java.util.concurrent.LinkedBlockingQueue;
-
-/**
- * References:
- * Some helpful references to help
- * Purpose              URL
- * -------------        ----------------------------------------------------------------
- * [Status Codes]       http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
- * [Test Cases]         http://greenbytes.de/tech/tc/httpredirects/
- * [t.co behavior]      https://dev.twitter.com/docs/tco-redirection-behavior
- */
-
-public class LuceneSimpleTaggingProcessor implements StreamsProcessor
-{
-    private final static String STREAMS_ID = "LuceneSimpleTaggingProcessor";
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(LuceneSimpleTaggingProcessor.class);
-
-    private ObjectMapper mapper;
-
-    private Queue<StreamsDatum> inQueue;
-    private Queue<StreamsDatum> outQueue;
-
-    private String community;
-    private JsonPath[] textPaths;
-    private String[] jsonPathsToText;
-    private List<LanguageTag> tags;
-    private String metaDataKey;
-
-    private static TaggingEngineLanguage<LanguageTag, SimpleVerbatim> taggingEngine;
-
-    /**
-     * Constructor for a tagging processor that will operate on the document of StreamsDatum at the paths noted by
-     * the json paths paramter
-     * @param community
-     * @param jsonPathsToText
-     */
-    public LuceneSimpleTaggingProcessor(String community, String[] jsonPathsToText) {
-        this(community, jsonPathsToText, null, null);
-    }
-
-    /**
-     * Constructor for a tagging processor that will operate on some meta data field of the StreamsDatum indicated by the
-     * meta data key.  The data in the meta data field is still expected to be json or able to be converted to json or
-     * a list of such data.
-     * @param community
-     * @param jsonPathsToText
-     * @param metaDataKey
-     */
-    public LuceneSimpleTaggingProcessor(String community, String[] jsonPathsToText, String metaDataKey) {
-        this(community, jsonPathsToText, metaDataKey, null);
-    }
-
-
-    /**
-     * For testing purposes. LanguageTag are not serializable and need to be set through the community resolver in production.
-     * @param community
-     * @param jsonPathsToText
-     * @param tags
-     */
-    public LuceneSimpleTaggingProcessor(String community, String[] jsonPathsToText, String metaDataKey, List<LanguageTag> tags) {
-        this.community = community;
-        this.jsonPathsToText = jsonPathsToText;
-        this.tags = tags;
-        this.metaDataKey = metaDataKey;
-        verifyJsonPathstoText(this.jsonPathsToText);
-    }
-
-//    public LuceneSimpleTaggingProcessor(Queue<StreamsDatum> inQueue) {
-//        this.inQueue = inQueue;
-//        this.outQueue = new LinkedBlockingQueue<StreamsDatum>();
-//    }
-
-//    public void stop() {
-//
-//    }
-
-    public String getCommunity() {
-        return community;
-    }
-
-    public void setCommunity(String community) {
-        this.community = community;
-    }
-
-    @Override
-    public List<StreamsDatum> process(StreamsDatum entry) {
-
-
-        LOGGER.debug("{} processing {}", STREAMS_ID, entry.getDocument().getClass());
-
-        List<StreamsDatum> result = Lists.newArrayList();
-
-        List<String> jsons = Lists.newLinkedList();
-        ObjectNode node;
-        // first check for valid json
-        if(this.metaDataKey == null)
-            jsons.add(getJson(entry.getDocument()));
-        else
-            getMetaDataJsons(entry, jsons);
-
-        for(String json : jsons) {
-            try {
-                node = (ObjectNode) mapper.readTree(json);
-            } catch (IOException e) {
-                e.printStackTrace();
-                return result;
-            }
-
-            List<SimpleVerbatim> verbatimList = convertEntryToWorkUnit(json);
-            Map<SimpleVerbatim, List<LanguageTag>> objectTags = taggingEngine.findMatches(verbatimList);
-            Set<String> tagSet = Sets.newHashSet();
-            for( List<LanguageTag> fieldtags : objectTags.values() ) {
-                for( LanguageTag tag : fieldtags ) {
-                    tagSet.add(tag.getTag());
-                }
-            }
-
-            ArrayNode tagArray = JsonNodeFactory.instance.arrayNode();
-            Set<String> tags = Sets.newHashSet();
-            for( String tag : tagSet ) {
-                if(tags.add(tag)){
-                    tagArray.add(tag);
-                }
-            }
-
-
-
-            // need utility methods for get / create specific node
-            ObjectNode extensions = (ObjectNode) node.get("extensions");
-            if(extensions == null) {
-                extensions = JsonNodeFactory.instance.objectNode();
-                node.put("extensions", extensions);
-            }
-            ObjectNode w2o = (ObjectNode) extensions.get("w2o");
-            if(w2o == null) {
-                w2o = JsonNodeFactory.instance.objectNode();
-                extensions.put("w2o", w2o);
-            }
-            w2o.put("tags", tagArray);
-            w2o.put("contentTags", tagArray);
-            if(entry.getDocument() instanceof W2OActivity) {
-                entry.setDocument(mapper.convertValue(node, W2OActivity.class));
-            }
-            else if(entry.getDocument() instanceof Activity) {
-                entry.setDocument(mapper.convertValue(node, Activity.class));
-            }
-            else if(entry.getDocument() instanceof String) {
-                try {
-                    entry.setDocument(mapper.writeValueAsString(node));
-                } catch (JsonProcessingException jpe) {
-                    LOGGER.error("Exception while converting ObjectNode to string. Outputing as ObjectNode. {}", jpe);
-                    entry.setDocument(node);
-                }
-            }
-            else {
-                entry.setDocument(node);
-            }
-            result.add(entry);
-        }
-        return result;
-    }
-
-    private void getMetaDataJsons(StreamsDatum datum, List<String> jsons) {
-       if(datum.getMetadata() == null)
-           return;
-        Object obj = datum.getMetadata().get(this.metaDataKey);
-        if(obj == null) {
-            LOGGER.debug("Object at key={} was NULL.", this.metaDataKey);
-            return;
-        }
-        if(obj instanceof List) {
-            List list = (List) obj;
-            String json;
-            for(Object o : list) {
-                json = getJson(o);
-                if(json != null) {
-                    jsons.add(json);
-                }
-            }
-        }
-        else {
-            String json = getJson(obj);
-            if(json != null) {
-                jsons.add(json);
-            }
-        }
-    }
-
-    private String getJson(Object object) {
-        String json = null;
-        if( object instanceof String ) {
-            json = (String) object;
-        } else if(object instanceof Activity){
-            try {
-                json = mapper.writeValueAsString(object);
-            } catch (JsonProcessingException jpe) {
-                json = null;
-                LOGGER.error("Failed to convert Activity to String : {}", jpe);
-            }
-        } else {
-            ObjectNode node = (ObjectNode) object;
-            json = node.asText();
-        }
-        return json;
-    }
-
-    @Override
-    public void prepare(Object o) {
-        mapper = StreamsJacksonMapper.getInstance();
-        if(this.tags == null) {
-            resolver = injector.getInstance(CommunityRepositoryResolver.class);
-            repo = resolver.get(community);
-            List<Entity> entities = repo.getTaggableEntities();
-            taggingEngine = new TaggingEngineLanguage<LanguageTag, SimpleVerbatim>(createLanguageTagsFromRexsterTags(entities));
-        }
-        else {
-            taggingEngine = new TaggingEngineLanguage<LanguageTag, SimpleVerbatim>(this.tags);
-        }
-        compileTextJsonPaths();
-    }
-
-    @Override
-    public void cleanUp() {
-
-    }
-
-    private static List<LanguageTag> createLanguageTagsFromRexsterTags(List<Entity> graphTags) {
-        List<LanguageTag> result = new ArrayList<LanguageTag>(graphTags.size());
-        LOGGER.info("Attempting to convert {} Graph tags into Language tags.", graphTags.size());
-        String tagLang;
-        for(Entity tag : graphTags) {
-//            net.sf.json.JSONObject json = null;
-            try {
-//                json = (net.sf.json.JSONObject) tag;
-                tagLang = tag.getAdditionalProperties().get("language") == null ? "en" : tag.getAdditionalProperties().get("language").toString();
-            } catch (Exception e) {
-                tagLang = "en";
-            }
-            LOGGER.debug("Tag : {}\n{}\n{}", new String[] {tag.getIdentifier(),tag.getQuery(),tagLang});
-            if(TaggingEngineLanguage.SUPPORTED.contains(tagLang)) {
-                try {
-                    result.add(new LanguageTag(tag.getIdentifier(),tag.getQuery(), tagLang));
-                } catch (Exception e) {
-                    e.printStackTrace();
-                    //result.add(new LanguageTag(tag.getIdentifier(), tag.getQuery(), tagLang));
-                }
-            }
-            else {
-                LOGGER.warn("Attempted to load a tag for Language, {}, but that language is not currently supported. SimpleTag is being ignored!");
-            }
-        }
-        LOGGER.info("Loaded {} Language Tags. {} tags were not supported.", result.size(), graphTags.size() - result.size());
-        return result;
-    }
-
-    // Does basic verification that paths are not null and in JsonPath syntax.
-    private String[] verifyJsonPathstoText(String[] jsonPathsToText) {
-        RuntimeException e = null;
-        for(String path : jsonPathsToText) {
-            if(StringUtils.isEmpty(path) || !path.matches("[$][.][a-zA-z0-9.]+")) {
-                LOGGER.error("Invalid JsonPath path : {}", path);
-                e = new RuntimeException("Invalid JsonPath paths!");
-            }
-        }
-        if(e != null)
-            throw e;
-        return jsonPathsToText;
-    }
-
-    // Compiles jsonPathToText to JsonPath
-    private void compileTextJsonPaths() {
-        this.textPaths = new JsonPath[this.jsonPathsToText.length];
-        for(int i=0; i < this.jsonPathsToText.length; ++i) {
-            this.textPaths[i] = JsonPath.compile(this.jsonPathsToText[i]);
-        }
-    }
-
-    private List<SimpleVerbatim> convertEntryToWorkUnit(String json) {
-        List<SimpleVerbatim> textFields = new ArrayList<SimpleVerbatim>();
-        for(JsonPath path : this.textPaths) {
-            try {
-                Object pathObject = path.read(json);
-                if( pathObject instanceof String )
-                    textFields.add(new SimpleVerbatim((String) pathObject) );
-                else if( pathObject instanceof List ) {
-                    List<String> pathObjectList = (List<String>) pathObject;
-                    for( String pathItem : pathObjectList ) {
-                        textFields.add(new SimpleVerbatim(pathItem) );
-                    }
-                }
-            } catch( InvalidPathException x ) {
-                LOGGER.debug("{}: {}", x.getMessage(), path.getPath());
-            } catch( ClassCastException x ) {
-                LOGGER.warn(x.getMessage());
-            }
-        }
-
-        if(textFields.size() == 0)
-            return null;
-
-        return textFields;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-contrib/streams-processor-lucene/src/main/jsonschema/org/apache/streams/lucene/LuceneTaggerConfiguration.json
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-processor-lucene/src/main/jsonschema/org/apache/streams/lucene/LuceneTaggerConfiguration.json b/streams-contrib/streams-processor-lucene/src/main/jsonschema/org/apache/streams/lucene/LuceneTaggerConfiguration.json
deleted file mode 100644
index 048503e..0000000
--- a/streams-contrib/streams-processor-lucene/src/main/jsonschema/org/apache/streams/lucene/LuceneTaggerConfiguration.json
+++ /dev/null
@@ -1,29 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "javaType" : "org.apache.streams.lucene.LuceneTaggerConfiguration",
-    "javaInterfaces": ["java.io.Serializable"],
-    "properties": {
-        "tags": {
-            "type": "array",
-            "items": {
-                "tag": {
-                    "type": "string",
-                    "description": "Tag Identifier"
-                },
-                "query": {
-                    "type": "string",
-                    "description": "Lucene Query"
-                },
-                "language": {
-                    "type": "string",
-                    "description": "Language"
-                }
-            }
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-contrib/streams-processor-lucene/src/test/java/org/apache/streams/lucene/TestLucenSimpleTaggingProcessor.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-processor-lucene/src/test/java/org/apache/streams/lucene/TestLucenSimpleTaggingProcessor.java b/streams-contrib/streams-processor-lucene/src/test/java/org/apache/streams/lucene/TestLucenSimpleTaggingProcessor.java
deleted file mode 100644
index 62355c5..0000000
--- a/streams-contrib/streams-processor-lucene/src/test/java/org/apache/streams/lucene/TestLucenSimpleTaggingProcessor.java
+++ /dev/null
@@ -1,171 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.lucene;
-
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.google.common.collect.Lists;
-import com.jayway.jsonpath.JsonPath;
-import com.w2olabs.streams.pojo.W2OActivity;
-import com.w2olabs.util.tagging.engines.international.LanguageTag;
-import org.apache.streams.core.StreamsDatum;
-import org.apache.streams.pojo.json.Activity;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import static org.junit.Assert.*;
-
-import java.util.List;
-import java.util.Scanner;
-
-/**
- * Created by rebanks on 3/18/14.
- */
-public class TestLucenSimpleTaggingProcessor {
-
-    private static final String ACTIVITY_JSON = "{\"id\":\"id:twitter:post:410898682381615105\",\"actor\":{\"id\":\"91407775\",\"displayName\":\"winchester_ky\",\"attachments\":[],\"upstreamDuplicates\":[],\"downstreamDuplicates\":[]},\"verb\":\"post\",\"object\":{\"id\":\"id:twitter:410898682381615105\",\"objectType\":\"tweet\",\"attachments\":[],\"upstreamDuplicates\":[],\"downstreamDuplicates\":[]},\"published\":1386800854000,\"provider\":{\"id\":\"id:providers:twitter\",\"attachments\":[],\"upstreamDuplicates\":[],\"downstreamDuplicates\":[]},\"title\":\"\",\"content\":\"Men's Basketball baseball soccer Single-Game Tickets Available - A limited number of tickets remain for Kentucky's upcoming men's ... http://t.co/SH5YZGpdRx\",\"links\":[\"http://ow.ly/2C2XL1\"],\"extensions\":{\"twitter\":{\"created_at\":\"Wed Dec 11 22:27:34 +0000 2013\",\"id\":410898682381615105,\"id_str\":\"410898682381615105\",\"text\":\"Men's Basketball Single-Game Tickets Available - A limited number of t
 ickets remain for Kentucky's upcoming men's ... http://t.co/SH5YZGpdRx\",\"source\":\"<a href=\\\"http://www.hootsuite.com\\\" rel=\\\"nofollow\\\">HootSuite</a>\",\"truncated\":false,\"in_reply_to_status_id\":null,\"in_reply_to_status_id_str\":null,\"in_reply_to_user_id\":null,\"in_reply_to_user_id_str\":null,\"in_reply_to_screen_name\":null,\"user\":{\"id\":91407775,\"id_str\":\"91407775\",\"name\":\"Winchester, KY\",\"screen_name\":\"winchester_ky\",\"location\":\"\",\"url\":null,\"description\":null,\"protected\":false,\"followers_count\":136,\"friends_count\":0,\"listed_count\":1,\"created_at\":\"Fri Nov 20 19:29:02 +0000 2009\",\"favourites_count\":0,\"utc_offset\":null,\"time_zone\":null,\"geo_enabled\":false,\"verified\":false,\"statuses_count\":1793,\"lang\":\"en\",\"contributors_enabled\":false,\"is_translator\":false,\"profile_background_color\":\"C0DEED\",\"profile_background_image_url\":\"http://abs.twimg.com/images/themes/theme1/bg.png\",\"profile_background_image_url_
 https\":\"https://abs.twimg.com/images/themes/theme1/bg.png\",\"profile_background_tile\":false,\"profile_image_url\":\"http://pbs.twimg.com/profile_images/613854495/winchester_sociallogo_normal.jpg\",\"profile_image_url_https\":\"https://pbs.twimg.com/profile_images/613854495/winchester_sociallogo_normal.jpg\",\"profile_link_color\":\"0084B4\",\"profile_sidebar_border_color\":\"C0DEED\",\"profile_sidebar_fill_color\":\"DDEEF6\",\"profile_text_color\":\"333333\",\"profile_use_background_image\":true,\"default_profile\":true,\"default_profile_image\":false,\"following\":null,\"follow_request_sent\":null,\"notifications\":null},\"geo\":null,\"coordinates\":null,\"place\":null,\"contributors\":null,\"retweet_count\":0,\"favorite_count\":0,\"entities\":{\"hashtags\":[],\"symbols\":[],\"urls\":[{\"url\":\"http://t.co/SH5YZGpdRx\",\"expanded_url\":\"http://ow.ly/2C2XL1\",\"display_url\":\"ow.ly/2C2XL1\",\"indices\":[118,140]}],\"user_mentions\":[]},\"favorited\":false,\"retweeted\":false,
 \"possibly_sensitive\":false,\"filter_level\":\"medium\",\"lang\":\"en\"},\"location\":{\"id\":\"id:twitter:410898682381615105\",\"coordinates\":null}}}\n";
-    private static final String W2O_ACTIVITY_JSON = "{\"extensions\":{\"w2o\":{\"provider\":\"twitter\",\"analyzer\":\"romance_analyzer\",\"tags\":[\"brand-cascade\",\"language-en\",\"country-ca\"],\"contentTags\":[],\"linkTags\":[],\"lang\":{\"primaryLanguage\":\"en\"}},\"twitter\":{\"retweetCount\":0,\"entities\":{\"symbols\":[],\"urls\":[{\"expanded_url\":\"http://bit.ly/hUmoRz\",\"indices\":[77,99],\"display_url\":\"bit.ly/hUmoRz\",\"url\":\"http://t.co/Ytn45Pbttk\"}],\"hashtags\":[{\"text\":\"SmurfsVillage\",\"indices\":[100,114]}],\"user_mentions\":[{\"id\":188075479,\"name\":\"Beeline Interactive\",\"indices\":[115,128],\"screen_name\":\"BeelineGames\",\"id_str\":\"188075479\"}]}},\"gnip\":{\"matching_rules\":[{\"tag\":\"cascade_CA_CA_en\"}],\"klout_score\":10,\"urls\":[{\"expanded_url\":\"https://itunes.apple.com/us/app/smurfs-village/id399648212?mt=8\",\"url\":\"http://t.co/Ytn45Pbttk\"}],\"klout_profile\":{\"topics\":[],\"klout_user_id\":\"257268143479895040\",\"link\":\"h
 ttp://klout.com/user/id/257268143479895040\"},\"language\":{\"value\":\"fr\"}}},\"id\":\"tag:search.twitter.com,2005:372802927385403392\",\"actor\":{\"id\":\"id:twitter.com:583891967\",\"image\":{\"url\":\"https://si0.twimg.com/sticky/default_profile_images/default_profile_1_normal.png\"},\"displayName\":\"Sabine Chappuis\",\"objectType\":\"person\",\"attachments\":[],\"upstreamDuplicates\":[],\"downstreamDuplicates\":[],\"twitterTimeZone\":\"Brussels\",\"friendsCount\":6,\"favoritesCount\":0,\"link\":\"http://www.twitter.com/spoffff\",\"postedTime\":\"2012-05-18T15:14:35.000Z\",\"links\":[{\"rel\":\"me\",\"href\":null}],\"listedCount\":0,\"languages\":[\"fr\"],\"verified\":false,\"utcOffset\":\"7200\",\"followersCount\":0,\"preferredUsername\":\"spoffff\",\"statusesCount\":87},\"verb\":\"post\",\"object\":{\"id\":\"object:search.twitter.com,2005:372802927385403392\",\"summary\":\"Le Grand Schtroumpf confirme que la cascade magique n'est \\\"Plus tr?\ufffds loin.\\\" http://t.co/Ytn45P
 bttk #SmurfsVillage @BeelineGames\",\"objectType\":\"note\",\"attachments\":[],\"upstreamDuplicates\":[],\"downstreamDuplicates\":[],\"link\":\"http://twitter.com/spoffff/statuses/372802927385403392\",\"postedTime\":\"2013-08-28T19:28:38.000Z\"},\"published\":1377718118000,\"generator\":{\"id\":\"{link}\",\"displayName\":\"Smurfs' Village on iOS\",\"attachments\":[],\"upstreamDuplicates\":[],\"downstreamDuplicates\":[],\"link\":\"https://itunes.apple.com/us/app/smurfs-village/id399648212?mt=8&uo=4\"},\"provider\":{\"id\":\"{link}\",\"displayName\":\"Twitter\",\"objectType\":\"service\",\"attachments\":[],\"upstreamDuplicates\":[],\"downstreamDuplicates\":[],\"link\":\"http://www.twitter.com\"},\"content\":\"Le Grand Schtroumpf confirme soccer que la cascade magique n'est \\\"Plus tr?\ufffds loin.\\\" http://t.co/Ytn45Pbttk #SmurfsVillage @BeelineGames\",\"links\":[],\"guid\":\"A8fccSz7rpKfDJY078VLyw==_201308\",\"link\":\"http://twitter.com/spoffff/statuses/372802927385403392\",\"posted
 Time\":\"2013-08-28T19:28:38.000Z\",\"objectType\":\"activity\",\"twitter_filter_level\":\"medium\"}\n";
-    private static final String LINK_EXPANDER_JSON = "{\"body\":\"Analise baseball Coady W2O Lead, EMEA Twitter Linkedin\\nRyan Flinn Director, Earned Media Twitter Linkedin\\nAdam Cohen W2O Lead, Boston Twitter Linkedin\\nSarah Savage Managing Director, Healthcare Twitter Linkedin\\nCarolyn Wang Practice Lead, Healthcare Twitter Linkedin\\nKathy Keanini Group Director, Strategy Twitter Linkedin\\nRob Cronin Practice Lead, Healthcare Twitter Linkedin\\nAnalise Coady W2O Lead, EMEA Twitter Linkedin\\nRyan Flinn Director, Earned Media Twitter Linkedin\\nAdam Cohen W2O Lead, Boston Twitter Linkedin\\nSarah Savage Managing Director, Healthcare Twitter Linkedin\\nCarolyn Wang Practice Lead, Healthcare Twitter Linkedin\\nKathy Keanini Group Director, Strategy Twitter Linkedin\\nRob Cronin Practice Lead, Healthcare Twitter Linkedin\\nOur Thinkers\\nFull-on enterprise consulting, supercharged by the best analytics in the business.\\nProducts & Services\\nMedia\\nPaid. Earned. Shared. Owned.
  You name it, we either mastered it or just invented it.\\nthe w2o group\\n� W2O Group 2014\\n\",\"finalUrl\":\"http://www.wcgworld.com/\",\"locale\":null,\"twitterSite\":null,\"urlParts\":[\"www.wcgworld.com\"],\"twitterCreator\":null,\"finalStatusCode\":\"200\",\"author\":null,\"originalUrl\":\"http://www.wcgworld.com/\",\"title\":\"WCG World\",\"description\":\"Find out what makes The WCG Approach second to none\",\"redirects\":[],\"domain\":\"www.wcgworld.com\",\"wasRedirected\":false,\"facebookApp\":null,\"metaData\":{\"content-type\":\"text/html; charset=UTF-8\",\"viewport\":\"width=device-width, initial-scale=1\",\"title\":\"WCG World\",\"og:title\":\"WCG World\",\"og:description\":\"Find out what makes The WCG Approach second to none\",\"content-encoding\":\"UTF-8\",\"x-ua-compatible\":\"IE=edge\",\"og:site_name\":\"WCG World\",\"dc:title\":\"WCG World\",\"og:image\":\"http://www.wcgworld.com/assets/img/home_banner.png\",\"og:url\":\"http://www.wcgworld.com/\"},\"normalized
 Url\":\"www.wcgworld.com/\",\"keywords\":[\"keywords\",\"news_keywords\"],\"status\":\"SUCCESS\",\"isTracked\":false,\"medium\":null,\"facebookPage\":null,\"failure\":false,\"lastModifiedDate\":null,\"tookInMillis\":110,\"publishedDate\":null,\"siteStatus\":\"ERROR\",\"imageURL\":\"http://www.wcgworld.com/assets/img/home_banner.png\",\"plainText\":null}\n";
-
-    private static List<LanguageTag> tags;
-    private static ObjectMapper mapper;
-
-
-    @BeforeClass
-    public static void setUpTags() {
-        tags = Lists.newLinkedList();
-        Scanner scanner = new Scanner(TestLucenSimpleTaggingProcessor.class.getResourceAsStream("/TestTags.tsv"));
-        while(scanner.hasNextLine()) {
-            String[] line = scanner.nextLine().split("\t");
-            tags.add(new LanguageTag(line[0], line[1], "en"));
-        }
-        mapper = new ObjectMapper();
-    }
-
-    @Test
-    public void testSerializability() {
-        LuceneSimpleTaggingProcessor processor = new LuceneSimpleTaggingProcessor("testCommunity", new String[]{"test","path"});
-        LuceneSimpleTaggingProcessor clone = SerializationUtils.clone(processor);
-    }
-
-    @Test
-    public void testActivityJsonString() {
-        LuceneSimpleTaggingProcessor processor = new LuceneSimpleTaggingProcessor("test", new String[] {"$.content"}, null,tags);
-        processor.prepare(null);
-        List<StreamsDatum> datums = processor.process(new StreamsDatum(ACTIVITY_JSON));
-        assertNotNull(datums);
-        assertEquals(1, datums.size());
-        StreamsDatum datum = datums.get(0);
-        assertNotNull(datum);
-        assertNotNull(datum.getDocument());
-        assertTrue(datum.getDocument() instanceof String);
-        String json = (String)datum.getDocument();
-        List<String> tags = JsonPath.read(json, "$.extensions.w2o.tags");
-        assertEquals(2, tags.size());
-        assertTrue(tags.contains("baseball"));
-        assertTrue(tags.contains("soccer"));
-        tags = JsonPath.read(json, "$.extensions.w2o.contentTags");
-        assertEquals(2, tags.size());
-        assertTrue(tags.contains("baseball"));
-        assertTrue(tags.contains("soccer"));
-    }
-
-    @Test
-    public void testW2OActivityJsonString() {
-        LuceneSimpleTaggingProcessor processor = new LuceneSimpleTaggingProcessor("test", new String[] {"$.content"}, null,tags);
-        processor.prepare(null);
-        List<StreamsDatum> datums = processor.process(new StreamsDatum(W2O_ACTIVITY_JSON));
-        assertNotNull(datums);
-        assertEquals(1, datums.size());
-        StreamsDatum datum = datums.get(0);
-        assertNotNull(datum);
-        assertNotNull(datum.getDocument());
-        assertTrue(datum.getDocument() instanceof String);
-        String json = (String)datum.getDocument();
-        List<String> tags = JsonPath.read(json, "$.extensions.w2o.tags");
-        assertEquals(1, tags.size());
-        assertTrue(tags.contains("soccer"));
-        tags = JsonPath.read(json, "$.extensions.w2o.contentTags");
-        assertEquals(1, tags.size());
-        assertTrue(tags.contains("soccer"));
-    }
-
-    @Test
-    public void testLinkExpanderJsonString() {
-        LuceneSimpleTaggingProcessor processor = new LuceneSimpleTaggingProcessor("test", new String[] {"$.body"}, null, tags);
-        processor.prepare(null);
-        List<StreamsDatum> datums = processor.process(new StreamsDatum(LINK_EXPANDER_JSON));
-        assertNotNull(datums);
-        assertEquals(1, datums.size());
-        StreamsDatum datum = datums.get(0);
-        assertNotNull(datum);
-        assertNotNull(datum.getDocument());
-        assertTrue(datum.getDocument() instanceof String);
-        String json = (String)datum.getDocument();
-        List<String> tags = JsonPath.read(json, "$.extensions.w2o.tags");
-        assertEquals(1, tags.size());
-        assertTrue(tags.contains("baseball"));
-        tags = JsonPath.read(json, "$.extensions.w2o.contentTags");
-        assertEquals(1, tags.size());
-        assertTrue(tags.contains("baseball"));
-    }
-
-    @Test
-    public void testActivityObject() throws Exception {
-        LuceneSimpleTaggingProcessor processor = new LuceneSimpleTaggingProcessor("test", new String[] {"$.content"}, null,tags);
-        processor.prepare(null);
-        List<StreamsDatum> datums = processor.process(new StreamsDatum(mapper.readValue(ACTIVITY_JSON, Activity.class)));
-        assertNotNull(datums);
-        assertEquals(1, datums.size());
-        StreamsDatum datum = datums.get(0);
-        assertNotNull(datum);
-        assertNotNull(datum.getDocument());
-        assertTrue(datum.getDocument() instanceof Activity);
-        String json = mapper.writeValueAsString(datum.getDocument());
-        List<String> tags = JsonPath.read(json, "$.extensions.w2o.tags");
-        assertEquals(2, tags.size());
-        assertTrue(tags.contains("baseball"));
-        assertTrue(tags.contains("soccer"));
-        tags = JsonPath.read(json, "$.extensions.w2o.contentTags");
-        assertEquals(2, tags.size());
-        assertTrue(tags.contains("baseball"));
-        assertTrue(tags.contains("soccer"));
-    }
-
-    @Test
-    public void testW2OActivityObject() throws Exception{
-        LuceneSimpleTaggingProcessor processor = new LuceneSimpleTaggingProcessor("test", new String[] {"$.content"}, null,tags);
-        processor.prepare(null);
-        List<StreamsDatum> datums = processor.process(new StreamsDatum(mapper.readValue(W2O_ACTIVITY_JSON, W2OActivity.class)));
-        assertNotNull(datums);
-        assertEquals(1, datums.size());
-        StreamsDatum datum = datums.get(0);
-        assertNotNull(datum);
-        assertNotNull(datum.getDocument());
-        assertTrue(datum.getDocument() instanceof W2OActivity);
-        String json = (String) mapper.writeValueAsString(datum.getDocument());
-        List<String> tags = JsonPath.read(json, "$.extensions.w2o.tags");
-        assertEquals(1, tags.size());
-        assertTrue(tags.contains("soccer"));
-        tags = JsonPath.read(json, "$.extensions.w2o.contentTags");
-        assertEquals(1, tags.size());
-        assertTrue(tags.contains("soccer"));
-    }
-
-
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-contrib/streams-processor-lucene/src/test/resources/TestTags.tsv
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-processor-lucene/src/test/resources/TestTags.tsv b/streams-contrib/streams-processor-lucene/src/test/resources/TestTags.tsv
deleted file mode 100644
index c6ed3a7..0000000
--- a/streams-contrib/streams-processor-lucene/src/test/resources/TestTags.tsv
+++ /dev/null
@@ -1,2 +0,0 @@
-baseball	baseball OR homerun OR "home run"
-soccer	soccer
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-contrib/streams-processor-tika/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-processor-tika/pom.xml b/streams-contrib/streams-processor-tika/pom.xml
deleted file mode 100644
index 9969e29..0000000
--- a/streams-contrib/streams-processor-tika/pom.xml
+++ /dev/null
@@ -1,162 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements.  See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership.  The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied.  See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-    <artifactId>streams-processor-tika</artifactId>
-
-    <parent>
-        <groupId>org.apache.streams</groupId>
-        <artifactId>streams-contrib</artifactId>
-        <version>0.1-SNAPSHOT</version>
-    </parent>
-
-    <properties>
-        <tika.version>1.5</tika.version>
-    </properties>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-config</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-pojo</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-processor-urls</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>com.fasterxml.jackson.core</groupId>
-            <artifactId>jackson-core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.fasterxml.jackson.core</groupId>
-            <artifactId>jackson-annotations</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.jsonschema2pojo</groupId>
-            <artifactId>jsonschema2pojo-core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.tika</groupId>
-            <artifactId>tika-core</artifactId>
-            <version>${tika.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.tika</groupId>
-            <artifactId>tika-parsers</artifactId>
-            <version>${tika.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>commons-io</groupId>
-            <artifactId>commons-io</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-testing</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-            <type>test-jar</type>
-        </dependency>
-    </dependencies>
-
-    <build>
-        <sourceDirectory>src/main/java</sourceDirectory>
-        <testSourceDirectory>src/test/java</testSourceDirectory>
-        <resources>
-            <resource>
-                <directory>src/main/resources</directory>
-            </resource>
-        </resources>
-        <testResources>
-            <testResource>
-                <directory>src/test/resources</directory>
-            </testResource>
-        </testResources>
-        <plugins>
-             <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>build-helper-maven-plugin</artifactId>
-                <executions>
-                    <execution>
-                        <id>add-source</id>
-                        <phase>generate-sources</phase>
-                        <goals>
-                            <goal>add-source</goal>
-                        </goals>
-                        <configuration>
-                            <sources>
-                                <source>target/generated-sources/jsonschema2pojo/**/*.java</source>
-                            </sources>
-                        </configuration>
-                    </execution>
-                    <execution>
-                        <id>add-source-jaxb2</id>
-                        <phase>generate-sources</phase>
-                        <goals>
-                            <goal>add-source</goal>
-                        </goals>
-                        <configuration>
-                            <sources>
-                                <source>target/generated-sources/jaxb2</source>
-                            </sources>
-                        </configuration>
-                    </execution>
-                </executions>
-            </plugin>
-            <plugin>
-                <groupId>org.jsonschema2pojo</groupId>
-                <artifactId>jsonschema2pojo-maven-plugin</artifactId>
-                <configuration>
-                    <addCompileSourceRoot>true</addCompileSourceRoot>
-                    <generateBuilders>true</generateBuilders>
-                    <sourcePaths>
-                        <sourcePath>${project.basedir}/src/main/jsonschema/org/apache/streams/tika/LinkDetails.json</sourcePath>
-                    </sourcePaths>
-                    <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
-                    <targetPackage>org.apache.streams.tika</targetPackage>
-                    <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>true</useJodaDates>
-                </configuration>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>generate</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-contrib/streams-processor-tika/src/main/java/org/apache/streams/tika/CategoryParser.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-processor-tika/src/main/java/org/apache/streams/tika/CategoryParser.java b/streams-contrib/streams-processor-tika/src/main/java/org/apache/streams/tika/CategoryParser.java
deleted file mode 100644
index 18ff747..0000000
--- a/streams-contrib/streams-processor-tika/src/main/java/org/apache/streams/tika/CategoryParser.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.tika;
-
-import java.io.Serializable;
-import java.io.UnsupportedEncodingException;
-import java.net.URLDecoder;
-import java.util.List;
-
-public class CategoryParser implements Serializable
-{
-    /**
-     * This method takes a URL and from that text alone determines what categories that URL belongs in.
-     * @param url - String URL to categorize
-     * @return categories - A List&lt;String&rt; of categories the URL seemingly belongs in
-     */
-    public static List<String> getCategoriesFromUrl(String url) {
-
-        // Clean the URL to remove useless bits and encoding artifacts
-        String normalizedUrl = normalizeURL(url);
-
-        // Break the url apart and get the good stuff
-        String[] keywords = tokenizeURL(normalizedUrl);
-
-        return null;
-    }
-
-    /**
-     * Removes the protocol, if it exists, from the front and
-     * removes any random encoding characters
-     * Extend this to do other url cleaning/pre-processing
-     * @param url - The String URL to normalize
-     * @return normalizedUrl - The String URL that has no junk or surprises
-     */
-    private static String normalizeURL(String url)
-    {
-        // Decode URL to remove any %20 type stuff
-        String normalizedUrl = url;
-        try {
-            // I've used a URLDecoder that's part of Java here,
-            // but this functionality exists in most modern languages
-            // and is universally called url decoding
-            normalizedUrl = URLDecoder.decode(url, "UTF-8");
-        }
-        catch(UnsupportedEncodingException uee)
-        {
-            System.err.println("Unable to Decode URL. Decoding skipped.");
-            uee.printStackTrace();
-        }
-
-        // Remove the protocol, http:// ftp:// or similar from the front
-        if (normalizedUrl.contains("://"))
-            normalizedUrl = normalizedUrl.split(":\\/\\/")[1];
-
-        // Room here to do more pre-processing
-
-        return normalizedUrl;
-    }
-
-    /**
-     * Takes apart the url into the pieces that make at least some sense
-     * This doesn't guarantee that each token is a potentially valid keyword, however
-     * because that would require actually iterating over them again, which might be
-     * seen as a waste.
-     * @param url - Url to be tokenized
-     * @return tokens - A String array of all the tokens
-     */
-    private static String[] tokenizeURL(String url)
-    {
-        // I assume that we're going to use the whole URL to find tokens in
-        // If you want to just look in the GET parameters, or you want to ignore the domain
-        // or you want to use the domain as a token itself, that would have to be
-        // processed above the next line, and only the remaining parts split
-        String[] tokens = url.split("\\b|_");
-
-        // One could alternatively use a more complex regex to remove more invalid matches
-        // but this is subject to your (?:in)?ability to actually write the regex you want
-
-        // These next two get rid of tokens that are too short, also.
-
-        // Destroys anything that's not alphanumeric and things that are
-        // alphanumeric but only 1 character long
-        //String[] tokens = url.split("(?:[\\W_]+\\w)*[\\W_]+");
-
-        // Destroys anything that's not alphanumeric and things that are
-        // alphanumeric but only 1 or 2 characters long
-        //String[] tokens = url.split("(?:[\\W_]+\\w{1,2})*[\\W_]+");
-
-        return tokens;
-    }
-
-    // How this would be used
-    public static void main(String[] args)
-    {
-        List<String> soQuestionUrlClassifications = getCategoriesFromUrl("http://stackoverflow.com/questions/10046178/pattern-matching-for-url-classification");
-        List<String> googleQueryURLClassifications = getCategoriesFromUrl("https://www.google.com/search?sugexp=chrome,mod=18&sourceid=chrome&ie=UTF-8&q=spring+is+a+new+service+instance+created#hl=en&sugexp=ciatsh&gs_nf=1&gs_mss=spring%20is%20a%20new%20bean%20instance%20created&tok=lnAt2g0iy8CWkY65Te75sg&pq=spring%20is%20a%20new%20bean%20instance%20created&cp=6&gs_id=1l&xhr=t&q=urlencode&pf=p&safe=off&sclient=psy-ab&oq=url+en&gs_l=&pbx=1&bav=on.2,or.r_gc.r_pw.r_cp.r_qf.,cf.osb&fp=2176d1af1be1f17d&biw=1680&bih=965");
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-contrib/streams-processor-tika/src/main/java/org/apache/streams/tika/TikaProcessor.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-processor-tika/src/main/java/org/apache/streams/tika/TikaProcessor.java b/streams-contrib/streams-processor-tika/src/main/java/org/apache/streams/tika/TikaProcessor.java
deleted file mode 100644
index 6d66165..0000000
--- a/streams-contrib/streams-processor-tika/src/main/java/org/apache/streams/tika/TikaProcessor.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.tika;
-
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.datatype.jsonorg.JsonOrgModule;
-import com.google.common.collect.Lists;
-import org.apache.commons.lang.NotImplementedException;
-import org.apache.streams.core.StreamsDatum;
-import org.apache.streams.core.StreamsProcessor;
-import org.apache.streams.jackson.StreamsJacksonMapper;
-import org.apache.streams.pojo.json.Activity;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.List;
-
-/**
- * References:
- * Some helpful references to help
- * Purpose              URL
- * -------------        ----------------------------------------------------------------
- * [Status Codes]       http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
- * [Test Cases]         http://greenbytes.de/tech/tc/httpredirects/
- * [t.co behavior]      https://dev.twitter.com/docs/tco-redirection-behavior
- */
-
-public class TikaProcessor implements StreamsProcessor
-{
-    private final static String STREAMS_ID = "LinkCrawlerProcessor";
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(TikaProcessor.class);
-
-    private ObjectMapper mapper;
-
-    @Override
-    public List<StreamsDatum> process(StreamsDatum entry) {
-
-        List<StreamsDatum> result = Lists.newArrayList();
-
-        LOGGER.debug("{} processing {}", STREAMS_ID, entry.getDocument().getClass());
-
-        Activity activity;
-
-        // get list of shared urls
-        if( entry.getDocument() instanceof Activity) {
-
-            activity = (Activity) entry.getDocument();
-
-        }
-        else if(entry.getDocument() instanceof String) {
-
-            try {
-                activity = mapper.readValue((String) entry.getDocument(), Activity.class);
-            } catch (Exception e) {
-                e.printStackTrace();
-                LOGGER.warn(e.getMessage());
-                return(Lists.newArrayList(entry));
-            }
-
-        }
-        else throw new NotImplementedException();
-
-        List<String> outputLinks = activity.getLinks();
-        // for each
-        for( String link : outputLinks ) {
-
-            LOGGER.debug( "pulling {}", link);
-
-            try {
-                StreamsDatum outputDatum = expandLink(link, entry);
-                if( outputDatum != null )
-                    result.add(outputDatum);
-            } catch (Exception e) {
-                //drop unexpandable links
-                LOGGER.debug("Failed to expand link : {}", link);
-                LOGGER.debug("Excpetion expanding link : {}", e);
-            }
-
-        }
-
-        return result;
-    }
-
-    private StreamsDatum expandLink(String link, StreamsDatum input) {
-
-        LinkCrawler expander = new LinkCrawler((String)link);
-        expander.run();
-        StreamsDatum datum = null;
-        if(input.getId() == null)
-            try {
-                datum = new StreamsDatum(this.mapper.writeValueAsString(expander.getArticle()), expander.getFinalURL());
-            } catch (JsonProcessingException e) {
-                e.printStackTrace();
-                return null;
-            }
-        else
-            try {
-                datum = new StreamsDatum(this.mapper.writeValueAsString(expander.getArticle()), input.getId());
-            } catch (JsonProcessingException e) {
-                e.printStackTrace();
-                return null;
-            }
-        datum.setSequenceid(input.getSequenceid());
-        datum.setMetadata(input.getMetadata());
-        datum.setTimestamp(input.getTimestamp());
-        return datum;
-
-    }
-
-    @Override
-    public void prepare(Object o) {
-        this.mapper = StreamsJacksonMapper.getInstance();
-        this.mapper.registerModule(new JsonOrgModule());
-    }
-
-    @Override
-    public void cleanUp() {
-
-    }
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-contrib/streams-processor-tika/src/main/jsonschema/org/apache/streams/tika/BoilerPipeArticle.json
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-processor-tika/src/main/jsonschema/org/apache/streams/tika/BoilerPipeArticle.json b/streams-contrib/streams-processor-tika/src/main/jsonschema/org/apache/streams/tika/BoilerPipeArticle.json
deleted file mode 100644
index 58f817e..0000000
--- a/streams-contrib/streams-processor-tika/src/main/jsonschema/org/apache/streams/tika/BoilerPipeArticle.json
+++ /dev/null
@@ -1,76 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "properties": {
-        "siteStatus" : {
-            "type" : "string",
-            "enum" : ["SUCCESS", "ERROR"]
-        },
-        "title": {
-            "type": "string"
-        },
-        "description": {
-            "type": "string"
-        },
-        "body": {
-            "type": "string"
-        },
-        "plainText": {
-            "type": "string"
-        },
-        "medium": {
-            "type": "string"
-        },
-        "author": {
-            "type": "string"
-        },
-        "locale": {
-            "type": "string"
-        },
-        "publishedDate": {
-            "type": "string",
-            "format" : "date-time"
-        },
-        "lastModifiedDate": {
-            "type": "string",
-            "format" : "date-time"
-        },
-        "imageURL": {
-            "type": "string"
-        },
-        "languageDetected": {
-            "type": "object",
-            "properties": {
-                "languageCode": {
-                    "type": "string"
-                },
-                "isLanguageReasonablyCertain": {
-                    "type": "boolean"
-                }
-            }
-        },
-        "keywords": {
-            "type": "array",
-            "uniqueItems": true,
-            "items": {
-                "type": "string"
-            }
-        },
-        "twitterCreator": {
-            "type": "string"
-        },
-        "twitterSite": {
-            "type": "string"
-        },
-        "facebookPage": {
-            "type": "string"
-        },
-        "facebookApp": {
-            "type": "string"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-contrib/streams-processor-tika/src/test/java/org/apache/streams/tika/TestCategoryParser.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-processor-tika/src/test/java/org/apache/streams/tika/TestCategoryParser.java b/streams-contrib/streams-processor-tika/src/test/java/org/apache/streams/tika/TestCategoryParser.java
deleted file mode 100644
index f89006a..0000000
--- a/streams-contrib/streams-processor-tika/src/test/java/org/apache/streams/tika/TestCategoryParser.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License.*/
-
-package org.apache.streams.tika;
-
-import org.apache.commons.lang3.SerializationUtils;
-import org.junit.Test;
-
-public class TestCategoryParser {
-
-    @Test
-    public void testSerializability() {
-        CategoryParser parser = new CategoryParser();
-        CategoryParser clone = SerializationUtils.clone(parser);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-contrib/streams-processor-tika/src/test/java/org/apache/streams/tika/TestTikaProcessor.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-processor-tika/src/test/java/org/apache/streams/tika/TestTikaProcessor.java b/streams-contrib/streams-processor-tika/src/test/java/org/apache/streams/tika/TestTikaProcessor.java
deleted file mode 100644
index 35f2d49..0000000
--- a/streams-contrib/streams-processor-tika/src/test/java/org/apache/streams/tika/TestTikaProcessor.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License.*/
-
-package org.apache.streams.tika;
-
-import org.apache.commons.lang3.SerializationUtils;
-import org.junit.Test;
-
-public class TestTikaProcessor {
-    @Test
-    public void testSerializability() {
-        TikaProcessor processor = new TikaProcessor();
-        TikaProcessor clone = SerializationUtils.clone(processor);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-consumer/osgi.bnd
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-consumer/osgi.bnd b/streams-osgi-components/activity-consumer/osgi.bnd
deleted file mode 100644
index 53f60f9..0000000
--- a/streams-osgi-components/activity-consumer/osgi.bnd
+++ /dev/null
@@ -1,9 +0,0 @@
-#--------------------------------------------------------------------------------
-# Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
-#--------------------------------------------------------------------------------
-
-#-----------------------------------------------------------------
-# Use this file to add customized Bnd instructions for the bundle
-#-----------------------------------------------------------------
-
-

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-consumer/pom.xml
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-consumer/pom.xml b/streams-osgi-components/activity-consumer/pom.xml
deleted file mode 100644
index 72d4e71..0000000
--- a/streams-osgi-components/activity-consumer/pom.xml
+++ /dev/null
@@ -1,171 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements.  See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership.  The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied.  See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.apache.streams.osgi.components</groupId>
-    <artifactId>streams-osgi-components</artifactId>
-    <version>0.4-incubating-SNAPSHOT</version>
-  </parent>
-
-  <artifactId>activity-consumer</artifactId>
-  <name>${bundle.symbolicName} [${bundle.namespace}]</name>
-
-  <packaging>bundle</packaging>
-
-  <properties>
-    <bundle.symbolicName>activity-consumer-bundle</bundle.symbolicName>
-    <bundle.namespace>org.apache.streams.osgi.components.activityconsumer</bundle.namespace>
-    <commons.log>1.1</commons.log><!--
-    <jackson.version>1.9.11</jackson.version>-->
-      <jackson.old.version>1.9.11</jackson.old.version>
-  </properties>
-
-  <build>
-        <resources>
-            <resource>
-                <directory>src/main/resources</directory>
-            </resource>
-            <!--
-             | example additional resource entries, useful when building Eclipse RCP applications
-            -->
-            <resource>
-                <directory>.</directory>
-                <includes>
-                    <include>plugin.xml</include>
-                    <include>plugin.properties</include>
-                    <include>icons/**</include>
-                </includes>
-            </resource>
-        </resources>
-        <plugins>
-
-            <plugin>
-                <groupId>org.ops4j</groupId>
-                <artifactId>maven-pax-plugin</artifactId>
-                <!--
-                 | enable improved OSGi compilation support for the bundle life-cycle.
-                 | to switch back to the standard bundle life-cycle, move this setting
-                 | down to the maven-bundle-plugin section
-                -->
-                <extensions>true</extensions>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.felix</groupId>
-                <artifactId>maven-bundle-plugin</artifactId>
-                <version>1.4.3</version>
-                <!--
-                 | the following instructions build a simple set of public/private classes into an OSGi bundle
-                -->
-                <configuration>
-                    <instructions>
-                        <Bundle-SymbolicName>${bundle.symbolicName}</Bundle-SymbolicName>
-                        <Bundle-Version>${project.version}</Bundle-Version>
-                        <Export-Package>${bundle.namespace};version="${project.version}",org.apache.streams.osgi.components.activityconsumer.impl</Export-Package>
-                        <Private-Package>${bundle.namespace}.impl.*</Private-Package>
-                        <Import-Package>org.apache.streams.osgi.components.activityconsumer,org.apache.streams.osgi.components.activityconsumer.impl,org.apache.commons.logging,org.codehaus.jackson.*;version="${jackson.version}",javax.xml.datatype, javax.xml.namespace, javax.xml.parsers, org.joda.time, org.joda.time.format, org.w3c.dom, org.w3c.dom.bootstrap, org.w3c.dom.ls, org.xml.sax, org.apache.rave.model, org.apache.rave.portal.model.impl, org.apache.streams.cassandra.model
-                        </Import-Package>
-                    </instructions>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.osgi</groupId>
-            <artifactId>osgi_R4_core</artifactId>
-            <version>1.0</version>
-            <scope>provided</scope>
-            <optional>true</optional>
-        </dependency>
-
-        <dependency>
-            <groupId>org.codehaus.jackson</groupId>
-            <artifactId>jackson-mrbean</artifactId>
-            <version>${jackson.old.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.codehaus.jackson</groupId>
-            <artifactId>jackson-mapper-asl</artifactId>
-            <version>${jackson.old.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.osgi</groupId>
-            <artifactId>osgi_R4_compendium</artifactId>
-            <version>1.0</version>
-            <scope>provided</scope>
-            <optional>true</optional>
-        </dependency>
-        <dependency>
-            <groupId>commons-logging</groupId>
-            <artifactId>commons-logging-api</artifactId>
-            <version>${commons.log}</version>
-            <scope>provided</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.rave</groupId>
-            <artifactId>rave-core</artifactId>
-            <version>${rave.version}</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>commons-logging</groupId>
-                    <artifactId>commons-logging</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.rave</groupId>
-            <artifactId>rave-core-api</artifactId>
-            <version>${rave.version}</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>commons-logging</groupId>
-                    <artifactId>commons-logging</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>jcl-over-slf4j</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-persist-cassandra</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-testing</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-            <type>test-jar</type>
-        </dependency>
-    </dependencies>
-
-</project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/ActivityConsumer.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/ActivityConsumer.java b/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/ActivityConsumer.java
deleted file mode 100644
index 2fd6bd3..0000000
--- a/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/ActivityConsumer.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.activityconsumer;
-
-
-import org.codehaus.jackson.annotate.JsonTypeInfo;
-
-import java.net.URI;
-
-
-@JsonTypeInfo(use= JsonTypeInfo.Id.CLASS, include=JsonTypeInfo.As.PROPERTY, property="@class")
-public interface ActivityConsumer {
-    public String receive(String activity);
-    public void init();
-    public URI getSrc();
-    public void setSrc(String src);
-    public void setInRoute(String route);
-    public String getInRoute();
-    public String getAuthToken();
-    public void setAuthToken(String token);
-    public boolean isAuthenticated();
-    public void setAuthenticated(boolean authenticated);
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/ActivityConsumerWarehouse.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/ActivityConsumerWarehouse.java b/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/ActivityConsumerWarehouse.java
deleted file mode 100644
index 9153d26..0000000
--- a/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/ActivityConsumerWarehouse.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.activityconsumer;
-
-/**
- * Public API representing an example OSGi service
- */
-public interface ActivityConsumerWarehouse {
-
-    public void register(ActivityConsumer activityConsumer);
-    public ActivityConsumer findConsumerBySrc(String src);
-    public int getConsumersCount();
-
-}
-

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/impl/ActivityConsumerWarehouseImpl.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/impl/ActivityConsumerWarehouseImpl.java b/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/impl/ActivityConsumerWarehouseImpl.java
deleted file mode 100644
index 5e40ba5..0000000
--- a/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/impl/ActivityConsumerWarehouseImpl.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.activityconsumer.impl;
-
-import java.util.Date;
-import java.util.HashMap;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.streams.osgi.components.activityconsumer.ActivityConsumerWarehouse;
-import org.apache.streams.osgi.components.activityconsumer.ActivityConsumer;
-
-public class ActivityConsumerWarehouseImpl implements ActivityConsumerWarehouse {
-    private static final transient Log LOG = LogFactory.getLog(ActivityConsumerWarehouseImpl.class);
-
-    private HashMap<String,ActivityConsumer> consumers;
-
-    public ActivityConsumerWarehouseImpl(){
-        consumers = new HashMap<String, ActivityConsumer>();
-    }
-
-    public void register(ActivityConsumer activityConsumer) {
-
-        //key in warehouse is the activity publisher URI source
-        consumers.put(activityConsumer.getSrc().toASCIIString(), activityConsumer);
-        activityConsumer.init();
-
-
-    }
-
-    public ActivityConsumer findConsumerBySrc(String src){
-        return consumers.get(src);
-    }
-
-
-    public int getConsumersCount(){
-        return consumers.size();
-    }
-
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/impl/PushActivityConsumer.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/impl/PushActivityConsumer.java b/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/impl/PushActivityConsumer.java
deleted file mode 100644
index 1d4a7c1..0000000
--- a/streams-osgi-components/activity-consumer/src/main/java/org/apache/streams/osgi/components/activityconsumer/impl/PushActivityConsumer.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.activityconsumer.impl;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.streams.cassandra.model.CassandraActivityStreamsEntry;
-import org.apache.streams.osgi.components.activityconsumer.ActivityConsumer;
-import org.codehaus.jackson.map.DeserializationConfig;
-import org.codehaus.jackson.map.ObjectMapper;
-
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.List;
-import java.util.ArrayList;
-
-public class PushActivityConsumer implements ActivityConsumer {
-
-    private static final transient Log LOG = LogFactory.getLog(PushActivityConsumer.class);
-
-    private URI src;
-
-
-    private String authToken;
-
-    private boolean authenticated;
-
-    private String inRoute;
-
-    public PushActivityConsumer(){
-    }
-
-
-    public URI getSrc() {
-        return src;
-    }
-
-    public void setSrc(String src) {
-        try{
-            this.src = new URI(src);
-
-        } catch (URISyntaxException e) {
-           this.src=null;
-        }
-    }
-
-    public String getAuthToken() {
-        return authToken;
-    }
-
-    public void setAuthToken(String authToken) {
-        this.authToken = authToken;
-    }
-
-    public boolean isAuthenticated() {
-        return authenticated;
-    }
-
-    public void setAuthenticated(boolean authenticated) {
-        this.authenticated = authenticated;
-    }
-
-    public String receive (String activity){
-        //receive activities...do anything that is necessary
-        LOG.info("a message I published: " + activity);
-        return activity;
-        //pass off to activity splitter
-
-    }
-
-    public List<String> split(String activities) {
-        LOG.info("I am going to split this message: " + activities);
-
-        List<String> activitiesList = new ArrayList<String>();
-        activitiesList.add(activities);
-        return activitiesList;
-    }
-
-    public void init(){
-        //any initialization...
-    }
-
-    public String getInRoute() {
-        return inRoute;
-    }
-
-    public void setInRoute(String inRoute) {
-        this.inRoute = inRoute;
-    }
-}



[06/53] [abbrv] incubator-streams git commit: rename Hive Generator

Posted by mf...@apache.org.
rename Hive Generator


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/7d318c3f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/7d318c3f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/7d318c3f

Branch: refs/heads/invalid_headers
Commit: 7d318c3fba9faf106eed8797263d52114a312d6c
Parents: ded4ad6
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Mon Mar 28 08:32:19 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Jun 1 12:49:27 2016 -0500

----------------------------------------------------------------------
 .../streams/plugins/StreamsHiveResourceGenerator.java     | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/7d318c3f/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsHiveResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsHiveResourceGenerator.java b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsHiveResourceGenerator.java
index 4edacf0..1efb15e 100644
--- a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsHiveResourceGenerator.java
+++ b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsHiveResourceGenerator.java
@@ -27,15 +27,14 @@ public class StreamsHiveResourceGenerator implements Runnable {
 
     private final static String LS = System.getProperty("line.separator");
 
-    private StreamsPojoHiveMojo mojo;
+    private StreamsHiveResourceGeneratorMojo mojo;
 
     String inDir = "./target/test-classes/activities";
     String outDir = "./target/generated-sources/hive";
-    String packages[] = {"org.apache.streams.pojo.json"};
 
     public void main(String[] args) {
         StreamsHiveResourceGenerator streamsHiveResourceGenerator = new StreamsHiveResourceGenerator();
-        Thread thread = new Thread(streamsPojoScala);
+        Thread thread = new Thread(streamsHiveResourceGenerator);
         thread.start();
         try {
             thread.join();
@@ -47,7 +46,7 @@ public class StreamsHiveResourceGenerator implements Runnable {
         return;
     }
 
-    public StreamsHiveResourceGenerator(StreamsPojoHiveMojo mojo) {
+    public StreamsHiveResourceGenerator(StreamsHiveResourceGeneratorMojo mojo) {
         this.mojo = mojo;
         if (    mojo != null &&
                 mojo.getTarget() != null &&
@@ -67,6 +66,9 @@ public class StreamsHiveResourceGenerator implements Runnable {
 
     public void run() {
 
+        List<File> schemaFiles;
+
+
         List<Class<?>> serializableClasses = detectSerializableClasses();
 
         LOGGER.info("Detected {} serialiables:", serializableClasses.size());


[41/53] [abbrv] incubator-streams git commit: pom version bump

Posted by mf...@apache.org.
pom version bump


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/5694ae95
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/5694ae95
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/5694ae95

Branch: refs/heads/invalid_headers
Commit: 5694ae953b7e2562df0e3f40f29e5b643ceed317
Parents: 18a29b0
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Wed Oct 12 12:40:46 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Oct 12 12:40:46 2016 -0500

----------------------------------------------------------------------
 streams-plugins/streams-plugin-cassandra/pom.xml                 | 4 ++--
 .../src/test/resources/streams-plugin-cassandra/pom.xml          | 4 ++--
 streams-plugins/streams-plugin-elasticsearch/pom.xml             | 4 ++--
 .../src/test/resources/streams-plugin-elasticsearch/pom.xml      | 4 ++--
 streams-plugins/streams-plugin-hbase/pom.xml                     | 4 ++--
 .../src/test/resources/streams-plugin-hbase/pom.xml              | 4 ++--
 streams-plugins/streams-plugin-hive/pom.xml                      | 4 ++--
 .../src/test/resources/streams-plugin-hive/pom.xml               | 4 ++--
 streams-plugins/streams-plugin-pig/pom.xml                       | 4 ++--
 .../src/test/resources/streams-plugin-pig/pom.xml                | 4 ++--
 streams-plugins/streams-plugin-pojo/pom.xml                      | 4 ++--
 .../src/test/resources/streams-plugin-pojo/pom.xml               | 4 ++--
 streams-schemas/pom.xml                                          | 2 +-
 streams-schemas/streams-schema-activitystreams/pom.xml           | 2 +-
 14 files changed, 26 insertions(+), 26 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5694ae95/streams-plugins/streams-plugin-cassandra/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/pom.xml b/streams-plugins/streams-plugin-cassandra/pom.xml
index d9d3f91..c378a2b 100644
--- a/streams-plugins/streams-plugin-cassandra/pom.xml
+++ b/streams-plugins/streams-plugin-cassandra/pom.xml
@@ -21,13 +21,13 @@
     <modelVersion>4.0.0</modelVersion>
     <groupId>org.apache.streams.plugins</groupId>
     <artifactId>streams-plugin-cassandra</artifactId>
-    <version>0.3-incubating-SNAPSHOT</version>
+    <version>0.4-incubating-SNAPSHOT</version>
     <packaging>maven-plugin</packaging>
 
     <parent>
         <groupId>org.apache.streams</groupId>
         <artifactId>streams-plugins</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.4-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5694ae95/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml b/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
index 2a69ec7..d576d72 100644
--- a/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
+++ b/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
@@ -5,7 +5,7 @@
 
     <groupId>org.apache.streams.plugins</groupId>
     <artifactId>streams-plugin-cassandra-test</artifactId>
-    <version>0.3-incubating-SNAPSHOT</version>
+    <version>0.4-incubating-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>Test StreamsCassandraResourceGeneratorMojo</name>
 
@@ -30,7 +30,7 @@
             <plugin>
                 <groupId>org.apache.streams.plugins</groupId>
                 <artifactId>streams-plugin-cassandra</artifactId>
-                <version>0.3-incubating-SNAPSHOT</version>
+                <version>0.4-incubating-SNAPSHOT</version>
                 <configuration>
                     <sourcePaths>
                         <sourcePath>target/test-classes/streams-schema-activitystreams/activity.json</sourcePath>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5694ae95/streams-plugins/streams-plugin-elasticsearch/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/pom.xml b/streams-plugins/streams-plugin-elasticsearch/pom.xml
index 07d7fc1..691813a 100644
--- a/streams-plugins/streams-plugin-elasticsearch/pom.xml
+++ b/streams-plugins/streams-plugin-elasticsearch/pom.xml
@@ -21,13 +21,13 @@
     <modelVersion>4.0.0</modelVersion>
     <groupId>org.apache.streams.plugins</groupId>
     <artifactId>streams-plugin-elasticsearch</artifactId>
-    <version>0.3-incubating-SNAPSHOT</version>
+    <version>0.4-incubating-SNAPSHOT</version>
     <packaging>maven-plugin</packaging>
 
     <parent>
         <groupId>org.apache.streams</groupId>
         <artifactId>streams-plugins</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.4-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5694ae95/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml b/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
index de74014..175b012 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
+++ b/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
@@ -5,7 +5,7 @@
 
     <groupId>org.apache.streams.plugins</groupId>
     <artifactId>streams-plugin-elasticsearch-test</artifactId>
-    <version>0.3-incubating-SNAPSHOT</version>
+    <version>0.4-incubating-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>Test StreamsElasticsearchResourceGeneratorMojo</name>
 
@@ -30,7 +30,7 @@
             <plugin>
                 <groupId>org.apache.streams.plugins</groupId>
                 <artifactId>streams-plugin-elasticsearch</artifactId>
-                <version>0.3-incubating-SNAPSHOT</version>
+                <version>0.4-incubating-SNAPSHOT</version>
                 <configuration>
                     <sourcePaths>
                         <sourcePath>target/test-classes/streams-schema-activitystreams/activity.json</sourcePath>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5694ae95/streams-plugins/streams-plugin-hbase/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/pom.xml b/streams-plugins/streams-plugin-hbase/pom.xml
index b29bd38..648f870 100644
--- a/streams-plugins/streams-plugin-hbase/pom.xml
+++ b/streams-plugins/streams-plugin-hbase/pom.xml
@@ -21,13 +21,13 @@
     <modelVersion>4.0.0</modelVersion>
     <groupId>org.apache.streams.plugins</groupId>
     <artifactId>streams-plugin-hbase</artifactId>
-    <version>0.3-incubating-SNAPSHOT</version>
+    <version>0.4-incubating-SNAPSHOT</version>
     <packaging>maven-plugin</packaging>
 
     <parent>
         <groupId>org.apache.streams</groupId>
         <artifactId>streams-plugins</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.4-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5694ae95/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml b/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml
index a3fbeeb..cbf36c4 100644
--- a/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml
+++ b/streams-plugins/streams-plugin-hbase/src/test/resources/streams-plugin-hbase/pom.xml
@@ -5,7 +5,7 @@
 
     <groupId>org.apache.streams.plugins</groupId>
     <artifactId>streams-plugin-hbase-test</artifactId>
-    <version>0.3-incubating-SNAPSHOT</version>
+    <version>0.4-incubating-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>Test StreamsHbaseResourceGeneratorMojo</name>
 
@@ -30,7 +30,7 @@
             <plugin>
                 <groupId>org.apache.streams.plugins</groupId>
                 <artifactId>streams-plugin-hbase</artifactId>
-                <version>0.3-incubating-SNAPSHOT</version>
+                <version>0.4-incubating-SNAPSHOT</version>
                 <configuration>
                     <sourcePaths>
                         <sourcePath>target/test-classes/streams-schema-activitystreams/activity.json</sourcePath>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5694ae95/streams-plugins/streams-plugin-hive/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/pom.xml b/streams-plugins/streams-plugin-hive/pom.xml
index 38c69c1..68c9dd4 100644
--- a/streams-plugins/streams-plugin-hive/pom.xml
+++ b/streams-plugins/streams-plugin-hive/pom.xml
@@ -21,13 +21,13 @@
     <modelVersion>4.0.0</modelVersion>
     <groupId>org.apache.streams.plugins</groupId>
     <artifactId>streams-plugin-hive</artifactId>
-    <version>0.3-incubating-SNAPSHOT</version>
+    <version>0.4-incubating-SNAPSHOT</version>
     <packaging>maven-plugin</packaging>
 
     <parent>
         <groupId>org.apache.streams</groupId>
         <artifactId>streams-plugins</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.4-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5694ae95/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml b/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
index 40931ae..d2980b4 100644
--- a/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
+++ b/streams-plugins/streams-plugin-hive/src/test/resources/streams-plugin-hive/pom.xml
@@ -5,7 +5,7 @@
 
     <groupId>org.apache.streams.plugins</groupId>
     <artifactId>streams-plugin-hive-test</artifactId>
-    <version>0.3-incubating-SNAPSHOT</version>
+    <version>0.4-incubating-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>Test StreamsPojoHiveMojo</name>
 
@@ -30,7 +30,7 @@
             <plugin>
                 <groupId>org.apache.streams.plugins</groupId>
                 <artifactId>streams-plugin-hive</artifactId>
-                <version>0.3-incubating-SNAPSHOT</version>
+                <version>0.4-incubating-SNAPSHOT</version>
                 <configuration>
                     <sourcePaths>
                         <sourcePath>target/test-classes/streams-schema-activitystreams/activity.json</sourcePath>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5694ae95/streams-plugins/streams-plugin-pig/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/pom.xml b/streams-plugins/streams-plugin-pig/pom.xml
index 0c7bf1a..095848a 100644
--- a/streams-plugins/streams-plugin-pig/pom.xml
+++ b/streams-plugins/streams-plugin-pig/pom.xml
@@ -21,13 +21,13 @@
     <modelVersion>4.0.0</modelVersion>
     <groupId>org.apache.streams.plugins</groupId>
     <artifactId>streams-plugin-pig</artifactId>
-    <version>0.3-incubating-SNAPSHOT</version>
+    <version>0.4-incubating-SNAPSHOT</version>
     <packaging>maven-plugin</packaging>
 
     <parent>
         <groupId>org.apache.streams</groupId>
         <artifactId>streams-plugins</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.4-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5694ae95/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml b/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml
index f3976fa..cc7b5fd 100644
--- a/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml
+++ b/streams-plugins/streams-plugin-pig/src/test/resources/streams-plugin-pig/pom.xml
@@ -5,7 +5,7 @@
 
     <groupId>org.apache.streams.plugins</groupId>
     <artifactId>streams-plugin-pig-test</artifactId>
-    <version>0.3-incubating-SNAPSHOT</version>
+    <version>0.4-incubating-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>Test StreamsPigResourceGeneratorMojo</name>
 
@@ -30,7 +30,7 @@
             <plugin>
                 <groupId>org.apache.streams.plugins</groupId>
                 <artifactId>streams-plugin-pig</artifactId>
-                <version>0.3-incubating-SNAPSHOT</version>
+                <version>0.4-incubating-SNAPSHOT</version>
                 <configuration>
                     <sourcePaths>
                         <sourcePath>target/test-classes/streams-schema-activitystreams/activity.json</sourcePath>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5694ae95/streams-plugins/streams-plugin-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/pom.xml b/streams-plugins/streams-plugin-pojo/pom.xml
index da7c0b2..f8d1b02 100644
--- a/streams-plugins/streams-plugin-pojo/pom.xml
+++ b/streams-plugins/streams-plugin-pojo/pom.xml
@@ -21,13 +21,13 @@
     <modelVersion>4.0.0</modelVersion>
     <groupId>org.apache.streams.plugins</groupId>
     <artifactId>streams-plugin-pojo</artifactId>
-    <version>0.3-incubating-SNAPSHOT</version>
+    <version>0.4-incubating-SNAPSHOT</version>
     <packaging>maven-plugin</packaging>
 
     <parent>
         <groupId>org.apache.streams</groupId>
         <artifactId>streams-plugins</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.4-incubating-SNAPSHOT</version>
         <relativePath>..</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5694ae95/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml b/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
index 2ca3f7c..077f150 100644
--- a/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
+++ b/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
@@ -5,7 +5,7 @@
 
     <groupId>org.apache.streams.plugins</groupId>
     <artifactId>streams-plugin-pojo-test</artifactId>
-    <version>0.3-incubating-SNAPSHOT</version>
+    <version>0.4-incubating-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>Test StreamsPojoMojo</name>
 
@@ -65,7 +65,7 @@
             <plugin>
                 <groupId>org.apache.streams.plugins</groupId>
                 <artifactId>streams-plugin-pojo</artifactId>
-                <version>0.3-incubating-SNAPSHOT</version>
+                <version>0.4-incubating-SNAPSHOT</version>
                 <configuration>
                     <sourcePaths>
                         <sourcePath>target/test-classes/streams-schema-activitystreams/activity.json</sourcePath>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5694ae95/streams-schemas/pom.xml
----------------------------------------------------------------------
diff --git a/streams-schemas/pom.xml b/streams-schemas/pom.xml
index dbfd719..516563f 100644
--- a/streams-schemas/pom.xml
+++ b/streams-schemas/pom.xml
@@ -23,7 +23,7 @@
     <parent>
         <groupId>org.apache.streams</groupId>
         <artifactId>streams-project</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.4-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>streams-schemas</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5694ae95/streams-schemas/streams-schema-activitystreams/pom.xml
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/pom.xml b/streams-schemas/streams-schema-activitystreams/pom.xml
index 500c272..fee5cab 100644
--- a/streams-schemas/streams-schema-activitystreams/pom.xml
+++ b/streams-schemas/streams-schema-activitystreams/pom.xml
@@ -23,7 +23,7 @@
     <parent>
         <groupId>org.apache.streams</groupId>
         <artifactId>streams-schemas</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.4-incubating-SNAPSHOT</version>
     </parent>
 
     <artifactId>streams-schema-activitystreams</artifactId>


[26/53] [abbrv] incubator-streams git commit: refactoring, testing, documentation, CLI modes

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/disagree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/disagree.json b/streams-schemas/src/main/jsonschema/verbs/disagree.json
deleted file mode 100644
index 17f0c4c..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/disagree.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/disagree.json#",
-    "type": "object",
-    "title": "Disagree",
-    "description": "Indicates that the actor disagrees with the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "disagree"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} disagrees with {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/dislike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/dislike.json b/streams-schemas/src/main/jsonschema/verbs/dislike.json
deleted file mode 100644
index 308d5eb..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/dislike.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/dislike.json#",
-    "type": "object",
-    "title": "Dislike",
-    "description": "Indicates that the actor dislikes the object. Note that the \"dislike\" verb is distinct from the \"unlike\" verb which assumes that the object had been previously \"liked\".",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "dislike"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} dislikes {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/experience.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/experience.json b/streams-schemas/src/main/jsonschema/verbs/experience.json
deleted file mode 100644
index 543ac2c..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/experience.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/experience.json#",
-    "type": "object",
-    "title": "Experience",
-    "description": "Indicates that the actor has experienced the object in some manner. Note that, depending on the specific object types used for both the actor and object, the meaning of this verb can overlap that of the \"consume\" and \"play\" verbs. For instance, a person might \"experience\" a movie; or \"play\" the movie; or \"consume\" the movie. The \"experience\" verb can be considered a more generic form of other more specific verbs as \"consume\", \"play\", \"watch\", \"listen\", and \"read\"",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "experience"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} experienced {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/favorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/favorite.json b/streams-schemas/src/main/jsonschema/verbs/favorite.json
deleted file mode 100644
index 17e2490..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/favorite.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/favorite.json#",
-    "type": "object",
-    "title": "Favorite",
-    "description": "Indicates that the actor marked the object as an item of special interest.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "favorite"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} marked {object.displayName} as a favorite"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/find.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/find.json b/streams-schemas/src/main/jsonschema/verbs/find.json
deleted file mode 100644
index 79ebbe8..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/find.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/find.json#",
-    "type": "object",
-    "title": "Find",
-    "description": "Indicates that the actor has found the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "find"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} found {object.displayName}."
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/flag-as-inappropriate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/flag-as-inappropriate.json b/streams-schemas/src/main/jsonschema/verbs/flag-as-inappropriate.json
deleted file mode 100644
index f7b5785..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/flag-as-inappropriate.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/flag-as-inappropriate.json#",
-    "type": "object",
-    "title": "Flag-As-Inappropriate",
-    "description": "Indicates that the actor has flagged the object as being inappropriate for some reason. When using this verb, the context property can be used to provide additional detail about why the object has been flagged.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "flag-as-inappropriate"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} flagged {object.displayName} as inappropriate."
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/follow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/follow.json b/streams-schemas/src/main/jsonschema/verbs/follow.json
deleted file mode 100644
index 2a922f9..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/follow.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/follow.json#",
-    "type": "object",
-    "title": "Follow",
-    "description": "Indicates that the actor began following the activity of the object. In most cases, the objectType will be a \"person\", but it can potentially be of any type that can sensibly generate activity. Processors MAY ignore (silently drop) successive identical \"follow\" activities.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "follow"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} started following {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/give.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/give.json b/streams-schemas/src/main/jsonschema/verbs/give.json
deleted file mode 100644
index 952fa59..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/give.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/give.json#",
-    "type": "object",
-    "title": "Give",
-    "description": "Indicates that the actor is giving an object to the target. Examples include one person giving a badge object to another person. The object identifies the object being given. The target identifies the receiver.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "give"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} gave {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/host.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/host.json b/streams-schemas/src/main/jsonschema/verbs/host.json
deleted file mode 100644
index 9661abe..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/host.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/host.json#",
-    "type": "object",
-    "title": "Host",
-    "description": "Indicates that the actor is hosting the object. As in hosting an event, or hosting a service.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "host"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} is hosting {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/ignore.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/ignore.json b/streams-schemas/src/main/jsonschema/verbs/ignore.json
deleted file mode 100644
index ae0ea6a..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/ignore.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/ignore.json#",
-    "type": "object",
-    "title": "Ignore",
-    "description": "Indicates that the actor has ignored the object. For instance, this verb may be used when an actor has ignored a friend request, in which case the object may be the request-friend activity.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "ignore"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} ignored {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/insert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/insert.json b/streams-schemas/src/main/jsonschema/verbs/insert.json
deleted file mode 100644
index 8dcd756..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/insert.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/insert.json#",
-    "type": "object",
-    "title": "Insert",
-    "description": "Indicates that the actor has inserted the object into the target.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "insert"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} inserted {object.displayName} into {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/install.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/install.json b/streams-schemas/src/main/jsonschema/verbs/install.json
deleted file mode 100644
index 6b270fa..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/install.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/install.json#",
-    "type": "object",
-    "title": "Install",
-    "description": "Indicates that the actor has installed the object, as in installing an application.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "install"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} installed {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/interact.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/interact.json b/streams-schemas/src/main/jsonschema/verbs/interact.json
deleted file mode 100644
index 5098ee3..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/interact.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/interact.json#",
-    "type": "object",
-    "title": "Interact",
-    "description": "Indicates that the actor has interacted with the object. For instance, when one person interacts with another.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "interact"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} interacted with {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/invite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/invite.json b/streams-schemas/src/main/jsonschema/verbs/invite.json
deleted file mode 100644
index 625a170..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/invite.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/invite.json#",
-    "type": "object",
-    "title": "Invite",
-    "description": "Indicates that the actor has invited the object, typically a person object, to join or participate in the object described by the target. The target could, for instance, be an event, group or a service.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "invite"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} invited {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/join.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/join.json b/streams-schemas/src/main/jsonschema/verbs/join.json
deleted file mode 100644
index 5276072..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/join.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/join.json#",
-    "type": "object",
-    "title": "Join",
-    "description": "Indicates that the actor has become a member of the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "join"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} joined {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/leave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/leave.json b/streams-schemas/src/main/jsonschema/verbs/leave.json
deleted file mode 100644
index 9995099..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/leave.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/leave.json#",
-    "type": "object",
-    "title": "Leave",
-    "description": "Indicates that the actor has left the object. For instance, a Person leaving a Group or checking-out of a Place.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "leave"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} left {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/like.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/like.json b/streams-schemas/src/main/jsonschema/verbs/like.json
deleted file mode 100644
index d583305..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/like.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/like.json#",
-    "type": "object",
-    "title": "Like",
-    "description": "Indicates that the actor marked the object as an item of special interest.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "like"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} likes {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/listen.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/listen.json b/streams-schemas/src/main/jsonschema/verbs/listen.json
deleted file mode 100644
index 9982ac6..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/listen.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/listen.json#",
-    "type": "object",
-    "title": "Listen",
-    "description": "Indicates that the actor has listened to the object. This is typically only applicable for objects representing audio content, such as music, an audio-book, or a radio broadcast.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "listen"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} listened to {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/lose.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/lose.json b/streams-schemas/src/main/jsonschema/verbs/lose.json
deleted file mode 100644
index 1d959a4..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/lose.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/lose.json#",
-    "type": "object",
-    "title": "Lose",
-    "description": "Indicates that the actor has lost the object. For instance, if a person loses a game.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "lose"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} lost {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/make-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/make-friend.json b/streams-schemas/src/main/jsonschema/verbs/make-friend.json
deleted file mode 100644
index 141aba7..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/make-friend.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/make-friend.json#",
-    "type": "object",
-    "title": "Befriend",
-    "description": "Indicates the creation of a friendship that is reciprocated by the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "make-friend"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} is now friends with {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/open.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/open.json b/streams-schemas/src/main/jsonschema/verbs/open.json
deleted file mode 100644
index 6c06529..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/open.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/open.json#",
-    "type": "object",
-    "title": "Open",
-    "description": "Indicates that the actor has opened the object. For instance, the object could represent a ticket being tracked in an issue management system.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "open"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} opened {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/play.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/play.json b/streams-schemas/src/main/jsonschema/verbs/play.json
deleted file mode 100644
index 115ac11..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/play.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/play.json#",
-    "type": "object",
-    "title": "Play",
-    "description": "Indicates that the actor spent some time enjoying the object. For example, if the object is a video this indicates that the subject watched all or part of the video.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "play"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} played {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/post.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/post.json b/streams-schemas/src/main/jsonschema/verbs/post.json
deleted file mode 100644
index 20a5feb..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/post.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/post.json#",
-    "type": "object",
-    "title": "Post",
-    "description": "To publish an object",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "post"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} posted {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/present.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/present.json b/streams-schemas/src/main/jsonschema/verbs/present.json
deleted file mode 100644
index 0cf7154..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/present.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/present.json#",
-    "type": "object",
-    "title": "Present",
-    "description": "Indicates that the actor has presented the object. For instance, when a person gives a presentation at a conference.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "present"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} presented {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/purchase.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/purchase.json b/streams-schemas/src/main/jsonschema/verbs/purchase.json
deleted file mode 100644
index e867ad9..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/purchase.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/purchase.json#",
-    "type": "object",
-    "title": "Purchase",
-    "description": "Indicates that the actor has purchased the object. If a target is specified, in indicates the entity from which the object was purchased.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "purchase"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} purchased {object.displayName} from {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/qualify.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/qualify.json b/streams-schemas/src/main/jsonschema/verbs/qualify.json
deleted file mode 100644
index 8bc5248..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/qualify.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/qualify.json#",
-    "type": "object",
-    "title": "Qualify",
-    "description": "Indicates that the actor has qualified for the object. If a target is specified, it indicates the context within which the qualification applies.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "qualify"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} qualified {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/read.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/read.json b/streams-schemas/src/main/jsonschema/verbs/read.json
deleted file mode 100644
index 2776a4e..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/read.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/read.json#",
-    "type": "object",
-    "title": "Read",
-    "description": "Indicates that the actor read the object. This is typically only applicable for objects representing printed or written content, such as a book, a message or a comment.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "read"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} read {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/receive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/receive.json b/streams-schemas/src/main/jsonschema/verbs/receive.json
deleted file mode 100644
index da88b34..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/receive.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/receive.json#",
-    "type": "object",
-    "title": "Receive",
-    "description": "Indicates that the actor is receiving an object. Examples include a person receiving a badge object. The object identifies the object being received.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "receive"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} received {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/reject.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/reject.json b/streams-schemas/src/main/jsonschema/verbs/reject.json
deleted file mode 100644
index d8a8bb4..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/reject.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/reject.json#",
-    "type": "object",
-    "title": "Reject",
-    "description": "Indicates that the actor has rejected the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "reject"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} rejected {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/remove-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/remove-friend.json b/streams-schemas/src/main/jsonschema/verbs/remove-friend.json
deleted file mode 100644
index 84f6b78..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/remove-friend.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/remove-friend.json#",
-    "type": "object",
-    "title": "UnFriend",
-    "description": "Indicates that the actor has removed the object from the collection of friends.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "remove-friend"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} removed friend {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/remove.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/remove.json b/streams-schemas/src/main/jsonschema/verbs/remove.json
deleted file mode 100644
index 367da5d..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/remove.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/remove.json#",
-    "type": "object",
-    "title": "Remove",
-    "description": "Indicates that the actor has removed the object from the target.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "remove"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} removed {object.displayName} from {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/replace.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/replace.json b/streams-schemas/src/main/jsonschema/verbs/replace.json
deleted file mode 100644
index 418ea94..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/replace.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/replace.json#",
-    "type": "object",
-    "title": "Replace",
-    "description": "Indicates that the actor has replaced the target with the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "replace"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} replaced {target.displayName} with {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/request-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/request-friend.json b/streams-schemas/src/main/jsonschema/verbs/request-friend.json
deleted file mode 100644
index 51333e2..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/request-friend.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/request-friend.json#",
-    "type": "object",
-    "title": "RequestFriend",
-    "description": "Indicates the creation of a friendship that has not yet been reciprocated by the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "request-friend"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} sent a friend request to {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/request.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/request.json b/streams-schemas/src/main/jsonschema/verbs/request.json
deleted file mode 100644
index f15104c..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/request.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/request.json#",
-    "type": "object",
-    "title": "Request",
-    "description": "Indicates that the actor has requested the object. If a target is specified, it indicates the entity from which the object is being requested.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "request"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} requested {object.displayName} from {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/resolve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/resolve.json b/streams-schemas/src/main/jsonschema/verbs/resolve.json
deleted file mode 100644
index 2b8365d..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/resolve.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/resolve.json#",
-    "type": "object",
-    "title": "Resolve",
-    "description": "Indicates that the actor has resolved the object. For instance, the object could represent a ticket being tracked in an issue management system.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "resolve"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} resolved {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/retract.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/retract.json b/streams-schemas/src/main/jsonschema/verbs/retract.json
deleted file mode 100644
index 8ddbcbc..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/retract.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/retract.json#",
-    "type": "object",
-    "title": "Retract",
-    "description": "Indicates that the actor has retracted the object. For instance, if an actor wishes to retract a previously published activity, the object would be the previously published activity that is being retracted.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "retract"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} retracted {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/return.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/return.json b/streams-schemas/src/main/jsonschema/verbs/return.json
deleted file mode 100644
index 40426cf..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/return.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/return.json#",
-    "type": "object",
-    "title": "Return",
-    "description": "Indicates that the actor has returned the object. If a target is specified, it indicates the entity to which the object was returned.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "return"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} returned {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/rsvp-maybe.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/rsvp-maybe.json b/streams-schemas/src/main/jsonschema/verbs/rsvp-maybe.json
deleted file mode 100644
index 6e9e8f5..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/rsvp-maybe.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/rsvp-maybe.json#",
-    "type": "object",
-    "title": "Rsvp Maybe",
-    "description": "To indicate that the actor may attend an event",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "rsvp-maybe"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} might attend {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/rsvp-no.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/rsvp-no.json b/streams-schemas/src/main/jsonschema/verbs/rsvp-no.json
deleted file mode 100644
index 6339f1e..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/rsvp-no.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/rsvp-no.json#",
-    "type": "object",
-    "title": "Rsvp No",
-    "description": "To indicate that the actor will not attend an event",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "rsvp-no"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} will not attend {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/rsvp-yes.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/rsvp-yes.json b/streams-schemas/src/main/jsonschema/verbs/rsvp-yes.json
deleted file mode 100644
index 7fecc78..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/rsvp-yes.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/rsvp-yes.json#",
-    "type": "object",
-    "title": "Rsvp Yes",
-    "description": "To indicate that the actor will attend an event",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "rsvp-yes"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} is attending {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/satisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/satisfy.json b/streams-schemas/src/main/jsonschema/verbs/satisfy.json
deleted file mode 100644
index 9c36006..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/satisfy.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/satisfy.json#",
-    "type": "object",
-    "title": "Satisfy",
-    "description": "Indicates that the actor has satisfied the object. If a target is specified, it indicate the context within which the object was satisfied. For instance, if a person satisfies the requirements for a particular challenge, the person is the actor; the requirement is the object; and the challenge is the target.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "satisfy"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} has satisfied {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/save.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/save.json b/streams-schemas/src/main/jsonschema/verbs/save.json
deleted file mode 100644
index 06ec16f..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/save.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/save.json#",
-    "type": "object",
-    "title": "Save",
-    "description": "Indicates that the actor has called out the object as being of interest primarily to him- or herself. Though this action MAY be shared publicly, the implication is that the object has been saved primarily for the actor's own benefit rather than to show it to others as would be indicated by the \"share\" verb.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "save"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} saved {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/schedule.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/schedule.json b/streams-schemas/src/main/jsonschema/verbs/schedule.json
deleted file mode 100644
index a42d955..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/schedule.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/schedule.json#",
-    "type": "object",
-    "title": "Schedule",
-    "description": "Indicates that the actor has scheduled the object. For instance, scheduling a meeting.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "schedule"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} scheduled {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/search.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/search.json b/streams-schemas/src/main/jsonschema/verbs/search.json
deleted file mode 100644
index 1cb8572..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/search.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/search.json#",
-    "type": "object",
-    "title": "Search",
-    "description": "Indicates that the actor is or has searched for the object. If a target is specified, it indicates the context within which the search is or has been conducted.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "search"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} search for {object.displayName} in {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/sell.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/sell.json b/streams-schemas/src/main/jsonschema/verbs/sell.json
deleted file mode 100644
index 4ec46b6..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/sell.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/sell.json#",
-    "type": "object",
-    "title": "Sell",
-    "description": "Indicates that the actor has sold the object. If a target is specified, it indicates the entity to which the object was sold.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "sell"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} sold {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/send.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/send.json b/streams-schemas/src/main/jsonschema/verbs/send.json
deleted file mode 100644
index 69f565c..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/send.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/send.json#",
-    "type": "object",
-    "title": "Send",
-    "description": "Indicates that the actor has sent the object to the target.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "send"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} sent {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/share.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/share.json b/streams-schemas/src/main/jsonschema/verbs/share.json
deleted file mode 100644
index 576f5fb..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/share.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/share.json#",
-    "type": "object",
-    "title": "Share",
-    "description": "To share an object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "share"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} shared {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/sponsor.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/sponsor.json b/streams-schemas/src/main/jsonschema/verbs/sponsor.json
deleted file mode 100644
index 55445b7..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/sponsor.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/sponsor.json#",
-    "type": "object",
-    "title": "Sponsor",
-    "description": "Indicates that the actor has sponsored the object. If a target is specified, it indicates the context within which the sponsorship is offered. For instance, a company can sponsor an event; or an individual can sponsor a project; etc.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "sponsor"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} sponsored {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/start.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/start.json b/streams-schemas/src/main/jsonschema/verbs/start.json
deleted file mode 100644
index 3e52c12..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/start.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/start.json#",
-    "type": "object",
-    "title": "Start",
-    "description": "Indicates that the actor has started the object. For instance, when a person starts a project.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "start"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} started {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/stop-following.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/stop-following.json b/streams-schemas/src/main/jsonschema/verbs/stop-following.json
deleted file mode 100644
index cd7c521..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/stop-following.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/stop-following.json#",
-    "type": "object",
-    "title": "UnFollow",
-    "description": "Indicates that the actor has stopped following the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "stop-following"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} stopped following {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/submit.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/submit.json b/streams-schemas/src/main/jsonschema/verbs/submit.json
deleted file mode 100644
index 58582ee..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/submit.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/submit.json#",
-    "type": "object",
-    "title": "Submit",
-    "description": "Indicates that the actor has submitted the object. If a target is specified, it indicates the entity to which the object was submitted.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "submit"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} submitted {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/tag.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/tag.json b/streams-schemas/src/main/jsonschema/verbs/tag.json
deleted file mode 100644
index 6ed1632..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/tag.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/tag.json#",
-    "type": "object",
-    "title": "Tag",
-    "description": "Indicates that the actor has associated the object with the target. For example, if the actor specifies that a particular user appears in a photo. the object is the user and the target is the photo.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "tag"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} tagged {object.displayName} as {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/terminate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/terminate.json b/streams-schemas/src/main/jsonschema/verbs/terminate.json
deleted file mode 100644
index 9a4d94c..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/terminate.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/terminate.json#",
-    "type": "object",
-    "title": "Terminate",
-    "description": "Indicates that the actor has terminated the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "terminate"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} terminated {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/tie.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/tie.json b/streams-schemas/src/main/jsonschema/verbs/tie.json
deleted file mode 100644
index 6637fb9..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/tie.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/tie.json#",
-    "type": "object",
-    "title": "Tie",
-    "description": "Indicates that the actor has neither won or lost the object. This verb is generally only applicable when the object represents some form of competition, such as a game.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "tie"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} tied at {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/unfavorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unfavorite.json b/streams-schemas/src/main/jsonschema/verbs/unfavorite.json
deleted file mode 100644
index 2b642b4..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/unfavorite.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/unfavorite.json#",
-    "type": "object",
-    "title": "UnFavorite",
-    "description": "Indicates that the actor has removed the object from the collection of favorited items.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "unfavorite"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} removed {object.displayName} as a favorite"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/unlike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unlike.json b/streams-schemas/src/main/jsonschema/verbs/unlike.json
deleted file mode 100644
index db0b7bc..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/unlike.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/unlike.json#",
-    "type": "object",
-    "title": "UnLike",
-    "description": "Indicates that the actor has removed the object from the collection of liked items.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "unlike"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} no longer likes {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json b/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json
deleted file mode 100644
index 381818a..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/unsatisfy.json#",
-    "type": "object",
-    "title": "UnSatisfy",
-    "description": "Indicates that the actor has not satisfied the object. If a target is specified, it indicates the context within which the object was not satisfied. For instance, if a person fails to satisfy the requirements of some particular challenge, the person is the actor; the requirement is the object and the challenge is the target.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "unsatisfy"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} has not satisfied {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/unsave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unsave.json b/streams-schemas/src/main/jsonschema/verbs/unsave.json
deleted file mode 100644
index 09f7123..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/unsave.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/unsave.json#",
-    "type": "object",
-    "title": "UnSave",
-    "description": "Indicates that the actor has removed the object from the collection of saved items.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "unsave"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} unsaved {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/unshare.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unshare.json b/streams-schemas/src/main/jsonschema/verbs/unshare.json
deleted file mode 100644
index 9aceb25..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/unshare.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/unshare.json#",
-    "type": "object",
-    "title": "UnSave",
-    "description": "Indicates that the actor is no longer sharing the object. If a target is specified, it indicates the entity with whom the object is no longer being shared.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "unshare"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} is no longer sharing {object.displayName} with {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/update.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/update.json b/streams-schemas/src/main/jsonschema/verbs/update.json
deleted file mode 100644
index 4272bb4..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/update.json
+++ /dev/null
@@ -1,34 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/update.json#",
-    "type": "object",
-    "title": "Update",
-    "description": "The \"update\" verb indicates that the actor has modified the object. Use of the \"update\" verb is generally reserved to indicate modifications to existing objects or data such as changing an existing user's profile information.",
-    "notes": "The new property value can be a scalar value or an object. See the property object type",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "update"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} updated {target.displayName}'s {object.displayName} to {object.value}"
-        },
-        "object": {
-            "type": "object",
-            "$ref": "../object.json"
-        },
-        "target": {
-            "type": "object",
-            "optional": true,
-            "$ref": "../object.json"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/use.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/use.json b/streams-schemas/src/main/jsonschema/verbs/use.json
deleted file mode 100644
index 26c69a6..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/use.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/use.json#",
-    "type": "object",
-    "title": "Use",
-    "description": "Indicates that the actor has used the object in some manner.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "use"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} used {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/watch.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/watch.json b/streams-schemas/src/main/jsonschema/verbs/watch.json
deleted file mode 100644
index 08d7eb0..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/watch.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/watch.json#",
-    "type": "object",
-    "title": "Watch",
-    "description": "Indicates that the actor has watched the object. This verb is typically applicable only when the object represents dynamic, visible content such as a movie, a television show or a public performance.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "watch"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} watched {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/win.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/win.json b/streams-schemas/src/main/jsonschema/verbs/win.json
deleted file mode 100644
index baedbaa..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/win.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/win.json#",
-    "type": "object",
-    "title": "Win",
-    "description": "Indicates that the actor has won the object.  For instance, if a person wins a game.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "win"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} won {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/xmlschema/activity.xsd
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/xmlschema/activity.xsd b/streams-schemas/src/main/xmlschema/activity.xsd
deleted file mode 100644
index 1d81b44..0000000
--- a/streams-schemas/src/main/xmlschema/activity.xsd
+++ /dev/null
@@ -1,94 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-
-<xs:schema version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
-
-    <xs:element name="id" type="xs:string"/>
-    <xs:element name="actor" type="objectType"/>
-    <xs:element name="verb" type="verbType"/>
-    <xs:element name="object" type="objectType"/>
-    <xs:element name="target" type="objectType"/>
-    <xs:element name="object-type" type="xs:string"/>
-    <xs:element name="published" type="xs:dateTime"/>
-    <xs:element name="updated" type="xs:dateTime"/>
-    <xs:element name="provider" type="objectType"/>
-    <xs:element name="title" type="xs:string"/>
-    <xs:element name="content" type="xs:string"/>
-    <xs:element name="url" type="xs:string"/>
-
-    <xs:simpleType name="verbType">
-        <xs:restriction base="xs:string">
-            <xs:enumeration value="favorite"/>
-            <xs:enumeration value="follow"/>
-            <xs:enumeration value="join"/>
-            <xs:enumeration value="like"/>
-            <xs:enumeration value="make-friend"/>
-            <xs:enumeration value="play"/>
-            <xs:enumeration value="post"/>
-            <xs:enumeration value="rsvp-yes"/>
-            <xs:enumeration value="rsvp-no"/>
-            <xs:enumeration value="rsvp-maybe"/>
-            <xs:enumeration value="save"/>
-            <xs:enumeration value="share"/>
-            <xs:enumeration value="tag"/>
-            <xs:enumeration value="update"/>
-        </xs:restriction>
-    </xs:simpleType>
-
-    <xs:complexType name="objectType">
-        <xs:sequence>
-            <xs:element name="id" type="xs:string"/>
-            <xs:element name="image" type="mediaLink"/>
-            <xs:element name="displayName" type="xs:string"/>
-            <xs:element name="summary" type="xs:string"/>
-            <xs:element name="content" type="xs:string"/>
-            <xs:element name="url" type="xs:string"/>
-            <xs:element name="published" type="xs:string"/>
-            <xs:element name="updated" type="xs:string"/>
-            <xs:element name="object-type" >
-                <xs:simpleType>
-                    <xs:restriction base="xs:string">
-                        <xs:enumeration value="article"/>
-                        <xs:enumeration value="audio"/>
-                        <xs:enumeration value="badge"/>
-                        <xs:enumeration value="collection"/>
-                        <xs:enumeration value="comment"/>
-                        <xs:enumeration value="course"/>
-                        <xs:enumeration value="file"/>
-                        <xs:enumeration value="image"/>
-                        <xs:enumeration value="person"/>
-                        <xs:enumeration value="review"/>
-                        <xs:enumeration value="service"/>
-                    </xs:restriction>
-                </xs:simpleType>
-            </xs:element>
-        </xs:sequence>
-
-    </xs:complexType>
-
-    <xs:complexType name="mediaLink">
-        <xs:sequence>
-            <xs:element name="duration" type="xs:positiveInteger"/>
-            <xs:element name="height" type="xs:positiveInteger"/>
-            <xs:element name="width" type="xs:positiveInteger"/>
-            <xs:element name="url" type="xs:string"/>
-        </xs:sequence>
-    </xs:complexType>
-
-</xs:schema>
\ No newline at end of file



[03/53] [abbrv] incubator-streams git commit: STREAMS-398 - streams-schemas

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/terminate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/terminate.json b/streams-schemas/src/main/jsonschema/verbs/terminate.json
new file mode 100644
index 0000000..280eb31
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/terminate.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Terminate",
+    "description": "Indicates that the actor has terminated the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "terminate"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} terminated {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/tie.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/tie.json b/streams-schemas/src/main/jsonschema/verbs/tie.json
new file mode 100644
index 0000000..7530ed2
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/tie.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Tie",
+    "description": "Indicates that the actor has neither won or lost the object. This verb is generally only applicable when the object represents some form of competition, such as a game.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "tie"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} tied at {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/unfavorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unfavorite.json b/streams-schemas/src/main/jsonschema/verbs/unfavorite.json
new file mode 100644
index 0000000..bfa9c20
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/unfavorite.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "UnFavorite",
+    "description": "Indicates that the actor has removed the object from the collection of favorited items.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unfavorite"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} removed {object.displayName} as a favorite"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/unlike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unlike.json b/streams-schemas/src/main/jsonschema/verbs/unlike.json
new file mode 100644
index 0000000..4dc75f6
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/unlike.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "UnLike",
+    "description": "Indicates that the actor has removed the object from the collection of liked items.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unlike"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} no longer likes {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json b/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json
new file mode 100644
index 0000000..8ea075b
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "UnSatisfy",
+    "description": "Indicates that the actor has not satisfied the object. If a target is specified, it indicates the context within which the object was not satisfied. For instance, if a person fails to satisfy the requirements of some particular challenge, the person is the actor; the requirement is the object and the challenge is the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unsatisfy"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} has not satisfied {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/unsave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unsave.json b/streams-schemas/src/main/jsonschema/verbs/unsave.json
new file mode 100644
index 0000000..e45a97f
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/unsave.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "UnSave",
+    "description": "Indicates that the actor has removed the object from the collection of saved items.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unsave"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} unsaved {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/unshare.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unshare.json b/streams-schemas/src/main/jsonschema/verbs/unshare.json
new file mode 100644
index 0000000..4ca924b
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/unshare.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "UnSave",
+    "description": "Indicates that the actor is no longer sharing the object. If a target is specified, it indicates the entity with whom the object is no longer being shared.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unshare"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} is no longer sharing {object.displayName} with {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/update.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/update.json b/streams-schemas/src/main/jsonschema/verbs/update.json
new file mode 100644
index 0000000..4b143fc
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/update.json
@@ -0,0 +1,34 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Update",
+    "description": "The \"update\" verb indicates that the actor has modified the object. Use of the \"update\" verb is generally reserved to indicate modifications to existing objects or data such as changing an existing user's profile information.",
+    "notes": "The new property value can be a scalar value or an object. See the property object type",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "update"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} updated {target.displayName}'s {object.displayName} to {object.value}"
+        },
+        "object": {
+            "type": "object",
+            "$ref": "../object.json"
+        },
+        "target": {
+            "type": "object",
+            "optional": true,
+            "$ref": "../object.json"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/use.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/use.json b/streams-schemas/src/main/jsonschema/verbs/use.json
new file mode 100644
index 0000000..d5a79fd
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/use.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Use",
+    "description": "Indicates that the actor has used the object in some manner.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "use"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} used {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/watch.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/watch.json b/streams-schemas/src/main/jsonschema/verbs/watch.json
new file mode 100644
index 0000000..192d56e
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/watch.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Watch",
+    "description": "Indicates that the actor has watched the object. This verb is typically applicable only when the object represents dynamic, visible content such as a movie, a television show or a public performance.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "watch"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} watched {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/win.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/win.json b/streams-schemas/src/main/jsonschema/verbs/win.json
new file mode 100644
index 0000000..a5bef2a
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/win.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Win",
+    "description": "Indicates that the actor has won the object.  For instance, if a person wins a game.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "win"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} won {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/xmlschema/activity.xsd
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/xmlschema/activity.xsd b/streams-schemas/src/main/xmlschema/activity.xsd
new file mode 100644
index 0000000..1d81b44
--- /dev/null
+++ b/streams-schemas/src/main/xmlschema/activity.xsd
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
+<xs:schema version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+
+    <xs:element name="id" type="xs:string"/>
+    <xs:element name="actor" type="objectType"/>
+    <xs:element name="verb" type="verbType"/>
+    <xs:element name="object" type="objectType"/>
+    <xs:element name="target" type="objectType"/>
+    <xs:element name="object-type" type="xs:string"/>
+    <xs:element name="published" type="xs:dateTime"/>
+    <xs:element name="updated" type="xs:dateTime"/>
+    <xs:element name="provider" type="objectType"/>
+    <xs:element name="title" type="xs:string"/>
+    <xs:element name="content" type="xs:string"/>
+    <xs:element name="url" type="xs:string"/>
+
+    <xs:simpleType name="verbType">
+        <xs:restriction base="xs:string">
+            <xs:enumeration value="favorite"/>
+            <xs:enumeration value="follow"/>
+            <xs:enumeration value="join"/>
+            <xs:enumeration value="like"/>
+            <xs:enumeration value="make-friend"/>
+            <xs:enumeration value="play"/>
+            <xs:enumeration value="post"/>
+            <xs:enumeration value="rsvp-yes"/>
+            <xs:enumeration value="rsvp-no"/>
+            <xs:enumeration value="rsvp-maybe"/>
+            <xs:enumeration value="save"/>
+            <xs:enumeration value="share"/>
+            <xs:enumeration value="tag"/>
+            <xs:enumeration value="update"/>
+        </xs:restriction>
+    </xs:simpleType>
+
+    <xs:complexType name="objectType">
+        <xs:sequence>
+            <xs:element name="id" type="xs:string"/>
+            <xs:element name="image" type="mediaLink"/>
+            <xs:element name="displayName" type="xs:string"/>
+            <xs:element name="summary" type="xs:string"/>
+            <xs:element name="content" type="xs:string"/>
+            <xs:element name="url" type="xs:string"/>
+            <xs:element name="published" type="xs:string"/>
+            <xs:element name="updated" type="xs:string"/>
+            <xs:element name="object-type" >
+                <xs:simpleType>
+                    <xs:restriction base="xs:string">
+                        <xs:enumeration value="article"/>
+                        <xs:enumeration value="audio"/>
+                        <xs:enumeration value="badge"/>
+                        <xs:enumeration value="collection"/>
+                        <xs:enumeration value="comment"/>
+                        <xs:enumeration value="course"/>
+                        <xs:enumeration value="file"/>
+                        <xs:enumeration value="image"/>
+                        <xs:enumeration value="person"/>
+                        <xs:enumeration value="review"/>
+                        <xs:enumeration value="service"/>
+                    </xs:restriction>
+                </xs:simpleType>
+            </xs:element>
+        </xs:sequence>
+
+    </xs:complexType>
+
+    <xs:complexType name="mediaLink">
+        <xs:sequence>
+            <xs:element name="duration" type="xs:positiveInteger"/>
+            <xs:element name="height" type="xs:positiveInteger"/>
+            <xs:element name="width" type="xs:positiveInteger"/>
+            <xs:element name="url" type="xs:string"/>
+        </xs:sequence>
+    </xs:complexType>
+
+</xs:schema>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/activity.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/activity.json b/streams-schemas/src/site/resources/activity.json
new file mode 100644
index 0000000..8c058a4
--- /dev/null
+++ b/streams-schemas/src/site/resources/activity.json
@@ -0,0 +1,108 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "activity",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "An activity construct recounts what an actor did to an object in the past. If there is no actor it simply describes the change.",
+    "additionalProperties": true,
+    "properties": {
+        "id": {
+            "type": "string",
+            "description": "Uniquely identifies each activity within the service",
+            "required": true
+        },
+        "actor": {
+            "type": "object",
+            "required": true,
+            "description": "Describes the entity that performed the activity. An activity MUST contain one actor property whose value is a single Object.",
+            "javaInterfaces": ["java.io.Serializable"],
+            "$ref": "./object.json"
+        },
+        "verb": {
+            "title": "verb",
+            "type": "string",
+            "default": "post",
+            "required": true,
+            "description": "Identifies the action that the activity describes. An activity MUST contain a verb property whose value is a JSON String that is non-empty and matches either the \"isegment-nz-nc\" or the \"IRI\" production in [RFC3987]. Note that the use of a relative reference other than a simple name is not allowed."
+        },
+        "object": {
+            "type": "object",
+            "required": true,
+            "description": "Describes the primary object of the activity. For instance, in the activity, \"John saved a movie to his wishlist\", the object of the activity is \"movie\". An activity SHOULD contain an object property whose value is a single Object. If the object property is not contained, the primary object of the activity MAY be implied by context.",
+            "$ref": "./object.json"
+        },
+        "target": {
+            "type": "object",
+            "description": "Describes the target of the activity. The precise meaning of the activity's target is dependent on the activities verb, but will often be the object the English preposition \"to\". For instance, in the activity, \"John saved a movie to his wishlist\", the target of the activity is \"wishlist\". The activity target MUST NOT be used to identity an indirect object that is not a target of the activity. An activity MAY contain a target property whose value is a single Object.",
+            "$ref": "./object.json"
+        },
+        "published": {
+            "type": "string",
+            "description": "The date and time at which the activity occurred. It is important to note that this is not necessarily the same as the time at which the activity was published. An activity MUST contain a postedTime property.",
+            "format": "date-time"
+        },
+        "updated": {
+            "type": "string",
+            "description": "The date and time at which a previously published activity has been modified. An Activity MAY contain an updatedTime property",
+            "format": "date-time"
+        },
+        "generator": {
+            "type": "object",
+            "description": "Describes the application that generated the activity. An activity MAY contain a generator property whose value is a single Object.",
+            "javaInterfaces": ["java.io.Serializable"],
+            "extends": {
+                "$ref": "./object.json"
+            }
+        },
+        "icon": {
+            "type": "object",
+            "javaInterfaces": ["java.io.Serializable"],
+            "properties": {
+                "$ref": "./media_link.json#properties"
+            },
+            "description": "An IRI[RFC3987] identifying an image resource provides a visual representation of the activity, intended for human consumption. The image SHOULD have an aspect ratio of one (horizontal) to one (vertical) and SHOULD be suitable for presentation at a small size. An activity MAY have an icon property"
+        },
+        "provider": {
+            "type": "object",
+            "description": "Describes the application that published the activity. Note that this is not necessarily the same entity that generated the activity. An activity MAY contain a provider property whose value is a single Object",
+            "javaInterfaces": ["java.io.Serializable"],
+            "extends": {
+                "$ref": "./object.json"
+            }
+        },
+        "title": {
+            "type": "string",
+            "description": "Natural-language title or headline for the activity encoded as a single JSON String containing HTML markup. An activity MAY contain a title property",
+            "format": "html"
+        },
+        "content": {
+            "type": "string",
+            "description": "Natural-language description of the activity encoded as a single JSON String containing HTML markup. Visual elements such as thumbnail images MAY be included. An activity MAY contain a content property",
+            "format": "html"
+        },
+        "url": {
+            "type": "string",
+            "description": "An IRI [RFC3987] identifying a resource providing an HTML representation of the activity. An activity MAY contain a url property",
+            "format": "url"
+        },
+        "links": {
+            "type": "array",
+            "description": "Links between this object and other resources as defined in Web Linking",
+            "note": "Tell JSON schema team to not put links inside http://json-schema.org/hyper-schema#properties",
+            "items": {
+                "type": "string"
+            }
+        }
+    },
+    "links": [
+        {
+            "rel": "describedby",
+            "href": "./verbs/{verb}.json"
+        }
+    ]
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/activity.xsd
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/activity.xsd b/streams-schemas/src/site/resources/activity.xsd
new file mode 100644
index 0000000..1d81b44
--- /dev/null
+++ b/streams-schemas/src/site/resources/activity.xsd
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
+<xs:schema version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+
+    <xs:element name="id" type="xs:string"/>
+    <xs:element name="actor" type="objectType"/>
+    <xs:element name="verb" type="verbType"/>
+    <xs:element name="object" type="objectType"/>
+    <xs:element name="target" type="objectType"/>
+    <xs:element name="object-type" type="xs:string"/>
+    <xs:element name="published" type="xs:dateTime"/>
+    <xs:element name="updated" type="xs:dateTime"/>
+    <xs:element name="provider" type="objectType"/>
+    <xs:element name="title" type="xs:string"/>
+    <xs:element name="content" type="xs:string"/>
+    <xs:element name="url" type="xs:string"/>
+
+    <xs:simpleType name="verbType">
+        <xs:restriction base="xs:string">
+            <xs:enumeration value="favorite"/>
+            <xs:enumeration value="follow"/>
+            <xs:enumeration value="join"/>
+            <xs:enumeration value="like"/>
+            <xs:enumeration value="make-friend"/>
+            <xs:enumeration value="play"/>
+            <xs:enumeration value="post"/>
+            <xs:enumeration value="rsvp-yes"/>
+            <xs:enumeration value="rsvp-no"/>
+            <xs:enumeration value="rsvp-maybe"/>
+            <xs:enumeration value="save"/>
+            <xs:enumeration value="share"/>
+            <xs:enumeration value="tag"/>
+            <xs:enumeration value="update"/>
+        </xs:restriction>
+    </xs:simpleType>
+
+    <xs:complexType name="objectType">
+        <xs:sequence>
+            <xs:element name="id" type="xs:string"/>
+            <xs:element name="image" type="mediaLink"/>
+            <xs:element name="displayName" type="xs:string"/>
+            <xs:element name="summary" type="xs:string"/>
+            <xs:element name="content" type="xs:string"/>
+            <xs:element name="url" type="xs:string"/>
+            <xs:element name="published" type="xs:string"/>
+            <xs:element name="updated" type="xs:string"/>
+            <xs:element name="object-type" >
+                <xs:simpleType>
+                    <xs:restriction base="xs:string">
+                        <xs:enumeration value="article"/>
+                        <xs:enumeration value="audio"/>
+                        <xs:enumeration value="badge"/>
+                        <xs:enumeration value="collection"/>
+                        <xs:enumeration value="comment"/>
+                        <xs:enumeration value="course"/>
+                        <xs:enumeration value="file"/>
+                        <xs:enumeration value="image"/>
+                        <xs:enumeration value="person"/>
+                        <xs:enumeration value="review"/>
+                        <xs:enumeration value="service"/>
+                    </xs:restriction>
+                </xs:simpleType>
+            </xs:element>
+        </xs:sequence>
+
+    </xs:complexType>
+
+    <xs:complexType name="mediaLink">
+        <xs:sequence>
+            <xs:element name="duration" type="xs:positiveInteger"/>
+            <xs:element name="height" type="xs:positiveInteger"/>
+            <xs:element name="width" type="xs:positiveInteger"/>
+            <xs:element name="url" type="xs:string"/>
+        </xs:sequence>
+    </xs:complexType>
+
+</xs:schema>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/collection.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/collection.json b/streams-schemas/src/site/resources/collection.json
new file mode 100644
index 0000000..8173b75
--- /dev/null
+++ b/streams-schemas/src/site/resources/collection.json
@@ -0,0 +1,47 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "collection",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "A collection is a generic list of Objects of any object type. The objectType of each item in the collection MAY be omitted if the type of object can be established through context. The collection is used primarily as the root of an Activity Streams document, but can be used as the value of extension properties in a variety of situations. ",
+    "properties": {
+        "url": {
+            "type": "string",
+            "description": "An IRI [RFC3987] referencing a JSON document containing the full listing of objects in the collection."
+        },
+        "totalItems": {
+            "type": "integer",
+            "description": "Non-negative integer specifying the total number of activities within the stream. The Stream serialization MAY contain a count property."
+        },
+        "items": {
+            "type": "array",
+            "required": true,
+            "description": "An array containing a listing of Objects of any object type. If used in combination with the url property, the items array can be used to provide a subset of the objects that may be found in the resource identified by the url.",
+            "items": {
+                "type": "object",
+                "extends": {
+                    "$ref": "./object.json"
+                }
+            }
+        },
+        "links": {
+            "type": "array",
+            "optional": true,
+            "description": "Links between an this object and other resources as defined in Web Linking",
+            "extends": {
+                "$ref": "http://json-schema.org/links#properties"
+            }
+        }
+    },
+    "links": [
+        {
+            "rel": "describedby",
+            "href": "http://json-schema.org/schema"
+        }
+    ]
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/media_link.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/media_link.json b/streams-schemas/src/site/resources/media_link.json
new file mode 100644
index 0000000..fa55b2f
--- /dev/null
+++ b/streams-schemas/src/site/resources/media_link.json
@@ -0,0 +1,34 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "media_link",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "Visual representation of an object in the form of an image, video or embedded HTML fragments",
+    "properties": {
+        "duration": {
+            "title": "duration",
+            "type": "number",
+            "description": "A hint to the consumer about the length, in seconds, of the media resource identified by the url property. A media link MAY contain a \"duration\" property when the target resource is a time-based media item such as an audio or video."
+        },
+        "height": {
+            "title": "height",
+            "type": "integer",
+            "description": "A hint to the consumer about the height, in pixels, of the media resource identified by the url property. A media link MAY contain a height property when the target resource is a visual media item such as an image, video or embeddable HTML page."
+        },
+        "width": {
+            "title": "width",
+            "type": "integer",
+            "description": "A hint to the consumer about the width, in pixels, of the media resource identified by the url property. A media link MAY contain a width property when the target resource is a visual media item such as an image, video or embeddable HTML page."
+        },
+        "url": {
+            "type": "string",
+            "required": true,
+            "description": "The IRI of the media resource being linked. A media link MUST have a url property."
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/object.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/object.json b/streams-schemas/src/site/resources/object.json
new file mode 100644
index 0000000..97adc3c
--- /dev/null
+++ b/streams-schemas/src/site/resources/object.json
@@ -0,0 +1,98 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "object",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "Basic object on the web. The only required property is the id",
+    "properties": {
+        "id": {
+            "type": "string",
+            "description": "Provides a permanent, universally unique identifier for the object in the form of an absolute IRI [RFC3987]. An object SHOULD contain a single id property. If an object does not contain an id property, consumers MAY use the value of the url property as a less-reliable, non-unique identifier.",
+            "required": true
+        },
+        "image": {
+            "format": "image",
+            "type": "object",
+            "extends": {
+                "$ref": "./media_link.json"
+            },
+            "description": "Description of a resource providing a visual representation of the object, intended for human consumption. An object MAY contain an image property whose value is a Media Link."
+        },
+        "displayName": {
+            "type": "string",
+            "description": "A natural-language, human-readable and plain-text name for the object. HTML markup MUST NOT be included. An object MAY contain a displayName property. If the object does not specify an objectType property, the object SHOULD specify a displayName"
+        },
+        "summary": {
+            "type": "string",
+            "description": "Natural-language summary of the object encoded as a single JSON String containing HTML markup. Visual elements such as thumbnail images MAY be included. An activity MAY contain a summary property"
+        },
+        "content": {
+            "type": "string",
+            "description": "Natural-language description of the object encoded as a single JSON String containing HTML markup. Visual elements such as thumbnail images MAY be included. An object MAY contain a content property"
+        },
+        "url": {
+            "type": "string",
+            "format": "url",
+            "description": "An IRI [RFC3987] identifying a resource providing an HTML representation of the object. An object MAY contain a url property"
+        },
+        "objectType": {
+            "type": "string",
+            "description": "Identifies the type of object. An object MAY contain an objectType property whose value is a JSON String that is non-empty and matches either the \"isegment-nz-nc\" or the \"IRI\" production in [RFC3987]. Note that the use of a relative reference other than a simple name is not allowed. If no objectType property is contained, the object has no specific type."
+        },
+        "author": {
+            "type": "object",
+            "description": "Describes the entity that created or authored the object. An object MAY contain a single author property whose value is an Object of any type. Note that the author field identifies the entity that created the object and does not necessarily identify the entity that published the object. For instance, it may be the case that an object created by one person is posted and published to a system by an entirely different entity",
+            "javaInterfaces": ["java.io.Serializable"],
+            "extends": {
+                "$ref": "./object.json"
+            }
+        },
+        "published": {
+            "type": "string",
+            "description": "[RFC3339] date-time. The date and time at which the object was published. An object MAY contain a published property",
+            "format": "date-time"
+        },
+        "updated": {
+            "type": "string",
+            "description": "[RFC3339] date-time. The date and time at which a previously published object has been modified. An Object MAY contain an updated property.",
+            "format": "date-time"
+        },
+        "attachments": {
+            "title": "Related objects",
+            "description": "A collection of one or more additional, associated objects, similar to the concept of attached files in an email message. An object MAY have an attachedObjects property whose value is a JSON Array of Objects.",
+            "type": "array",
+            "items": {
+                "type": "object",
+                "javaType": "org.apache.streams.pojo.json.Attachment",
+                "javaInterfaces": ["java.io.Serializable"],
+                "$ref": "./object.json"
+            }
+        },
+        "upstreamDuplicates": {
+            "type": "array",
+            "description": "A JSON Array of one or more absolute IRI's [RFC3987] identifying objects that duplicate this object's content. An object SHOULD contain an upstreamDuplicates property when a publisher is knowingly duplicating with a new ID the content from another object. This MAY be used as a hint for consumers to use when resolving duplicates between objects received from different sources",
+            "items": {
+                "type": "string"
+            }
+        },
+        "downstreamDuplicates": {
+            "type": "array",
+            "description": "A JSON Array of one or more absolute IRI's [RFC3987] identifying objects that duplicate this object's content. An object SHOULD contain a downstreamDuplicates property when there are known objects, possibly in a different system, that duplicate the content in this object. This MAY be used as a hint for consumers to use when resolving duplicates between objects received from different sources.",
+            "items": {
+                "type": "string"
+            }
+        }
+    },
+    "additionalProperties": true,
+    "links": [
+        {
+            "rel": "describedby",
+            "href": "./objectType/{objectType}.json"
+        }
+    ]
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/alert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/alert.json b/streams-schemas/src/site/resources/objectTypes/alert.json
new file mode 100644
index 0000000..0ace5de
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/alert.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "alert",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "alert"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/application.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/application.json b/streams-schemas/src/site/resources/objectTypes/application.json
new file mode 100644
index 0000000..ceb1208
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/application.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "application",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "application"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/article.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/article.json b/streams-schemas/src/site/resources/objectTypes/article.json
new file mode 100644
index 0000000..8abc7f7
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/article.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "article",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "article"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/audio.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/audio.json b/streams-schemas/src/site/resources/objectTypes/audio.json
new file mode 100644
index 0000000..92cef7f
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/audio.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "audio",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "audio"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/badge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/badge.json b/streams-schemas/src/site/resources/objectTypes/badge.json
new file mode 100644
index 0000000..b743236
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/badge.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "badge",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "badge"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/binary.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/binary.json b/streams-schemas/src/site/resources/objectTypes/binary.json
new file mode 100644
index 0000000..8915633
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/binary.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "binary",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "binary"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/bookmark.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/bookmark.json b/streams-schemas/src/site/resources/objectTypes/bookmark.json
new file mode 100644
index 0000000..3d3e3f1
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/bookmark.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "bookmark",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "bookmark"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/comment.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/comment.json b/streams-schemas/src/site/resources/objectTypes/comment.json
new file mode 100644
index 0000000..90249c4
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/comment.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "comment",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "comment"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/device.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/device.json b/streams-schemas/src/site/resources/objectTypes/device.json
new file mode 100644
index 0000000..faea368
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/device.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "device",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "device"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/event.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/event.json b/streams-schemas/src/site/resources/objectTypes/event.json
new file mode 100644
index 0000000..479213f
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/event.json
@@ -0,0 +1,51 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "event",
+    "description": "xCal fromat for vevent",
+    "extends": [
+        {
+            "$ref": "../object.json"
+        },
+        {
+            "$ref": "http://www.json-schema.org/calendar"
+        }
+    ],
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "event"
+        },
+        "attendedBy": {
+            "type": "../collection.json"
+        },
+        "attending": {
+          "type": "../collection.json"
+        },
+        "endTime": {
+          "type": "string",
+          "format": "date-time"
+        },
+        "invited": {
+          "type": "../collection.json"
+        },
+        "maybeAttending": {
+          "type": "../collection.json"
+        },
+        "notAttendedBy": {
+          "type": "../collection.json"
+        },
+        "notAttending": {
+          "type": "../collection.json"
+        },
+        "startTime": {
+          "type": "string",
+          "format": "date-time"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/file.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/file.json b/streams-schemas/src/site/resources/objectTypes/file.json
new file mode 100644
index 0000000..695ef98
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/file.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "file",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "file"
+        },
+        "fileUrl": {
+          "type": "string"
+        },
+        "mimeType": {
+          "type": "string"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/folder.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/folder.json b/streams-schemas/src/site/resources/objectTypes/folder.json
new file mode 100644
index 0000000..a319efe
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/folder.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "folder",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "folder"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/game.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/game.json b/streams-schemas/src/site/resources/objectTypes/game.json
new file mode 100644
index 0000000..5f13dfc
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/game.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "game",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "game"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/group.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/group.json b/streams-schemas/src/site/resources/objectTypes/group.json
new file mode 100644
index 0000000..b67d88d
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/group.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "group",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "group"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/image.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/image.json b/streams-schemas/src/site/resources/objectTypes/image.json
new file mode 100644
index 0000000..8a19fd1
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/image.json
@@ -0,0 +1,22 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "image",
+    "extends": {
+        "$ref": "../media_link.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "image"
+        },
+        "fullImage": {
+          "type": "string"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/issue.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/issue.json b/streams-schemas/src/site/resources/objectTypes/issue.json
new file mode 100644
index 0000000..29bfe44
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/issue.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "issue",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "issue"
+        },
+        "types": {
+          "type": "array",
+          "items": {
+            "type": "string"
+          }
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/job.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/job.json b/streams-schemas/src/site/resources/objectTypes/job.json
new file mode 100644
index 0000000..2d82975
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/job.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "job",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "job"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/list.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/list.json b/streams-schemas/src/site/resources/objectTypes/list.json
new file mode 100644
index 0000000..d7c164a
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/list.json
@@ -0,0 +1,28 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "list",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "list"
+        },
+        "items": {
+            "type": "array",
+            "items": {
+                "type": "object",
+                "properties": {
+                    "$ref": "../object.json"
+                }
+            }
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/note.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/note.json b/streams-schemas/src/site/resources/objectTypes/note.json
new file mode 100644
index 0000000..09de97c
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/note.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "note",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "note"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/offer.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/offer.json b/streams-schemas/src/site/resources/objectTypes/offer.json
new file mode 100644
index 0000000..38db718
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/offer.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "offer",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "offer"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/organization.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/organization.json b/streams-schemas/src/site/resources/objectTypes/organization.json
new file mode 100644
index 0000000..a3fd5a2
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/organization.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "organization",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "organization"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/page.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/page.json b/streams-schemas/src/site/resources/objectTypes/page.json
new file mode 100644
index 0000000..4f76aa2
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/page.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "page",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "page"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/permission.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/permission.json b/streams-schemas/src/site/resources/objectTypes/permission.json
new file mode 100644
index 0000000..32b395c
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/permission.json
@@ -0,0 +1,36 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "permission",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "permission"
+        },
+        "scope": {
+            "type": "object",
+            "extends": {
+              "$ref": "../object.json"
+            }
+        },
+        "actions": {
+            "type": "array",
+            "items": {
+               "type": "string",
+               "enumeration": [
+                  "create",
+                  "delete",
+                  "modify"
+               ]
+            }
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/person.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/person.json b/streams-schemas/src/site/resources/objectTypes/person.json
new file mode 100644
index 0000000..f42eb8e
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/person.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "person",
+    "description": "vCard Format. Does not match PoCO",
+    "extends": [
+        {
+            "$ref": "../object.json"
+        },
+        {
+            "$ref": "http://www.json-schema.org/card"
+        }
+    ],
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "person"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/photo-album.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/photo-album.json b/streams-schemas/src/site/resources/objectTypes/photo-album.json
new file mode 100644
index 0000000..933804b
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/photo-album.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "article",
+    "extends": {
+        "$ref": "../objectTypes/list.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "photo-album"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/photo.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/photo.json b/streams-schemas/src/site/resources/objectTypes/photo.json
new file mode 100644
index 0000000..347f25c
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/photo.json
@@ -0,0 +1,23 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "photo",
+    "extends": {
+        "$ref": "../objectTypes/file.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "photo"
+        },
+        "displayName": {
+            "type": "string",
+            "default": "a photo"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/place.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/place.json b/streams-schemas/src/site/resources/objectTypes/place.json
new file mode 100644
index 0000000..bb96a79
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/place.json
@@ -0,0 +1,43 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "place",
+    "extends": [
+        {
+            "$ref": "../object.json"
+        }
+    ],
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "place"
+        },
+        "address": {
+          "type": "object",
+          "extends": [
+            {
+              "$ref": "http://www.json-schema.org/address"
+            }
+          ]
+        },
+        "position": {
+          "type": "object",
+          "properties": {
+            "altitude": {
+              "type": "number"
+            },
+            "latitude": {
+              "type": "number"
+            },
+            "longitude": {
+              "type": "number"
+            }
+          }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/playlist.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/playlist.json b/streams-schemas/src/site/resources/objectTypes/playlist.json
new file mode 100644
index 0000000..6ce9dd2
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/playlist.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "playlist",
+    "extends": {
+        "$ref": "../objectTypes/list.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "playlist"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/process.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/process.json b/streams-schemas/src/site/resources/objectTypes/process.json
new file mode 100644
index 0000000..d717cc7
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/process.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "process",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "process"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/product.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/product.json b/streams-schemas/src/site/resources/objectTypes/product.json
new file mode 100644
index 0000000..4e035cf
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/product.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "product",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "product"
+        },
+        "fullImage": {
+            "type": "object",
+            "extends": {
+              "$ref": "../media_link.json"
+            }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/property.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/property.json b/streams-schemas/src/site/resources/objectTypes/property.json
new file mode 100644
index 0000000..0cd630e
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/property.json
@@ -0,0 +1,48 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "property",
+    "description": "A property describes name, path and value. Can be used with delete, update or post verbs",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "property"
+        },
+        "displayName": {
+            "type": "string",
+            "description": "The human readable name of the property in the appropriate language",
+            "optional": true
+        },
+        "path": {
+            "type": "string",
+            "description": "dot delimited path to the property in the target. Ex: streetAddress"
+        }
+    },
+    "example": {
+        "actor": {
+            "id": 1212,
+            "displayName": "Peter"
+        },
+        "verb": "update",
+        "time": "2010-08-02T15:29:00Z",
+        "object": {
+            "objectType": "property",
+            "displayName": "street address",
+            "path": "streetAddress",
+            "content": "234 Amazing St"
+        },
+        "target": {
+            "id": 12121,
+            "time": "2010-08-02T15:29:00Z",
+            "displayName": "Peter's House"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/question.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/question.json b/streams-schemas/src/site/resources/objectTypes/question.json
new file mode 100644
index 0000000..cccdfe0
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/question.json
@@ -0,0 +1,28 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "question",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "question"
+        },
+        "options": {
+            "type": "array",
+            "items": {
+               "type": "object",
+                "extends": {
+                  "$ref": "../object.json"
+                }
+            }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/review.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/review.json b/streams-schemas/src/site/resources/objectTypes/review.json
new file mode 100644
index 0000000..7629cb6
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/review.json
@@ -0,0 +1,22 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "review",
+    "extends": {
+        "$ref": "../objectTypes/article.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "review"
+        },
+        "rating": {
+           "type": "number"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/role.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/role.json b/streams-schemas/src/site/resources/objectTypes/role.json
new file mode 100644
index 0000000..25524ab
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/role.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "role",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "role"
+        },
+        "members": {
+            "type": "object",
+            "extends": {
+              "$ref": "../collection.json"
+            }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/service.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/service.json b/streams-schemas/src/site/resources/objectTypes/service.json
new file mode 100644
index 0000000..3d4a496
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/service.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "service",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "service"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/song.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/song.json b/streams-schemas/src/site/resources/objectTypes/song.json
new file mode 100644
index 0000000..46d6eb0
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/song.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "song",
+    "extends": {
+        "$ref": "../objectTypes/audio.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "song"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/status.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/status.json b/streams-schemas/src/site/resources/objectTypes/status.json
new file mode 100644
index 0000000..a029f19
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/status.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "status",
+    "extends": {
+        "$ref": "../objectTypes/note.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "song"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/task.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/task.json b/streams-schemas/src/site/resources/objectTypes/task.json
new file mode 100644
index 0000000..fb2f39f
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/task.json
@@ -0,0 +1,40 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "task",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "task"
+        },
+        "by": {
+          "type": "string",
+          "format": "date-time"
+        },
+        "prerequisites": {
+          "type": "array",
+          "items": {
+            "type": "object",
+            "$ref": "../activity.json"
+          }
+        },
+        "required": {
+          "type": "boolean"
+        },
+        "supersedes": {
+          "type": "array",
+          "items": {
+            "type": "object",
+            "$ref": "../activity.json"
+          }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/team.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/team.json b/streams-schemas/src/site/resources/objectTypes/team.json
new file mode 100644
index 0000000..37419a0
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/team.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "team",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "team"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/objectTypes/video.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/video.json b/streams-schemas/src/site/resources/objectTypes/video.json
new file mode 100644
index 0000000..7ac63d8
--- /dev/null
+++ b/streams-schemas/src/site/resources/objectTypes/video.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "video",
+    "extends": {
+        "$ref": "../objectTypes/file.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "video"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/accept.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/accept.json b/streams-schemas/src/site/resources/verbs/accept.json
new file mode 100644
index 0000000..a9f91fe
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/accept.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Accept",
+    "description": "Indicates that that the actor has accepted the object. For instance, a person accepting an award, or accepting an assignment.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "accept"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} accepted {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/access.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/access.json b/streams-schemas/src/site/resources/verbs/access.json
new file mode 100644
index 0000000..156e3cb
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/access.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Access",
+    "description": "Indicates that the actor has accessed the object. For instance, a person accessing a room, or accessing a file.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "access"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} accessed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/acknowledge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/acknowledge.json b/streams-schemas/src/site/resources/verbs/acknowledge.json
new file mode 100644
index 0000000..2e84c43
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/acknowledge.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Acknowledge",
+    "description": "Indicates that the actor has acknowledged the object. This effectively signals that the actor is aware of the object's existence.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "acknowledge"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} acknowledge {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/site/resources/verbs/add.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/add.json b/streams-schemas/src/site/resources/verbs/add.json
new file mode 100644
index 0000000..cec0c58
--- /dev/null
+++ b/streams-schemas/src/site/resources/verbs/add.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Add",
+    "description": "Indicates that the actor has added the object to the target. For instance, adding a photo to an album.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "add"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} added {object.displayName} to {target.displayName}"
+        }
+    }
+}



[39/53] [abbrv] incubator-streams git commit: Merge branch 'STREAMS-389'

Posted by mf...@apache.org.
Merge branch 'STREAMS-389'

# Conflicts:
#	streams-plugins/pom.xml
#	streams-plugins/streams-plugin-scala/pom.xml


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/abc58b42
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/abc58b42
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/abc58b42

Branch: refs/heads/invalid_headers
Commit: abc58b42db71cad1a9baad51c7a479e56ca4ab4c
Parents: 8e929eb d9674f7
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Wed Oct 12 12:27:15 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Oct 12 12:27:15 2016 -0500

----------------------------------------------------------------------
 pom.xml                                         |   7 +-
 streams-config/pom.xml                          |   2 +-
 .../src/main/jsonschema/com/twitter/tweet.json  |   6 +-
 streams-plugins/pom.xml                         |   6 +
 .../streams-plugin-cassandra/pom.xml            | 251 ++++++++++++
 .../StreamsCassandraGenerationConfig.java       |  81 ++++
 .../StreamsCassandraResourceGenerator.java      | 366 ++++++++++++++++++
 .../StreamsCassandraResourceGeneratorMojo.java  |  62 +++
 .../src/site/markdown/index.md                  |  36 ++
 ...treamsCassandraResourceGeneratorCLITest.java |  52 +++
 ...reamsCassandraResourceGeneratorMojoTest.java |  78 ++++
 .../StreamsCassandraResourceGeneratorTest.java  |  80 ++++
 .../resources/streams-plugin-cassandra/pom.xml  |  76 ++++
 .../streams-plugin-elasticsearch/pom.xml        | 252 ++++++++++++
 .../StreamsElasticsearchGenerationConfig.java   |  81 ++++
 .../StreamsElasticsearchResourceGenerator.java  | 380 +++++++++++++++++++
 ...reamsElasticsearchResourceGeneratorMojo.java |  72 ++++
 .../src/site/markdown/index.md                  |  38 ++
 ...msElasticsearchResourceGeneratorCLITest.java |  39 ++
 ...sElasticsearchResourceGeneratorMojoTest.java |  50 +++
 ...reamsElasticsearchResourceGeneratorTest.java | 110 ++++++
 .../streams-plugin-elasticsearch/pom.xml        |  76 ++++
 streams-plugins/streams-plugin-hbase/pom.xml    | 251 ++++++++++++
 .../hbase/StreamsHbaseGenerationConfig.java     |  90 +++++
 .../hbase/StreamsHbaseResourceGenerator.java    | 193 ++++++++++
 .../StreamsHbaseResourceGeneratorMojo.java      |  71 ++++
 .../src/site/markdown/index.md                  |  40 ++
 .../StreamsHbaseResourceGeneratorCLITest.java   |  41 ++
 .../StreamsHbaseResourceGeneratorMojoTest.java  |  65 ++++
 .../test/StreamsHbaseResourceGeneratorTest.java | 102 +++++
 .../test/resources/streams-plugin-hbase/pom.xml |  77 ++++
 streams-plugins/streams-plugin-hive/pom.xml     | 251 ++++++++++++
 .../hive/StreamsHiveGenerationConfig.java       |  83 ++++
 .../hive/StreamsHiveResourceGenerator.java      | 308 +++++++++++++++
 .../hive/StreamsHiveResourceGeneratorMojo.java  |  63 +++
 .../src/site/markdown/index.md                  |  40 ++
 .../StreamsHiveResourceGeneratorCLITest.java    |  41 ++
 .../StreamsHiveResourceGeneratorMojoTest.java   |  64 ++++
 .../test/StreamsHiveResourceGeneratorTest.java  | 102 +++++
 .../src/test/resources/Tweet.hql                | 297 +++++++++++++++
 .../src/test/resources/expected/activity.hql    | 203 ++++++++++
 .../src/test/resources/expected/collection.hql  |  47 +++
 .../src/test/resources/expected/media_link.hql  |  11 +
 .../src/test/resources/expected/object.hql      |  61 +++
 .../resources/expected/objectTypes/place.hql    |  79 ++++
 .../test/resources/expected/verbs/purchase.hql  | 203 ++++++++++
 .../test/resources/streams-plugin-hive/pom.xml  |  76 ++++
 streams-plugins/streams-plugin-pig/pom.xml      | 251 ++++++++++++
 .../plugins/pig/StreamsPigGenerationConfig.java |  83 ++++
 .../pig/StreamsPigResourceGenerator.java        | 305 +++++++++++++++
 .../pig/StreamsPigResourceGeneratorMojo.java    |  61 +++
 .../src/site/markdown/index.md                  |  38 ++
 .../StreamsPigResourceGeneratorCLITest.java     |  39 ++
 .../StreamsPigResourceGeneratorMojoTest.java    |  64 ++++
 .../test/StreamsPigResourceGeneratorTest.java   | 100 +++++
 .../src/test/resources/expected/media_link.pig  |   1 +
 .../resources/expected/objectTypes/file.pig     |   1 +
 .../expected/objectTypes/photo-album.pig        |   1 +
 .../test/resources/streams-plugin-pig/pom.xml   |  76 ++++
 streams-plugins/streams-plugin-pojo/pom.xml     | 253 ++++++++++++
 .../plugins/StreamsPojoGenerationConfig.java    |  68 ++++
 .../plugins/StreamsPojoSourceGenerator.java     |  75 ++++
 .../plugins/StreamsPojoSourceGeneratorMojo.java |  95 +++++
 .../src/site/markdown/index.md                  |  38 ++
 .../test/StreamsPojoSourceGeneratorCLITest.java |  43 +++
 .../StreamsPojoSourceGeneratorMojoTest.java     |  68 ++++
 .../test/StreamsPojoSourceGeneratorTest.java    |  72 ++++
 .../test/resources/streams-plugin-pojo/pom.xml  | 131 +++++++
 streams-plugins/streams-plugin-scala/pom.xml    |  12 +
 .../plugins/StreamsScalaSourceGenerator.java    | 351 +++++++++++++++++
 .../StreamsScalaSourceGeneratorMojo.java        |  59 +++
 .../src/site/markdown/index.md                  |  36 ++
 .../test/StreamsScalaSourceGeneratorTest.java   |  55 +++
 streams-pojo/pom.xml                            |   6 +
 streams-runtimes/streams-runtime-local/pom.xml  |   2 +-
 streams-schemas/pom.xml                         |  39 ++
 .../streams-schema-activitystreams/pom.xml      |  82 ++++
 .../src/main/jsonschema/activity.json           | 108 ++++++
 .../src/main/jsonschema/collection.json         |  47 +++
 .../src/main/jsonschema/media_link.json         |  34 ++
 .../src/main/jsonschema/object.json             |  98 +++++
 .../src/main/jsonschema/objectTypes/alert.json  |  19 +
 .../jsonschema/objectTypes/application.json     |  19 +
 .../main/jsonschema/objectTypes/article.json    |  19 +
 .../src/main/jsonschema/objectTypes/audio.json  |  19 +
 .../src/main/jsonschema/objectTypes/badge.json  |  19 +
 .../src/main/jsonschema/objectTypes/binary.json |  19 +
 .../main/jsonschema/objectTypes/bookmark.json   |  19 +
 .../main/jsonschema/objectTypes/comment.json    |  19 +
 .../src/main/jsonschema/objectTypes/device.json |  19 +
 .../src/main/jsonschema/objectTypes/event.json  |  51 +++
 .../src/main/jsonschema/objectTypes/file.json   |  25 ++
 .../src/main/jsonschema/objectTypes/folder.json |  19 +
 .../src/main/jsonschema/objectTypes/game.json   |  19 +
 .../src/main/jsonschema/objectTypes/group.json  |  19 +
 .../src/main/jsonschema/objectTypes/image.json  |  22 ++
 .../src/main/jsonschema/objectTypes/issue.json  |  25 ++
 .../src/main/jsonschema/objectTypes/job.json    |  19 +
 .../src/main/jsonschema/objectTypes/list.json   |  28 ++
 .../src/main/jsonschema/objectTypes/note.json   |  19 +
 .../src/main/jsonschema/objectTypes/offer.json  |  19 +
 .../jsonschema/objectTypes/organization.json    |  19 +
 .../src/main/jsonschema/objectTypes/page.json   |  19 +
 .../main/jsonschema/objectTypes/permission.json |  36 ++
 .../src/main/jsonschema/objectTypes/person.json |  25 ++
 .../jsonschema/objectTypes/photo-album.json     |  19 +
 .../src/main/jsonschema/objectTypes/photo.json  |  23 ++
 .../src/main/jsonschema/objectTypes/place.json  |  39 ++
 .../main/jsonschema/objectTypes/playlist.json   |  19 +
 .../main/jsonschema/objectTypes/process.json    |  19 +
 .../main/jsonschema/objectTypes/product.json    |  25 ++
 .../main/jsonschema/objectTypes/property.json   |  48 +++
 .../main/jsonschema/objectTypes/question.json   |  28 ++
 .../src/main/jsonschema/objectTypes/review.json |  22 ++
 .../src/main/jsonschema/objectTypes/role.json   |  25 ++
 .../main/jsonschema/objectTypes/service.json    |  19 +
 .../src/main/jsonschema/objectTypes/song.json   |  19 +
 .../src/main/jsonschema/objectTypes/status.json |  19 +
 .../src/main/jsonschema/objectTypes/task.json   |  40 ++
 .../src/main/jsonschema/objectTypes/team.json   |  19 +
 .../src/main/jsonschema/objectTypes/video.json  |  19 +
 .../src/main/jsonschema/verbs/accept.json       |  24 ++
 .../src/main/jsonschema/verbs/access.json       |  24 ++
 .../src/main/jsonschema/verbs/acknowledge.json  |  24 ++
 .../src/main/jsonschema/verbs/add.json          |  24 ++
 .../src/main/jsonschema/verbs/agree.json        |  24 ++
 .../src/main/jsonschema/verbs/append.json       |  24 ++
 .../src/main/jsonschema/verbs/approve.json      |  24 ++
 .../src/main/jsonschema/verbs/archive.json      |  24 ++
 .../src/main/jsonschema/verbs/assign.json       |  24 ++
 .../src/main/jsonschema/verbs/at.json           |  24 ++
 .../src/main/jsonschema/verbs/attach.json       |  24 ++
 .../src/main/jsonschema/verbs/attend.json       |  24 ++
 .../src/main/jsonschema/verbs/author.json       |  24 ++
 .../src/main/jsonschema/verbs/authorize.json    |  24 ++
 .../src/main/jsonschema/verbs/borrow.json       |  24 ++
 .../src/main/jsonschema/verbs/build.json        |  24 ++
 .../src/main/jsonschema/verbs/cancel.json       |  24 ++
 .../src/main/jsonschema/verbs/checkin.json      |  24 ++
 .../src/main/jsonschema/verbs/close.json        |  24 ++
 .../src/main/jsonschema/verbs/complete.json     |  24 ++
 .../src/main/jsonschema/verbs/confirm.json      |  24 ++
 .../src/main/jsonschema/verbs/consume.json      |  24 ++
 .../src/main/jsonschema/verbs/create.json       |  24 ++
 .../src/main/jsonschema/verbs/delete.json       |  24 ++
 .../src/main/jsonschema/verbs/deliver.json      |  24 ++
 .../src/main/jsonschema/verbs/deny.json         |  24 ++
 .../src/main/jsonschema/verbs/disagree.json     |  24 ++
 .../src/main/jsonschema/verbs/dislike.json      |  24 ++
 .../src/main/jsonschema/verbs/experience.json   |  24 ++
 .../src/main/jsonschema/verbs/favorite.json     |  24 ++
 .../src/main/jsonschema/verbs/find.json         |  24 ++
 .../jsonschema/verbs/flag-as-inappropriate.json |  24 ++
 .../src/main/jsonschema/verbs/follow.json       |  24 ++
 .../src/main/jsonschema/verbs/give.json         |  24 ++
 .../src/main/jsonschema/verbs/host.json         |  24 ++
 .../src/main/jsonschema/verbs/ignore.json       |  24 ++
 .../src/main/jsonschema/verbs/insert.json       |  24 ++
 .../src/main/jsonschema/verbs/install.json      |  24 ++
 .../src/main/jsonschema/verbs/interact.json     |  24 ++
 .../src/main/jsonschema/verbs/invite.json       |  24 ++
 .../src/main/jsonschema/verbs/join.json         |  24 ++
 .../src/main/jsonschema/verbs/leave.json        |  24 ++
 .../src/main/jsonschema/verbs/like.json         |  24 ++
 .../src/main/jsonschema/verbs/listen.json       |  24 ++
 .../src/main/jsonschema/verbs/lose.json         |  24 ++
 .../src/main/jsonschema/verbs/make-friend.json  |  24 ++
 .../src/main/jsonschema/verbs/open.json         |  24 ++
 .../src/main/jsonschema/verbs/play.json         |  24 ++
 .../src/main/jsonschema/verbs/post.json         |  24 ++
 .../src/main/jsonschema/verbs/present.json      |  24 ++
 .../src/main/jsonschema/verbs/purchase.json     |  24 ++
 .../src/main/jsonschema/verbs/qualify.json      |  24 ++
 .../src/main/jsonschema/verbs/read.json         |  24 ++
 .../src/main/jsonschema/verbs/receive.json      |  24 ++
 .../src/main/jsonschema/verbs/reject.json       |  24 ++
 .../main/jsonschema/verbs/remove-friend.json    |  24 ++
 .../src/main/jsonschema/verbs/remove.json       |  24 ++
 .../src/main/jsonschema/verbs/replace.json      |  24 ++
 .../main/jsonschema/verbs/request-friend.json   |  24 ++
 .../src/main/jsonschema/verbs/request.json      |  24 ++
 .../src/main/jsonschema/verbs/resolve.json      |  24 ++
 .../src/main/jsonschema/verbs/retract.json      |  24 ++
 .../src/main/jsonschema/verbs/return.json       |  24 ++
 .../src/main/jsonschema/verbs/rsvp-maybe.json   |  24 ++
 .../src/main/jsonschema/verbs/rsvp-no.json      |  24 ++
 .../src/main/jsonschema/verbs/rsvp-yes.json     |  24 ++
 .../src/main/jsonschema/verbs/satisfy.json      |  24 ++
 .../src/main/jsonschema/verbs/save.json         |  24 ++
 .../src/main/jsonschema/verbs/schedule.json     |  24 ++
 .../src/main/jsonschema/verbs/search.json       |  24 ++
 .../src/main/jsonschema/verbs/sell.json         |  24 ++
 .../src/main/jsonschema/verbs/send.json         |  24 ++
 .../src/main/jsonschema/verbs/share.json        |  24 ++
 .../src/main/jsonschema/verbs/sponsor.json      |  24 ++
 .../src/main/jsonschema/verbs/start.json        |  24 ++
 .../main/jsonschema/verbs/stop-following.json   |  24 ++
 .../src/main/jsonschema/verbs/submit.json       |  24 ++
 .../src/main/jsonschema/verbs/tag.json          |  24 ++
 .../src/main/jsonschema/verbs/terminate.json    |  24 ++
 .../src/main/jsonschema/verbs/tie.json          |  24 ++
 .../src/main/jsonschema/verbs/unfavorite.json   |  24 ++
 .../src/main/jsonschema/verbs/unlike.json       |  24 ++
 .../src/main/jsonschema/verbs/unsatisfy.json    |  24 ++
 .../src/main/jsonschema/verbs/unsave.json       |  24 ++
 .../src/main/jsonschema/verbs/unshare.json      |  24 ++
 .../src/main/jsonschema/verbs/update.json       |  34 ++
 .../src/main/jsonschema/verbs/use.json          |  24 ++
 .../src/main/jsonschema/verbs/watch.json        |  24 ++
 .../src/main/jsonschema/verbs/win.json          |  24 ++
 .../src/main/xmlschema/activity.xsd             |  94 +++++
 streams-util/pom.xml                            |  89 ++++-
 .../java/org/apache/streams/util/GuidUtils.java |   2 +-
 .../org/apache/streams/util/RegexUtils.java     |   3 +
 .../apache/streams/util/SerializationUtil.java  |   3 +-
 .../apache/streams/util/schema/FieldType.java   |  14 +
 .../apache/streams/util/schema/FieldUtil.java   |  34 ++
 .../apache/streams/util/schema/FileUtil.java    |  77 ++++
 .../streams/util/schema/GenerationConfig.java   | 116 ++++++
 .../org/apache/streams/util/schema/Schema.java  |  57 +++
 .../apache/streams/util/schema/SchemaStore.java |  42 ++
 .../streams/util/schema/SchemaStoreImpl.java    | 347 +++++++++++++++++
 .../apache/streams/util/schema/SchemaUtil.java  |  49 +++
 .../org/apache/streams/util/schema/URIUtil.java |  30 ++
 .../util/schema/test/SchemaOrderingTest.java    | 150 ++++++++
 .../util/schema/test/SchemaStoreTest.java       |  71 ++++
 .../src/test/resources/activities/accept.json   |  16 +
 .../src/test/resources/activities/access.json   |  17 +
 .../test/resources/activities/acknowledge.json  |  16 +
 .../src/test/resources/activities/add.json      |  21 +
 .../src/test/resources/activities/agree.json    |  15 +
 .../src/test/resources/activities/append.json   |  16 +
 .../src/test/resources/activities/approve.json  |  20 +
 .../src/test/resources/activities/archive.json  |  15 +
 .../src/test/resources/activities/assign.json   |  20 +
 .../src/test/resources/activities/at.json       |  15 +
 .../src/test/resources/activities/attach.json   |  20 +
 .../src/test/resources/activities/attend.json   |  15 +
 .../src/test/resources/activities/author.json   |  15 +
 .../test/resources/activities/authorize.json    |  23 ++
 .../src/test/resources/activities/borrow.json   |  21 +
 .../src/test/resources/activities/build.json    |  16 +
 .../src/test/resources/activities/cancel.json   |  16 +
 .../src/test/resources/activities/checkin.json  |  16 +
 .../src/test/resources/activities/close.json    |  16 +
 .../src/test/resources/activities/complete.json |  16 +
 .../src/test/resources/activities/confirm.json  |  17 +
 .../src/test/resources/activities/consume.json  |  16 +
 .../src/test/resources/activities/create.json   |  15 +
 .../src/test/resources/activities/delete.json   |  16 +
 .../src/test/resources/activities/deliver.json  |  20 +
 .../src/test/resources/activities/deny.json     |  23 ++
 .../src/test/resources/activities/disagree.json |  30 ++
 .../src/test/resources/activities/dislike.json  |  15 +
 .../test/resources/activities/experience.json   |  16 +
 .../src/test/resources/activities/favorite.json |  15 +
 .../src/test/resources/activities/find.json     |  19 +
 .../activities/flag-as-inappropriate.json       |  24 ++
 .../src/test/resources/activities/follow.json   |  15 +
 .../src/test/resources/activities/give.json     |  28 ++
 .../src/test/resources/activities/host.json     |  15 +
 .../src/test/resources/activities/ignore.json   |  15 +
 .../src/test/resources/activities/insert.json   |  19 +
 .../src/test/resources/activities/install.json  |  18 +
 .../src/test/resources/activities/interact.json |  16 +
 .../src/test/resources/activities/invite.json   |  19 +
 .../src/test/resources/activities/join.json     |  15 +
 .../src/test/resources/activities/leave.json    |  15 +
 .../src/test/resources/activities/like.json     |  22 ++
 .../src/test/resources/activities/listen.json   |  15 +
 .../src/test/resources/activities/lose.json     |  15 +
 .../test/resources/activities/make-friend.json  |  15 +
 .../src/test/resources/activities/open.json     |  15 +
 .../src/test/resources/activities/play.json     |  15 +
 .../src/test/resources/activities/post.json     |  25 ++
 .../src/test/resources/activities/present.json  |  15 +
 .../src/test/resources/activities/purchase.json |  16 +
 .../src/test/resources/activities/qualify.json  |  15 +
 .../src/test/resources/activities/read.json     |  16 +
 .../src/test/resources/activities/receive.json  |  16 +
 .../src/test/resources/activities/reject.json   |  15 +
 .../resources/activities/remove-friend.json     |  15 +
 .../src/test/resources/activities/remove.json   |  23 ++
 .../src/test/resources/activities/replace.json  |  19 +
 .../resources/activities/request-friend.json    |  16 +
 .../src/test/resources/activities/request.json  |  23 ++
 .../src/test/resources/activities/resolve.json  |  15 +
 .../src/test/resources/activities/retract.json  |  26 ++
 .../src/test/resources/activities/return.json   |  19 +
 .../test/resources/activities/rsvp-maybe.json   |  16 +
 .../src/test/resources/activities/rsvp-no.json  |  16 +
 .../src/test/resources/activities/rsvp-yes.json |  16 +
 .../src/test/resources/activities/satisfy.json  |  21 +
 .../src/test/resources/activities/save.json     |  20 +
 .../src/test/resources/activities/schedule.json |  15 +
 .../src/test/resources/activities/search.json   |  21 +
 .../src/test/resources/activities/sell.json     |  19 +
 .../src/test/resources/activities/send.json     |  19 +
 .../src/test/resources/activities/share.json    |  16 +
 .../src/test/resources/activities/sponsor.json  |  17 +
 .../src/test/resources/activities/start.json    |  15 +
 .../resources/activities/stop-following.json    |  15 +
 .../src/test/resources/activities/submit.json   |  15 +
 .../src/test/resources/activities/tag.json      |  19 +
 .../test/resources/activities/terminate.json    |  15 +
 .../src/test/resources/activities/tie.json      |  24 ++
 .../test/resources/activities/unfavorite.json   |  15 +
 .../src/test/resources/activities/unlike.json   |  15 +
 .../test/resources/activities/unsatisfy.json    |  20 +
 .../src/test/resources/activities/unsave.json   |  15 +
 .../src/test/resources/activities/unshare.json  |  15 +
 .../src/test/resources/activities/update.json   |  15 +
 .../src/test/resources/activities/use.json      |  15 +
 .../src/test/resources/activities/watch.json    |  16 +
 .../src/test/resources/activities/win.json      |  15 +
 streams-util/src/test/resources/media_link.json |   7 +
 .../src/test/resources/objects/event.json       |  18 +
 .../src/test/resources/objects/group.json       |  16 +
 .../src/test/resources/objects/issue.json       |   9 +
 .../src/test/resources/objects/note.json        |  12 +
 .../src/test/resources/objects/permission.json  |   9 +
 .../src/test/resources/objects/place.json       |   9 +
 .../src/test/resources/objects/task.json        |  16 +
 .../src/test/resources/objects/video.json       |   8 +
 324 files changed, 13757 insertions(+), 17 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/abc58b42/pom.xml
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/abc58b42/streams-config/pom.xml
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/abc58b42/streams-pojo/pom.xml
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/abc58b42/streams-runtimes/streams-runtime-local/pom.xml
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/abc58b42/streams-util/pom.xml
----------------------------------------------------------------------


[05/53] [abbrv] incubator-streams git commit: STREAMS-398 - streams-schemas

Posted by mf...@apache.org.
STREAMS-398 - streams-schemas

moves jsonschemas to a seperate module
  this averts dependency graph cycle that would occur once streams-plugin-pojo is a dependency of streams-pojo and streams-scala


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/0424855c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/0424855c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/0424855c

Branch: refs/heads/invalid_headers
Commit: 0424855cf0a4fd15be298906922333ae74c8e9ae
Parents: 387da68
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Thu Apr 21 11:41:59 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Jun 1 12:49:27 2016 -0500

----------------------------------------------------------------------
 streams-schemas/pom.xml                         |  71 ++++++++++++
 .../src/main/jsonschema/activity.json           | 108 +++++++++++++++++++
 .../src/main/jsonschema/collection.json         |  47 ++++++++
 .../src/main/jsonschema/media_link.json         |  34 ++++++
 streams-schemas/src/main/jsonschema/object.json |  98 +++++++++++++++++
 .../src/main/jsonschema/objectTypes/alert.json  |  19 ++++
 .../jsonschema/objectTypes/application.json     |  19 ++++
 .../main/jsonschema/objectTypes/article.json    |  19 ++++
 .../src/main/jsonschema/objectTypes/audio.json  |  19 ++++
 .../src/main/jsonschema/objectTypes/badge.json  |  19 ++++
 .../src/main/jsonschema/objectTypes/binary.json |  19 ++++
 .../main/jsonschema/objectTypes/bookmark.json   |  19 ++++
 .../main/jsonschema/objectTypes/comment.json    |  19 ++++
 .../src/main/jsonschema/objectTypes/device.json |  19 ++++
 .../src/main/jsonschema/objectTypes/event.json  |  51 +++++++++
 .../src/main/jsonschema/objectTypes/file.json   |  25 +++++
 .../src/main/jsonschema/objectTypes/folder.json |  19 ++++
 .../src/main/jsonschema/objectTypes/game.json   |  19 ++++
 .../src/main/jsonschema/objectTypes/group.json  |  19 ++++
 .../src/main/jsonschema/objectTypes/image.json  |  22 ++++
 .../src/main/jsonschema/objectTypes/issue.json  |  25 +++++
 .../src/main/jsonschema/objectTypes/job.json    |  19 ++++
 .../src/main/jsonschema/objectTypes/list.json   |  28 +++++
 .../src/main/jsonschema/objectTypes/note.json   |  19 ++++
 .../src/main/jsonschema/objectTypes/offer.json  |  19 ++++
 .../jsonschema/objectTypes/organization.json    |  19 ++++
 .../src/main/jsonschema/objectTypes/page.json   |  19 ++++
 .../main/jsonschema/objectTypes/permission.json |  36 +++++++
 .../src/main/jsonschema/objectTypes/person.json |  25 +++++
 .../jsonschema/objectTypes/photo-album.json     |  19 ++++
 .../src/main/jsonschema/objectTypes/photo.json  |  23 ++++
 .../src/main/jsonschema/objectTypes/place.json  |  43 ++++++++
 .../main/jsonschema/objectTypes/playlist.json   |  19 ++++
 .../main/jsonschema/objectTypes/process.json    |  19 ++++
 .../main/jsonschema/objectTypes/product.json    |  25 +++++
 .../main/jsonschema/objectTypes/property.json   |  48 +++++++++
 .../main/jsonschema/objectTypes/question.json   |  28 +++++
 .../src/main/jsonschema/objectTypes/review.json |  22 ++++
 .../src/main/jsonschema/objectTypes/role.json   |  25 +++++
 .../main/jsonschema/objectTypes/service.json    |  19 ++++
 .../src/main/jsonschema/objectTypes/song.json   |  19 ++++
 .../src/main/jsonschema/objectTypes/status.json |  19 ++++
 .../src/main/jsonschema/objectTypes/task.json   |  40 +++++++
 .../src/main/jsonschema/objectTypes/team.json   |  19 ++++
 .../src/main/jsonschema/objectTypes/video.json  |  19 ++++
 .../src/main/jsonschema/verbs/accept.json       |  24 +++++
 .../src/main/jsonschema/verbs/access.json       |  24 +++++
 .../src/main/jsonschema/verbs/acknowledge.json  |  24 +++++
 .../src/main/jsonschema/verbs/add.json          |  24 +++++
 .../src/main/jsonschema/verbs/agree.json        |  24 +++++
 .../src/main/jsonschema/verbs/append.json       |  24 +++++
 .../src/main/jsonschema/verbs/approve.json      |  24 +++++
 .../src/main/jsonschema/verbs/archive.json      |  24 +++++
 .../src/main/jsonschema/verbs/assign.json       |  24 +++++
 .../src/main/jsonschema/verbs/at.json           |  24 +++++
 .../src/main/jsonschema/verbs/attach.json       |  24 +++++
 .../src/main/jsonschema/verbs/attend.json       |  24 +++++
 .../src/main/jsonschema/verbs/author.json       |  24 +++++
 .../src/main/jsonschema/verbs/authorize.json    |  24 +++++
 .../src/main/jsonschema/verbs/borrow.json       |  24 +++++
 .../src/main/jsonschema/verbs/build.json        |  24 +++++
 .../src/main/jsonschema/verbs/cancel.json       |  24 +++++
 .../src/main/jsonschema/verbs/checkin.json      |  24 +++++
 .../src/main/jsonschema/verbs/close.json        |  24 +++++
 .../src/main/jsonschema/verbs/complete.json     |  24 +++++
 .../src/main/jsonschema/verbs/confirm.json      |  24 +++++
 .../src/main/jsonschema/verbs/consume.json      |  24 +++++
 .../src/main/jsonschema/verbs/create.json       |  24 +++++
 .../src/main/jsonschema/verbs/delete.json       |  24 +++++
 .../src/main/jsonschema/verbs/deliver.json      |  24 +++++
 .../src/main/jsonschema/verbs/deny.json         |  24 +++++
 .../src/main/jsonschema/verbs/disagree.json     |  24 +++++
 .../src/main/jsonschema/verbs/dislike.json      |  24 +++++
 .../src/main/jsonschema/verbs/experience.json   |  24 +++++
 .../src/main/jsonschema/verbs/favorite.json     |  24 +++++
 .../src/main/jsonschema/verbs/find.json         |  24 +++++
 .../jsonschema/verbs/flag-as-inappropriate.json |  24 +++++
 .../src/main/jsonschema/verbs/follow.json       |  24 +++++
 .../src/main/jsonschema/verbs/give.json         |  24 +++++
 .../src/main/jsonschema/verbs/host.json         |  24 +++++
 .../src/main/jsonschema/verbs/ignore.json       |  24 +++++
 .../src/main/jsonschema/verbs/insert.json       |  24 +++++
 .../src/main/jsonschema/verbs/install.json      |  24 +++++
 .../src/main/jsonschema/verbs/interact.json     |  24 +++++
 .../src/main/jsonschema/verbs/invite.json       |  24 +++++
 .../src/main/jsonschema/verbs/join.json         |  24 +++++
 .../src/main/jsonschema/verbs/leave.json        |  24 +++++
 .../src/main/jsonschema/verbs/like.json         |  24 +++++
 .../src/main/jsonschema/verbs/listen.json       |  24 +++++
 .../src/main/jsonschema/verbs/lose.json         |  24 +++++
 .../src/main/jsonschema/verbs/make-friend.json  |  24 +++++
 .../src/main/jsonschema/verbs/open.json         |  24 +++++
 .../src/main/jsonschema/verbs/play.json         |  24 +++++
 .../src/main/jsonschema/verbs/post.json         |  24 +++++
 .../src/main/jsonschema/verbs/present.json      |  24 +++++
 .../src/main/jsonschema/verbs/purchase.json     |  24 +++++
 .../src/main/jsonschema/verbs/qualify.json      |  24 +++++
 .../src/main/jsonschema/verbs/read.json         |  24 +++++
 .../src/main/jsonschema/verbs/receive.json      |  24 +++++
 .../src/main/jsonschema/verbs/reject.json       |  24 +++++
 .../main/jsonschema/verbs/remove-friend.json    |  24 +++++
 .../src/main/jsonschema/verbs/remove.json       |  24 +++++
 .../src/main/jsonschema/verbs/replace.json      |  24 +++++
 .../main/jsonschema/verbs/request-friend.json   |  24 +++++
 .../src/main/jsonschema/verbs/request.json      |  24 +++++
 .../src/main/jsonschema/verbs/resolve.json      |  24 +++++
 .../src/main/jsonschema/verbs/retract.json      |  24 +++++
 .../src/main/jsonschema/verbs/return.json       |  24 +++++
 .../src/main/jsonschema/verbs/rsvp-maybe.json   |  24 +++++
 .../src/main/jsonschema/verbs/rsvp-no.json      |  24 +++++
 .../src/main/jsonschema/verbs/rsvp-yes.json     |  24 +++++
 .../src/main/jsonschema/verbs/satisfy.json      |  24 +++++
 .../src/main/jsonschema/verbs/save.json         |  24 +++++
 .../src/main/jsonschema/verbs/schedule.json     |  24 +++++
 .../src/main/jsonschema/verbs/search.json       |  24 +++++
 .../src/main/jsonschema/verbs/sell.json         |  24 +++++
 .../src/main/jsonschema/verbs/send.json         |  24 +++++
 .../src/main/jsonschema/verbs/share.json        |  24 +++++
 .../src/main/jsonschema/verbs/sponsor.json      |  24 +++++
 .../src/main/jsonschema/verbs/start.json        |  24 +++++
 .../main/jsonschema/verbs/stop-following.json   |  24 +++++
 .../src/main/jsonschema/verbs/submit.json       |  24 +++++
 .../src/main/jsonschema/verbs/tag.json          |  24 +++++
 .../src/main/jsonschema/verbs/terminate.json    |  24 +++++
 .../src/main/jsonschema/verbs/tie.json          |  24 +++++
 .../src/main/jsonschema/verbs/unfavorite.json   |  24 +++++
 .../src/main/jsonschema/verbs/unlike.json       |  24 +++++
 .../src/main/jsonschema/verbs/unsatisfy.json    |  24 +++++
 .../src/main/jsonschema/verbs/unsave.json       |  24 +++++
 .../src/main/jsonschema/verbs/unshare.json      |  24 +++++
 .../src/main/jsonschema/verbs/update.json       |  34 ++++++
 .../src/main/jsonschema/verbs/use.json          |  24 +++++
 .../src/main/jsonschema/verbs/watch.json        |  24 +++++
 .../src/main/jsonschema/verbs/win.json          |  24 +++++
 streams-schemas/src/main/xmlschema/activity.xsd |  94 ++++++++++++++++
 .../src/site/resources/activity.json            | 108 +++++++++++++++++++
 streams-schemas/src/site/resources/activity.xsd |  94 ++++++++++++++++
 .../src/site/resources/collection.json          |  47 ++++++++
 .../src/site/resources/media_link.json          |  34 ++++++
 streams-schemas/src/site/resources/object.json  |  98 +++++++++++++++++
 .../src/site/resources/objectTypes/alert.json   |  19 ++++
 .../site/resources/objectTypes/application.json |  19 ++++
 .../src/site/resources/objectTypes/article.json |  19 ++++
 .../src/site/resources/objectTypes/audio.json   |  19 ++++
 .../src/site/resources/objectTypes/badge.json   |  19 ++++
 .../src/site/resources/objectTypes/binary.json  |  19 ++++
 .../site/resources/objectTypes/bookmark.json    |  19 ++++
 .../src/site/resources/objectTypes/comment.json |  19 ++++
 .../src/site/resources/objectTypes/device.json  |  19 ++++
 .../src/site/resources/objectTypes/event.json   |  51 +++++++++
 .../src/site/resources/objectTypes/file.json    |  25 +++++
 .../src/site/resources/objectTypes/folder.json  |  19 ++++
 .../src/site/resources/objectTypes/game.json    |  19 ++++
 .../src/site/resources/objectTypes/group.json   |  19 ++++
 .../src/site/resources/objectTypes/image.json   |  22 ++++
 .../src/site/resources/objectTypes/issue.json   |  25 +++++
 .../src/site/resources/objectTypes/job.json     |  19 ++++
 .../src/site/resources/objectTypes/list.json    |  28 +++++
 .../src/site/resources/objectTypes/note.json    |  19 ++++
 .../src/site/resources/objectTypes/offer.json   |  19 ++++
 .../resources/objectTypes/organization.json     |  19 ++++
 .../src/site/resources/objectTypes/page.json    |  19 ++++
 .../site/resources/objectTypes/permission.json  |  36 +++++++
 .../src/site/resources/objectTypes/person.json  |  25 +++++
 .../site/resources/objectTypes/photo-album.json |  19 ++++
 .../src/site/resources/objectTypes/photo.json   |  23 ++++
 .../src/site/resources/objectTypes/place.json   |  43 ++++++++
 .../site/resources/objectTypes/playlist.json    |  19 ++++
 .../src/site/resources/objectTypes/process.json |  19 ++++
 .../src/site/resources/objectTypes/product.json |  25 +++++
 .../site/resources/objectTypes/property.json    |  48 +++++++++
 .../site/resources/objectTypes/question.json    |  28 +++++
 .../src/site/resources/objectTypes/review.json  |  22 ++++
 .../src/site/resources/objectTypes/role.json    |  25 +++++
 .../src/site/resources/objectTypes/service.json |  19 ++++
 .../src/site/resources/objectTypes/song.json    |  19 ++++
 .../src/site/resources/objectTypes/status.json  |  19 ++++
 .../src/site/resources/objectTypes/task.json    |  40 +++++++
 .../src/site/resources/objectTypes/team.json    |  19 ++++
 .../src/site/resources/objectTypes/video.json   |  19 ++++
 .../src/site/resources/verbs/accept.json        |  24 +++++
 .../src/site/resources/verbs/access.json        |  24 +++++
 .../src/site/resources/verbs/acknowledge.json   |  24 +++++
 .../src/site/resources/verbs/add.json           |  24 +++++
 .../src/site/resources/verbs/agree.json         |  24 +++++
 .../src/site/resources/verbs/append.json        |  24 +++++
 .../src/site/resources/verbs/approve.json       |  24 +++++
 .../src/site/resources/verbs/archive.json       |  24 +++++
 .../src/site/resources/verbs/assign.json        |  24 +++++
 .../src/site/resources/verbs/at.json            |  24 +++++
 .../src/site/resources/verbs/attach.json        |  24 +++++
 .../src/site/resources/verbs/attend.json        |  24 +++++
 .../src/site/resources/verbs/author.json        |  24 +++++
 .../src/site/resources/verbs/authorize.json     |  24 +++++
 .../src/site/resources/verbs/borrow.json        |  24 +++++
 .../src/site/resources/verbs/build.json         |  24 +++++
 .../src/site/resources/verbs/cancel.json        |  24 +++++
 .../src/site/resources/verbs/checkin.json       |  24 +++++
 .../src/site/resources/verbs/close.json         |  24 +++++
 .../src/site/resources/verbs/complete.json      |  24 +++++
 .../src/site/resources/verbs/confirm.json       |  24 +++++
 .../src/site/resources/verbs/consume.json       |  24 +++++
 .../src/site/resources/verbs/create.json        |  24 +++++
 .../src/site/resources/verbs/delete.json        |  24 +++++
 .../src/site/resources/verbs/deliver.json       |  24 +++++
 .../src/site/resources/verbs/deny.json          |  24 +++++
 .../src/site/resources/verbs/disagree.json      |  24 +++++
 .../src/site/resources/verbs/dislike.json       |  24 +++++
 .../src/site/resources/verbs/experience.json    |  24 +++++
 .../src/site/resources/verbs/favorite.json      |  24 +++++
 .../src/site/resources/verbs/find.json          |  24 +++++
 .../resources/verbs/flag-as-inappropriate.json  |  24 +++++
 .../src/site/resources/verbs/follow.json        |  24 +++++
 .../src/site/resources/verbs/give.json          |  24 +++++
 .../src/site/resources/verbs/host.json          |  24 +++++
 .../src/site/resources/verbs/ignore.json        |  24 +++++
 .../src/site/resources/verbs/insert.json        |  24 +++++
 .../src/site/resources/verbs/install.json       |  24 +++++
 .../src/site/resources/verbs/interact.json      |  24 +++++
 .../src/site/resources/verbs/invite.json        |  24 +++++
 .../src/site/resources/verbs/join.json          |  24 +++++
 .../src/site/resources/verbs/leave.json         |  24 +++++
 .../src/site/resources/verbs/like.json          |  24 +++++
 .../src/site/resources/verbs/listen.json        |  24 +++++
 .../src/site/resources/verbs/lose.json          |  24 +++++
 .../src/site/resources/verbs/make-friend.json   |  24 +++++
 .../src/site/resources/verbs/open.json          |  24 +++++
 .../src/site/resources/verbs/play.json          |  24 +++++
 .../src/site/resources/verbs/post.json          |  24 +++++
 .../src/site/resources/verbs/present.json       |  24 +++++
 .../src/site/resources/verbs/purchase.json      |  24 +++++
 .../src/site/resources/verbs/qualify.json       |  24 +++++
 .../src/site/resources/verbs/read.json          |  24 +++++
 .../src/site/resources/verbs/receive.json       |  24 +++++
 .../src/site/resources/verbs/reject.json        |  24 +++++
 .../src/site/resources/verbs/remove-friend.json |  24 +++++
 .../src/site/resources/verbs/remove.json        |  24 +++++
 .../src/site/resources/verbs/replace.json       |  24 +++++
 .../site/resources/verbs/request-friend.json    |  24 +++++
 .../src/site/resources/verbs/request.json       |  24 +++++
 .../src/site/resources/verbs/resolve.json       |  24 +++++
 .../src/site/resources/verbs/retract.json       |  24 +++++
 .../src/site/resources/verbs/return.json        |  24 +++++
 .../src/site/resources/verbs/rsvp-maybe.json    |  24 +++++
 .../src/site/resources/verbs/rsvp-no.json       |  24 +++++
 .../src/site/resources/verbs/rsvp-yes.json      |  24 +++++
 .../src/site/resources/verbs/satisfy.json       |  24 +++++
 .../src/site/resources/verbs/save.json          |  24 +++++
 .../src/site/resources/verbs/schedule.json      |  24 +++++
 .../src/site/resources/verbs/search.json        |  24 +++++
 .../src/site/resources/verbs/sell.json          |  24 +++++
 .../src/site/resources/verbs/send.json          |  24 +++++
 .../src/site/resources/verbs/share.json         |  24 +++++
 .../src/site/resources/verbs/sponsor.json       |  24 +++++
 .../src/site/resources/verbs/start.json         |  24 +++++
 .../site/resources/verbs/stop-following.json    |  24 +++++
 .../src/site/resources/verbs/submit.json        |  24 +++++
 .../src/site/resources/verbs/tag.json           |  24 +++++
 .../src/site/resources/verbs/terminate.json     |  24 +++++
 .../src/site/resources/verbs/tie.json           |  24 +++++
 .../src/site/resources/verbs/unfavorite.json    |  24 +++++
 .../src/site/resources/verbs/unlike.json        |  24 +++++
 .../src/site/resources/verbs/unsatisfy.json     |  24 +++++
 .../src/site/resources/verbs/unsave.json        |  24 +++++
 .../src/site/resources/verbs/unshare.json       |  24 +++++
 .../src/site/resources/verbs/update.json        |  34 ++++++
 .../src/site/resources/verbs/use.json           |  24 +++++
 .../src/site/resources/verbs/watch.json         |  24 +++++
 .../src/site/resources/verbs/win.json           |  24 +++++
 269 files changed, 7007 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/pom.xml
----------------------------------------------------------------------
diff --git a/streams-schemas/pom.xml b/streams-schemas/pom.xml
new file mode 100644
index 0000000..d64359a
--- /dev/null
+++ b/streams-schemas/pom.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.apache.streams</groupId>
+        <artifactId>streams-project</artifactId>
+        <version>0.3-incubating-SNAPSHOT</version>
+    </parent>
+
+    <artifactId>streams-schemas</artifactId>
+    <name>${project.artifactId}</name>
+
+    <description>Activity Streams schemas</description>
+
+    <build>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+            </resource>
+        </resources>
+        <testResources>
+            <testResource>
+                <directory>src/test/resources</directory>
+            </testResource>
+        </testResources>
+        <plugins>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>build-helper-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>add-source</id>
+                        <phase>generate-sources</phase>
+                        <goals>
+                            <goal>add-resource</goal>
+                        </goals>
+                        <configuration>
+                            <resources>
+                                <resource>
+                                    <directory>src/main/jsonschema</directory>
+                                </resource>
+                                <resource>
+                                    <directory>src/main/xmlschema</directory>
+                                </resource>
+                            </resources>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/activity.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/activity.json b/streams-schemas/src/main/jsonschema/activity.json
new file mode 100644
index 0000000..8c058a4
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/activity.json
@@ -0,0 +1,108 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "activity",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "An activity construct recounts what an actor did to an object in the past. If there is no actor it simply describes the change.",
+    "additionalProperties": true,
+    "properties": {
+        "id": {
+            "type": "string",
+            "description": "Uniquely identifies each activity within the service",
+            "required": true
+        },
+        "actor": {
+            "type": "object",
+            "required": true,
+            "description": "Describes the entity that performed the activity. An activity MUST contain one actor property whose value is a single Object.",
+            "javaInterfaces": ["java.io.Serializable"],
+            "$ref": "./object.json"
+        },
+        "verb": {
+            "title": "verb",
+            "type": "string",
+            "default": "post",
+            "required": true,
+            "description": "Identifies the action that the activity describes. An activity MUST contain a verb property whose value is a JSON String that is non-empty and matches either the \"isegment-nz-nc\" or the \"IRI\" production in [RFC3987]. Note that the use of a relative reference other than a simple name is not allowed."
+        },
+        "object": {
+            "type": "object",
+            "required": true,
+            "description": "Describes the primary object of the activity. For instance, in the activity, \"John saved a movie to his wishlist\", the object of the activity is \"movie\". An activity SHOULD contain an object property whose value is a single Object. If the object property is not contained, the primary object of the activity MAY be implied by context.",
+            "$ref": "./object.json"
+        },
+        "target": {
+            "type": "object",
+            "description": "Describes the target of the activity. The precise meaning of the activity's target is dependent on the activities verb, but will often be the object the English preposition \"to\". For instance, in the activity, \"John saved a movie to his wishlist\", the target of the activity is \"wishlist\". The activity target MUST NOT be used to identity an indirect object that is not a target of the activity. An activity MAY contain a target property whose value is a single Object.",
+            "$ref": "./object.json"
+        },
+        "published": {
+            "type": "string",
+            "description": "The date and time at which the activity occurred. It is important to note that this is not necessarily the same as the time at which the activity was published. An activity MUST contain a postedTime property.",
+            "format": "date-time"
+        },
+        "updated": {
+            "type": "string",
+            "description": "The date and time at which a previously published activity has been modified. An Activity MAY contain an updatedTime property",
+            "format": "date-time"
+        },
+        "generator": {
+            "type": "object",
+            "description": "Describes the application that generated the activity. An activity MAY contain a generator property whose value is a single Object.",
+            "javaInterfaces": ["java.io.Serializable"],
+            "extends": {
+                "$ref": "./object.json"
+            }
+        },
+        "icon": {
+            "type": "object",
+            "javaInterfaces": ["java.io.Serializable"],
+            "properties": {
+                "$ref": "./media_link.json#properties"
+            },
+            "description": "An IRI[RFC3987] identifying an image resource provides a visual representation of the activity, intended for human consumption. The image SHOULD have an aspect ratio of one (horizontal) to one (vertical) and SHOULD be suitable for presentation at a small size. An activity MAY have an icon property"
+        },
+        "provider": {
+            "type": "object",
+            "description": "Describes the application that published the activity. Note that this is not necessarily the same entity that generated the activity. An activity MAY contain a provider property whose value is a single Object",
+            "javaInterfaces": ["java.io.Serializable"],
+            "extends": {
+                "$ref": "./object.json"
+            }
+        },
+        "title": {
+            "type": "string",
+            "description": "Natural-language title or headline for the activity encoded as a single JSON String containing HTML markup. An activity MAY contain a title property",
+            "format": "html"
+        },
+        "content": {
+            "type": "string",
+            "description": "Natural-language description of the activity encoded as a single JSON String containing HTML markup. Visual elements such as thumbnail images MAY be included. An activity MAY contain a content property",
+            "format": "html"
+        },
+        "url": {
+            "type": "string",
+            "description": "An IRI [RFC3987] identifying a resource providing an HTML representation of the activity. An activity MAY contain a url property",
+            "format": "url"
+        },
+        "links": {
+            "type": "array",
+            "description": "Links between this object and other resources as defined in Web Linking",
+            "note": "Tell JSON schema team to not put links inside http://json-schema.org/hyper-schema#properties",
+            "items": {
+                "type": "string"
+            }
+        }
+    },
+    "links": [
+        {
+            "rel": "describedby",
+            "href": "./verbs/{verb}.json"
+        }
+    ]
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/collection.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/collection.json b/streams-schemas/src/main/jsonschema/collection.json
new file mode 100644
index 0000000..8173b75
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/collection.json
@@ -0,0 +1,47 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "collection",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "A collection is a generic list of Objects of any object type. The objectType of each item in the collection MAY be omitted if the type of object can be established through context. The collection is used primarily as the root of an Activity Streams document, but can be used as the value of extension properties in a variety of situations. ",
+    "properties": {
+        "url": {
+            "type": "string",
+            "description": "An IRI [RFC3987] referencing a JSON document containing the full listing of objects in the collection."
+        },
+        "totalItems": {
+            "type": "integer",
+            "description": "Non-negative integer specifying the total number of activities within the stream. The Stream serialization MAY contain a count property."
+        },
+        "items": {
+            "type": "array",
+            "required": true,
+            "description": "An array containing a listing of Objects of any object type. If used in combination with the url property, the items array can be used to provide a subset of the objects that may be found in the resource identified by the url.",
+            "items": {
+                "type": "object",
+                "extends": {
+                    "$ref": "./object.json"
+                }
+            }
+        },
+        "links": {
+            "type": "array",
+            "optional": true,
+            "description": "Links between an this object and other resources as defined in Web Linking",
+            "extends": {
+                "$ref": "http://json-schema.org/links#properties"
+            }
+        }
+    },
+    "links": [
+        {
+            "rel": "describedby",
+            "href": "http://json-schema.org/schema"
+        }
+    ]
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/media_link.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/media_link.json b/streams-schemas/src/main/jsonschema/media_link.json
new file mode 100644
index 0000000..fa55b2f
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/media_link.json
@@ -0,0 +1,34 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "media_link",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "Visual representation of an object in the form of an image, video or embedded HTML fragments",
+    "properties": {
+        "duration": {
+            "title": "duration",
+            "type": "number",
+            "description": "A hint to the consumer about the length, in seconds, of the media resource identified by the url property. A media link MAY contain a \"duration\" property when the target resource is a time-based media item such as an audio or video."
+        },
+        "height": {
+            "title": "height",
+            "type": "integer",
+            "description": "A hint to the consumer about the height, in pixels, of the media resource identified by the url property. A media link MAY contain a height property when the target resource is a visual media item such as an image, video or embeddable HTML page."
+        },
+        "width": {
+            "title": "width",
+            "type": "integer",
+            "description": "A hint to the consumer about the width, in pixels, of the media resource identified by the url property. A media link MAY contain a width property when the target resource is a visual media item such as an image, video or embeddable HTML page."
+        },
+        "url": {
+            "type": "string",
+            "required": true,
+            "description": "The IRI of the media resource being linked. A media link MUST have a url property."
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/object.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/object.json b/streams-schemas/src/main/jsonschema/object.json
new file mode 100644
index 0000000..97adc3c
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/object.json
@@ -0,0 +1,98 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "object",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "Basic object on the web. The only required property is the id",
+    "properties": {
+        "id": {
+            "type": "string",
+            "description": "Provides a permanent, universally unique identifier for the object in the form of an absolute IRI [RFC3987]. An object SHOULD contain a single id property. If an object does not contain an id property, consumers MAY use the value of the url property as a less-reliable, non-unique identifier.",
+            "required": true
+        },
+        "image": {
+            "format": "image",
+            "type": "object",
+            "extends": {
+                "$ref": "./media_link.json"
+            },
+            "description": "Description of a resource providing a visual representation of the object, intended for human consumption. An object MAY contain an image property whose value is a Media Link."
+        },
+        "displayName": {
+            "type": "string",
+            "description": "A natural-language, human-readable and plain-text name for the object. HTML markup MUST NOT be included. An object MAY contain a displayName property. If the object does not specify an objectType property, the object SHOULD specify a displayName"
+        },
+        "summary": {
+            "type": "string",
+            "description": "Natural-language summary of the object encoded as a single JSON String containing HTML markup. Visual elements such as thumbnail images MAY be included. An activity MAY contain a summary property"
+        },
+        "content": {
+            "type": "string",
+            "description": "Natural-language description of the object encoded as a single JSON String containing HTML markup. Visual elements such as thumbnail images MAY be included. An object MAY contain a content property"
+        },
+        "url": {
+            "type": "string",
+            "format": "url",
+            "description": "An IRI [RFC3987] identifying a resource providing an HTML representation of the object. An object MAY contain a url property"
+        },
+        "objectType": {
+            "type": "string",
+            "description": "Identifies the type of object. An object MAY contain an objectType property whose value is a JSON String that is non-empty and matches either the \"isegment-nz-nc\" or the \"IRI\" production in [RFC3987]. Note that the use of a relative reference other than a simple name is not allowed. If no objectType property is contained, the object has no specific type."
+        },
+        "author": {
+            "type": "object",
+            "description": "Describes the entity that created or authored the object. An object MAY contain a single author property whose value is an Object of any type. Note that the author field identifies the entity that created the object and does not necessarily identify the entity that published the object. For instance, it may be the case that an object created by one person is posted and published to a system by an entirely different entity",
+            "javaInterfaces": ["java.io.Serializable"],
+            "extends": {
+                "$ref": "./object.json"
+            }
+        },
+        "published": {
+            "type": "string",
+            "description": "[RFC3339] date-time. The date and time at which the object was published. An object MAY contain a published property",
+            "format": "date-time"
+        },
+        "updated": {
+            "type": "string",
+            "description": "[RFC3339] date-time. The date and time at which a previously published object has been modified. An Object MAY contain an updated property.",
+            "format": "date-time"
+        },
+        "attachments": {
+            "title": "Related objects",
+            "description": "A collection of one or more additional, associated objects, similar to the concept of attached files in an email message. An object MAY have an attachedObjects property whose value is a JSON Array of Objects.",
+            "type": "array",
+            "items": {
+                "type": "object",
+                "javaType": "org.apache.streams.pojo.json.Attachment",
+                "javaInterfaces": ["java.io.Serializable"],
+                "$ref": "./object.json"
+            }
+        },
+        "upstreamDuplicates": {
+            "type": "array",
+            "description": "A JSON Array of one or more absolute IRI's [RFC3987] identifying objects that duplicate this object's content. An object SHOULD contain an upstreamDuplicates property when a publisher is knowingly duplicating with a new ID the content from another object. This MAY be used as a hint for consumers to use when resolving duplicates between objects received from different sources",
+            "items": {
+                "type": "string"
+            }
+        },
+        "downstreamDuplicates": {
+            "type": "array",
+            "description": "A JSON Array of one or more absolute IRI's [RFC3987] identifying objects that duplicate this object's content. An object SHOULD contain a downstreamDuplicates property when there are known objects, possibly in a different system, that duplicate the content in this object. This MAY be used as a hint for consumers to use when resolving duplicates between objects received from different sources.",
+            "items": {
+                "type": "string"
+            }
+        }
+    },
+    "additionalProperties": true,
+    "links": [
+        {
+            "rel": "describedby",
+            "href": "./objectType/{objectType}.json"
+        }
+    ]
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/alert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/alert.json b/streams-schemas/src/main/jsonschema/objectTypes/alert.json
new file mode 100644
index 0000000..0ace5de
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/alert.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "alert",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "alert"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/application.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/application.json b/streams-schemas/src/main/jsonschema/objectTypes/application.json
new file mode 100644
index 0000000..ceb1208
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/application.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "application",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "application"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/article.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/article.json b/streams-schemas/src/main/jsonschema/objectTypes/article.json
new file mode 100644
index 0000000..8abc7f7
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/article.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "article",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "article"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/audio.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/audio.json b/streams-schemas/src/main/jsonschema/objectTypes/audio.json
new file mode 100644
index 0000000..92cef7f
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/audio.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "audio",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "audio"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/badge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/badge.json b/streams-schemas/src/main/jsonschema/objectTypes/badge.json
new file mode 100644
index 0000000..b743236
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/badge.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "badge",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "badge"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/binary.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/binary.json b/streams-schemas/src/main/jsonschema/objectTypes/binary.json
new file mode 100644
index 0000000..8915633
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/binary.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "binary",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "binary"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json b/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json
new file mode 100644
index 0000000..3d3e3f1
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "bookmark",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "bookmark"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/comment.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/comment.json b/streams-schemas/src/main/jsonschema/objectTypes/comment.json
new file mode 100644
index 0000000..90249c4
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/comment.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "comment",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "comment"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/device.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/device.json b/streams-schemas/src/main/jsonschema/objectTypes/device.json
new file mode 100644
index 0000000..faea368
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/device.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "device",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "device"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/event.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/event.json b/streams-schemas/src/main/jsonschema/objectTypes/event.json
new file mode 100644
index 0000000..479213f
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/event.json
@@ -0,0 +1,51 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "event",
+    "description": "xCal fromat for vevent",
+    "extends": [
+        {
+            "$ref": "../object.json"
+        },
+        {
+            "$ref": "http://www.json-schema.org/calendar"
+        }
+    ],
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "event"
+        },
+        "attendedBy": {
+            "type": "../collection.json"
+        },
+        "attending": {
+          "type": "../collection.json"
+        },
+        "endTime": {
+          "type": "string",
+          "format": "date-time"
+        },
+        "invited": {
+          "type": "../collection.json"
+        },
+        "maybeAttending": {
+          "type": "../collection.json"
+        },
+        "notAttendedBy": {
+          "type": "../collection.json"
+        },
+        "notAttending": {
+          "type": "../collection.json"
+        },
+        "startTime": {
+          "type": "string",
+          "format": "date-time"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/file.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/file.json b/streams-schemas/src/main/jsonschema/objectTypes/file.json
new file mode 100644
index 0000000..695ef98
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/file.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "file",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "file"
+        },
+        "fileUrl": {
+          "type": "string"
+        },
+        "mimeType": {
+          "type": "string"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/folder.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/folder.json b/streams-schemas/src/main/jsonschema/objectTypes/folder.json
new file mode 100644
index 0000000..a319efe
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/folder.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "folder",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "folder"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/game.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/game.json b/streams-schemas/src/main/jsonschema/objectTypes/game.json
new file mode 100644
index 0000000..5f13dfc
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/game.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "game",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "game"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/group.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/group.json b/streams-schemas/src/main/jsonschema/objectTypes/group.json
new file mode 100644
index 0000000..b67d88d
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/group.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "group",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "group"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/image.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/image.json b/streams-schemas/src/main/jsonschema/objectTypes/image.json
new file mode 100644
index 0000000..8a19fd1
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/image.json
@@ -0,0 +1,22 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "image",
+    "extends": {
+        "$ref": "../media_link.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "image"
+        },
+        "fullImage": {
+          "type": "string"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/issue.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/issue.json b/streams-schemas/src/main/jsonschema/objectTypes/issue.json
new file mode 100644
index 0000000..29bfe44
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/issue.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "issue",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "issue"
+        },
+        "types": {
+          "type": "array",
+          "items": {
+            "type": "string"
+          }
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/job.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/job.json b/streams-schemas/src/main/jsonschema/objectTypes/job.json
new file mode 100644
index 0000000..2d82975
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/job.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "job",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "job"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/list.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/list.json b/streams-schemas/src/main/jsonschema/objectTypes/list.json
new file mode 100644
index 0000000..d7c164a
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/list.json
@@ -0,0 +1,28 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "list",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "list"
+        },
+        "items": {
+            "type": "array",
+            "items": {
+                "type": "object",
+                "properties": {
+                    "$ref": "../object.json"
+                }
+            }
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/note.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/note.json b/streams-schemas/src/main/jsonschema/objectTypes/note.json
new file mode 100644
index 0000000..09de97c
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/note.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "note",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "note"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/offer.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/offer.json b/streams-schemas/src/main/jsonschema/objectTypes/offer.json
new file mode 100644
index 0000000..38db718
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/offer.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "offer",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "offer"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/organization.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/organization.json b/streams-schemas/src/main/jsonschema/objectTypes/organization.json
new file mode 100644
index 0000000..a3fd5a2
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/organization.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "organization",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "organization"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/page.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/page.json b/streams-schemas/src/main/jsonschema/objectTypes/page.json
new file mode 100644
index 0000000..4f76aa2
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/page.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "page",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "page"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/permission.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/permission.json b/streams-schemas/src/main/jsonschema/objectTypes/permission.json
new file mode 100644
index 0000000..32b395c
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/permission.json
@@ -0,0 +1,36 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "permission",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "permission"
+        },
+        "scope": {
+            "type": "object",
+            "extends": {
+              "$ref": "../object.json"
+            }
+        },
+        "actions": {
+            "type": "array",
+            "items": {
+               "type": "string",
+               "enumeration": [
+                  "create",
+                  "delete",
+                  "modify"
+               ]
+            }
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/person.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/person.json b/streams-schemas/src/main/jsonschema/objectTypes/person.json
new file mode 100644
index 0000000..f42eb8e
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/person.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "person",
+    "description": "vCard Format. Does not match PoCO",
+    "extends": [
+        {
+            "$ref": "../object.json"
+        },
+        {
+            "$ref": "http://www.json-schema.org/card"
+        }
+    ],
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "person"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json b/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json
new file mode 100644
index 0000000..933804b
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "article",
+    "extends": {
+        "$ref": "../objectTypes/list.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "photo-album"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/photo.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/photo.json b/streams-schemas/src/main/jsonschema/objectTypes/photo.json
new file mode 100644
index 0000000..347f25c
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/photo.json
@@ -0,0 +1,23 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "photo",
+    "extends": {
+        "$ref": "../objectTypes/file.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "photo"
+        },
+        "displayName": {
+            "type": "string",
+            "default": "a photo"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/place.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/place.json b/streams-schemas/src/main/jsonschema/objectTypes/place.json
new file mode 100644
index 0000000..bb96a79
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/place.json
@@ -0,0 +1,43 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "place",
+    "extends": [
+        {
+            "$ref": "../object.json"
+        }
+    ],
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "place"
+        },
+        "address": {
+          "type": "object",
+          "extends": [
+            {
+              "$ref": "http://www.json-schema.org/address"
+            }
+          ]
+        },
+        "position": {
+          "type": "object",
+          "properties": {
+            "altitude": {
+              "type": "number"
+            },
+            "latitude": {
+              "type": "number"
+            },
+            "longitude": {
+              "type": "number"
+            }
+          }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/playlist.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/playlist.json b/streams-schemas/src/main/jsonschema/objectTypes/playlist.json
new file mode 100644
index 0000000..6ce9dd2
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/playlist.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "playlist",
+    "extends": {
+        "$ref": "../objectTypes/list.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "playlist"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/process.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/process.json b/streams-schemas/src/main/jsonschema/objectTypes/process.json
new file mode 100644
index 0000000..d717cc7
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/process.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "process",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "process"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/product.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/product.json b/streams-schemas/src/main/jsonschema/objectTypes/product.json
new file mode 100644
index 0000000..4e035cf
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/product.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "product",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "product"
+        },
+        "fullImage": {
+            "type": "object",
+            "extends": {
+              "$ref": "../media_link.json"
+            }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/property.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/property.json b/streams-schemas/src/main/jsonschema/objectTypes/property.json
new file mode 100644
index 0000000..0cd630e
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/property.json
@@ -0,0 +1,48 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "property",
+    "description": "A property describes name, path and value. Can be used with delete, update or post verbs",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "property"
+        },
+        "displayName": {
+            "type": "string",
+            "description": "The human readable name of the property in the appropriate language",
+            "optional": true
+        },
+        "path": {
+            "type": "string",
+            "description": "dot delimited path to the property in the target. Ex: streetAddress"
+        }
+    },
+    "example": {
+        "actor": {
+            "id": 1212,
+            "displayName": "Peter"
+        },
+        "verb": "update",
+        "time": "2010-08-02T15:29:00Z",
+        "object": {
+            "objectType": "property",
+            "displayName": "street address",
+            "path": "streetAddress",
+            "content": "234 Amazing St"
+        },
+        "target": {
+            "id": 12121,
+            "time": "2010-08-02T15:29:00Z",
+            "displayName": "Peter's House"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/question.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/question.json b/streams-schemas/src/main/jsonschema/objectTypes/question.json
new file mode 100644
index 0000000..cccdfe0
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/question.json
@@ -0,0 +1,28 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "question",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "question"
+        },
+        "options": {
+            "type": "array",
+            "items": {
+               "type": "object",
+                "extends": {
+                  "$ref": "../object.json"
+                }
+            }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/review.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/review.json b/streams-schemas/src/main/jsonschema/objectTypes/review.json
new file mode 100644
index 0000000..7629cb6
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/review.json
@@ -0,0 +1,22 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "review",
+    "extends": {
+        "$ref": "../objectTypes/article.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "review"
+        },
+        "rating": {
+           "type": "number"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/role.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/role.json b/streams-schemas/src/main/jsonschema/objectTypes/role.json
new file mode 100644
index 0000000..25524ab
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/role.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "role",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "role"
+        },
+        "members": {
+            "type": "object",
+            "extends": {
+              "$ref": "../collection.json"
+            }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/service.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/service.json b/streams-schemas/src/main/jsonschema/objectTypes/service.json
new file mode 100644
index 0000000..3d4a496
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/service.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "service",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "service"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/song.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/song.json b/streams-schemas/src/main/jsonschema/objectTypes/song.json
new file mode 100644
index 0000000..46d6eb0
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/song.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "song",
+    "extends": {
+        "$ref": "../objectTypes/audio.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "song"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/status.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/status.json b/streams-schemas/src/main/jsonschema/objectTypes/status.json
new file mode 100644
index 0000000..a029f19
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/status.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "status",
+    "extends": {
+        "$ref": "../objectTypes/note.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "song"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/task.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/task.json b/streams-schemas/src/main/jsonschema/objectTypes/task.json
new file mode 100644
index 0000000..fb2f39f
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/task.json
@@ -0,0 +1,40 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "task",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "task"
+        },
+        "by": {
+          "type": "string",
+          "format": "date-time"
+        },
+        "prerequisites": {
+          "type": "array",
+          "items": {
+            "type": "object",
+            "$ref": "../activity.json"
+          }
+        },
+        "required": {
+          "type": "boolean"
+        },
+        "supersedes": {
+          "type": "array",
+          "items": {
+            "type": "object",
+            "$ref": "../activity.json"
+          }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/team.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/team.json b/streams-schemas/src/main/jsonschema/objectTypes/team.json
new file mode 100644
index 0000000..37419a0
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/team.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "team",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "team"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/objectTypes/video.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/video.json b/streams-schemas/src/main/jsonschema/objectTypes/video.json
new file mode 100644
index 0000000..7ac63d8
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/video.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "video",
+    "extends": {
+        "$ref": "../objectTypes/file.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "video"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/accept.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/accept.json b/streams-schemas/src/main/jsonschema/verbs/accept.json
new file mode 100644
index 0000000..a9f91fe
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/accept.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Accept",
+    "description": "Indicates that that the actor has accepted the object. For instance, a person accepting an award, or accepting an assignment.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "accept"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} accepted {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/access.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/access.json b/streams-schemas/src/main/jsonschema/verbs/access.json
new file mode 100644
index 0000000..156e3cb
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/access.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Access",
+    "description": "Indicates that the actor has accessed the object. For instance, a person accessing a room, or accessing a file.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "access"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} accessed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/acknowledge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/acknowledge.json b/streams-schemas/src/main/jsonschema/verbs/acknowledge.json
new file mode 100644
index 0000000..2e84c43
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/acknowledge.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Acknowledge",
+    "description": "Indicates that the actor has acknowledged the object. This effectively signals that the actor is aware of the object's existence.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "acknowledge"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} acknowledge {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/add.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/add.json b/streams-schemas/src/main/jsonschema/verbs/add.json
new file mode 100644
index 0000000..cec0c58
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/add.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Add",
+    "description": "Indicates that the actor has added the object to the target. For instance, adding a photo to an album.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "add"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} added {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/agree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/agree.json b/streams-schemas/src/main/jsonschema/verbs/agree.json
new file mode 100644
index 0000000..5095153
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/agree.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Agree",
+    "description": "Indicates that the actor agrees with the object. For example, a person agreeing with an argument, or expressing agreement with a particular issue.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "agree"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} agrees with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/0424855c/streams-schemas/src/main/jsonschema/verbs/append.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/append.json b/streams-schemas/src/main/jsonschema/verbs/append.json
new file mode 100644
index 0000000..648d192
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/append.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Append",
+    "description": "Indicates that the actor has appended the object to the target. For instance, a person appending a new record to a database.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "append"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} append {object.displayName} to {target.displayName}"
+        }
+    }
+}



[52/53] [abbrv] incubator-streams git commit: Added missing license headers for scala plugin

Posted by mf...@apache.org.
Added missing license headers for scala plugin


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/2652ba3e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/2652ba3e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/2652ba3e

Branch: refs/heads/invalid_headers
Commit: 2652ba3e9d22093eb5a5935b4a13fa9c9dcad785
Parents: 3b7509f
Author: Matt Franklin <mf...@apache.org>
Authored: Wed Oct 12 14:23:00 2016 -0400
Committer: Matt Franklin <mf...@apache.org>
Committed: Wed Oct 12 14:23:00 2016 -0400

----------------------------------------------------------------------
 streams-plugins/streams-plugin-scala/pom.xml     |  1 +
 .../plugins/StreamsScalaSourceGenerator.java     | 19 +++++++++++++++++++
 .../plugins/StreamsScalaSourceGeneratorMojo.java | 19 +++++++++++++++++++
 .../test/StreamsScalaSourceGeneratorTest.java    | 19 +++++++++++++++++++
 .../test/resources/streams-plugin-scala/pom.xml  | 19 +++++++++++++++++++
 5 files changed, 77 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/2652ba3e/streams-plugins/streams-plugin-scala/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/pom.xml b/streams-plugins/streams-plugin-scala/pom.xml
index 1e50141..b02d5f6 100644
--- a/streams-plugins/streams-plugin-scala/pom.xml
+++ b/streams-plugins/streams-plugin-scala/pom.xml
@@ -6,6 +6,7 @@
   ~ regarding copyright ownership.  The ASF licenses this file
   ~ to you under the Apache License, Version 2.0 (the
   ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
   ~
   ~   http://www.apache.org/licenses/LICENSE-2.0
   ~

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/2652ba3e/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGenerator.java b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGenerator.java
index 7199be3..73d2f5d 100644
--- a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGenerator.java
+++ b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGenerator.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins;
 
 import com.google.common.base.Strings;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/2652ba3e/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGeneratorMojo.java b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGeneratorMojo.java
index 8d85c90..c88ce41 100644
--- a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGeneratorMojo.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins;
 
 import org.apache.maven.plugin.AbstractMojo;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/2652ba3e/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsScalaSourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsScalaSourceGeneratorTest.java b/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsScalaSourceGeneratorTest.java
index 65e496f..bd1c5ff 100644
--- a/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsScalaSourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsScalaSourceGeneratorTest.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.test;
 
 import org.apache.streams.plugins.StreamsScalaSourceGenerator;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/2652ba3e/streams-plugins/streams-plugin-scala/src/test/resources/streams-plugin-scala/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/test/resources/streams-plugin-scala/pom.xml b/streams-plugins/streams-plugin-scala/src/test/resources/streams-plugin-scala/pom.xml
index 3179e95..e3a7ce9 100644
--- a/streams-plugins/streams-plugin-scala/src/test/resources/streams-plugin-scala/pom.xml
+++ b/streams-plugins/streams-plugin-scala/src/test/resources/streams-plugin-scala/pom.xml
@@ -1,3 +1,22 @@
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
 <project xmlns="http://maven.apache.org/POM/4.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">


[37/53] [abbrv] incubator-streams git commit: Merge remote-tracking branch 'eponvert/STREAMS-410'

Posted by mf...@apache.org.
Merge remote-tracking branch 'eponvert/STREAMS-410'


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/f14a25ce
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/f14a25ce
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/f14a25ce

Branch: refs/heads/invalid_headers
Commit: f14a25cedc6c41f1331fb8783cce1c59f4eb1961
Parents: f1e1e11 ce7aa24
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Wed Oct 12 09:58:57 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Oct 12 09:58:57 2016 -0500

----------------------------------------------------------------------
 pom.xml                                         |   1 -
 .../streams-processor-lucene/pom.xml            | 163 ---------
 .../lucene/LuceneSimpleTaggingProcessor.java    | 355 -------------------
 .../lucene/LuceneTaggerConfiguration.json       |  29 --
 .../lucene/TestLucenSimpleTaggingProcessor.java | 171 ---------
 .../src/test/resources/TestTags.tsv             |   2 -
 streams-contrib/streams-processor-tika/pom.xml  | 162 ---------
 .../org/apache/streams/tika/CategoryParser.java | 114 ------
 .../org/apache/streams/tika/TikaProcessor.java  | 139 --------
 .../apache/streams/tika/BoilerPipeArticle.json  |  76 ----
 .../apache/streams/tika/TestCategoryParser.java |  30 --
 .../apache/streams/tika/TestTikaProcessor.java  |  29 --
 .../activity-consumer/osgi.bnd                  |   9 -
 .../activity-consumer/pom.xml                   | 171 ---------
 .../activityconsumer/ActivityConsumer.java      |  39 --
 .../ActivityConsumerWarehouse.java              |  31 --
 .../impl/ActivityConsumerWarehouseImpl.java     |  57 ---
 .../impl/PushActivityConsumer.java              | 106 ------
 .../spring/activity-consumer-context.xml        |  28 --
 .../META-INF/spring/activity-consumer-osgi.xml  |  29 --
 .../src/main/resources/readme.txt               |   1 -
 .../activity-registration/osgi.bnd              |   9 -
 .../activity-registration/pom.xml               | 130 -------
 .../ActivityPublisherRegistration.java          |  29 --
 .../ActivityStreamsSubscriberRegistration.java  |  29 --
 .../impl/ActivityPublisherRegistrationImpl.java |  67 ----
 ...tivityStreamsSubscriberRegistrationImpl.java |  67 ----
 .../activity-registration-context-osgi.xml      |  30 --
 .../spring/activity-registration-context.xml    |  29 --
 .../src/main/resources/readme.txt               |   1 -
 .../activity-subscriber/osgi.bnd                |   9 -
 .../activity-subscriber/pom.xml                 | 134 -------
 .../ActivityStreamsSubscriber.java              |  38 --
 .../ActivityStreamsSubscriberWarehouse.java     |  34 --
 .../ActivityStreamsSubscription.java            |  38 --
 .../ActivityStreamsSubscriptionFilter.java      |  34 --
 .../ActivityStreamsSubscriptionOutput.java      |  47 ---
 .../impl/ActivityStreamsSubscriberDelegate.java | 126 -------
 .../ActivityStreamsSubscriberWarehouseImpl.java |  60 ----
 ...yStreamsSubscriptionCassandraFilterImpl.java |  42 ---
 .../impl/ActivityStreamsSubscriptionImpl.java   |  74 ----
 ...vityStreamsSubscriptionLuceneFilterImpl.java |  43 ---
 .../spring/activity-subscriber-context.xml      |  28 --
 .../spring/activity-subscriber-osgi.xml         |  29 --
 .../src/main/resources/readme.txt               |   1 -
 .../src/site/resources/readme.txt               |   1 -
 streams-osgi-components/pom.xml                 |  43 ---
 streams-runtimes/pom.xml                        |   1 -
 .../jsonschema/SparkRuntimeConfiguration.json   |  27 --
 .../streams-runtime-webapp/README.md            |   8 -
 streams-runtimes/streams-runtime-webapp/pom.xml | 250 -------------
 .../aggregation/ActivityAggregator.java         |  59 ---
 .../configuration/EipConfigurator.java          | 201 -----------
 .../ActivityPublisherRegistrationProcessor.java |  72 ----
 ...yStreamsSubscriberRegistrationProcessor.java |  93 -----
 .../routers/ActivityConsumerRouteBuilder.java   |  32 --
 .../ActivityStreamsSubscriberRouteBuilder.java  |  32 --
 .../routers/impl/ActivityConsumerRouter.java    | 144 --------
 .../impl/ActivityStreamsSubscriberRouter.java   | 141 --------
 .../messaging/service/ActivityService.java      |  31 --
 .../messaging/service/SubscriptionService.java  |  29 --
 .../service/impl/CassandraActivityService.java  |  96 -----
 .../impl/CassandraSubscriptionService.java      |  43 ---
 .../META-INF/spring/propertiesLoader.xml        |  35 --
 .../spring/streams-eip-applicationContext.xml   | 113 ------
 .../streams-eip-osgi-component-import.xml       |  38 --
 .../META-INF/spring/streamsCamelContext.xml     |  96 -----
 .../main/resources/META-INF/streams.properties  |  41 ---
 .../impl/CassandraActivityServiceTest.java      |  86 -----
 69 files changed, 4582 deletions(-)
----------------------------------------------------------------------



[07/53] [abbrv] incubator-streams git commit: create streams-plugin-pojo

Posted by mf...@apache.org.
create streams-plugin-pojo


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/ded4ad68
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/ded4ad68
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/ded4ad68

Branch: refs/heads/invalid_headers
Commit: ded4ad68d41c8b158fdca3f249a57055eab095f8
Parents: 50f67bf
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Mon Mar 28 08:32:00 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Jun 1 12:49:27 2016 -0500

----------------------------------------------------------------------
 pom.xml                                         |   5 +
 streams-plugins/pom.xml                         |   2 +-
 streams-plugins/streams-plugin-hive/pom.xml     |   5 +-
 .../plugins/StreamsHiveResourceGenerator.java   | 219 +++++++++++++++
 .../StreamsHiveResourceGeneratorMojo.java       |  68 +++++
 .../apache/streams/plugins/StreamsPojoHive.java | 242 -----------------
 .../streams/plugins/StreamsPojoHiveMojo.java    |  71 -----
 .../test/StreamsHiveResourceGeneratorTest.java  |  55 ++++
 .../plugins/test/StreamsPojoHiveTest.java       |  55 ----
 streams-plugins/streams-plugin-pojo/pom.xml     | 239 ++++++++++++++++
 .../plugins/StreamsPojoGenerationConfig.java    | 198 ++++++++++++++
 .../plugins/StreamsPojoSourceGeneratorMojo.java | 272 +++++++++++++++++++
 .../test/StreamsPojoSourceGeneratorTest.java    |  54 ++++
 .../test/resources/streams-plugin-pojo/pom.xml  |  42 +++
 14 files changed, 1156 insertions(+), 371 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ded4ad68/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 2d79739..cb935af 100644
--- a/pom.xml
+++ b/pom.xml
@@ -175,6 +175,7 @@
         <!--<module>streams-osgi-components</module>-->
         <module>streams-pojo</module>
         <module>streams-pojo-extensions</module>
+        <module>streams-plugins</module>
         <module>streams-runtimes</module>
         <module>streams-testing</module>
         <module>streams-util</module>
@@ -183,6 +184,10 @@
 
     <packaging>pom</packaging>
 
+    <properties>
+        <jsonschema2pojo.version>0.4.22</jsonschema2pojo.version>
+    </properties>
+
     <build>
         <plugins>
             <plugin>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ded4ad68/streams-plugins/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/pom.xml b/streams-plugins/pom.xml
index 2306aab..390c8a0 100644
--- a/streams-plugins/pom.xml
+++ b/streams-plugins/pom.xml
@@ -36,7 +36,7 @@
     </properties>
 
     <modules>
-        <module>streams-plugin-scala</module>
+        <module>streams-plugin-pojo</module>
  	</modules>
 
     <dependencyManagement>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ded4ad68/streams-plugins/streams-plugin-hive/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/pom.xml b/streams-plugins/streams-plugin-hive/pom.xml
index cbc055b..22d75ce 100644
--- a/streams-plugins/streams-plugin-hive/pom.xml
+++ b/streams-plugins/streams-plugin-hive/pom.xml
@@ -213,19 +213,20 @@
                 <version>2.4</version>
                 <executions>
                     <execution>
-                        <id>streams-pojo-resource-dependencies</id>
+                        <id>resource-dependencies</id>
                         <phase>process-test-resources</phase>
                         <goals>
                             <goal>unpack-dependencies</goal>
                         </goals>
                         <configuration>
                             <includeArtifactIds>streams-pojo</includeArtifactIds>
-                            <includes>org/apache/streams/pojo/json/**</includes>
+                            <includes>**/*.json</includes>
                             <outputDirectory>${project.build.directory}/test-classes</outputDirectory>
                         </configuration>
                     </execution>
                 </executions>
             </plugin>
+
         </plugins>
     </build>
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ded4ad68/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsHiveResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsHiveResourceGenerator.java b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsHiveResourceGenerator.java
new file mode 100644
index 0000000..4edacf0
--- /dev/null
+++ b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsHiveResourceGenerator.java
@@ -0,0 +1,219 @@
+package org.apache.streams.plugins;
+
+import com.google.common.base.Strings;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
+import org.reflections.ReflectionUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.io.Serializable;
+import java.lang.reflect.Field;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.nio.file.StandardOpenOption;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * Created by sblackmon on 11/18/15.
+ */
+public class StreamsHiveResourceGenerator implements Runnable {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsHiveResourceGenerator.class);
+
+    private final static String LS = System.getProperty("line.separator");
+
+    private StreamsPojoHiveMojo mojo;
+
+    String inDir = "./target/test-classes/activities";
+    String outDir = "./target/generated-sources/hive";
+    String packages[] = {"org.apache.streams.pojo.json"};
+
+    public void main(String[] args) {
+        StreamsHiveResourceGenerator streamsHiveResourceGenerator = new StreamsHiveResourceGenerator();
+        Thread thread = new Thread(streamsPojoScala);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+        return;
+    }
+
+    public StreamsHiveResourceGenerator(StreamsPojoHiveMojo mojo) {
+        this.mojo = mojo;
+        if (    mojo != null &&
+                mojo.getTarget() != null &&
+                !Strings.isNullOrEmpty(mojo.getTarget().getAbsolutePath())
+            )
+            outDir = mojo.getTarget().getAbsolutePath();
+
+        if (    mojo != null &&
+                mojo.getPackages() != null &&
+                mojo.getPackages().length > 0
+            )
+            packages = mojo.getPackages();
+    }
+
+    public StreamsHiveResourceGenerator() {
+    }
+
+    public void run() {
+
+        List<Class<?>> serializableClasses = detectSerializableClasses();
+
+        LOGGER.info("Detected {} serialiables:", serializableClasses.size());
+        for( Class clazz : serializableClasses )
+            LOGGER.debug(clazz.toString());
+
+        List<Class<?>> pojoClasses = detectPojoClasses(serializableClasses);
+
+        LOGGER.info("Detected {} pojos:", pojoClasses.size());
+        for( Class clazz : pojoClasses ) {
+            LOGGER.debug(clazz.toString());
+
+        }
+
+
+        for( Class clazz : pojoClasses ) {
+            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".hive").replace(".","/")+"/";
+            String pojoName = clazz.getSimpleName()+".hql";
+            String pojoHive = renderPojo(clazz);
+            writeFile(outDir+"/"+pojoPath+pojoName, pojoHive);
+        }
+
+    }
+
+    private void writeFile(String pojoFile, String pojoHive) {
+        try {
+            File path = new File(pojoFile);
+            File dir = path.getParentFile();
+            if( !dir.exists() )
+                dir.mkdirs();
+            Files.write(Paths.get(pojoFile), pojoHive.getBytes(), StandardOpenOption.CREATE_NEW);
+        } catch (Exception e) {
+            LOGGER.error("Write Exception: {}", e);
+        }
+    }
+
+    public List<Class<?>> detectSerializableClasses() {
+
+        Set<Class<? extends Serializable>> classes =
+                reflections.getSubTypesOf(java.io.Serializable.class);
+
+        List<Class<?>> result = Lists.newArrayList();
+
+        for( Class clazz : classes ) {
+            result.add(clazz);
+        }
+
+        return result;
+    }
+
+    public List<Class<?>> detectPojoClasses(List<Class<?>> classes) {
+
+        List<Class<?>> result = Lists.newArrayList();
+
+        for( Class clazz : classes ) {
+            try {
+                clazz.newInstance().toString();
+            } catch( Exception e) {}
+            // super-halfass way to know if this is a jsonschema2pojo
+            if( clazz.getAnnotations().length >= 1 )
+                result.add(clazz);
+        }
+
+        return result;
+    }
+
+    public String renderPojo(Class<?> pojoClass) {
+        StringBuffer stringBuffer = new StringBuffer();
+        stringBuffer.append("CREATE TABLE ");
+        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".hive"));
+        stringBuffer.append(LS);
+        stringBuffer.append("(");
+        stringBuffer.append(LS);
+
+        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
+        appendFields(stringBuffer, fields, "", ",");
+
+        stringBuffer.append(")");
+
+        return stringBuffer.toString();
+    }
+
+    private void appendFields(StringBuffer stringBuffer, Set<Field> fields, String varDef, String fieldDelimiter) {
+        if( fields.size() > 0 ) {
+            stringBuffer.append(LS);
+            Map<String,Field> fieldsToAppend = uniqueFields(fields);
+            for( Iterator<Field> iter = fieldsToAppend.values().iterator(); iter.hasNext(); ) {
+                Field field = iter.next();
+                stringBuffer.append(name(field));
+                stringBuffer.append(": ");
+                stringBuffer.append(type(field));
+                if( iter.hasNext()) stringBuffer.append(fieldDelimiter);
+                stringBuffer.append(LS);
+            }
+        } else {
+            stringBuffer.append(LS);
+        }
+    }
+
+    private String value(Field field) {
+        if( field.getName().equals("verb")) {
+            return "\"post\"";
+        } else if( field.getName().equals("objectType")) {
+            return "\"application\"";
+        } else return null;
+    }
+
+    private String type(Field field) {
+        if( field.getType().equals(java.lang.String.class)) {
+            return "STRING";
+        } else if( field.getType().equals(java.lang.Integer.class)) {
+            return "INT";
+        } else if( field.getType().equals(org.joda.time.DateTime.class)) {
+            return "DATE";
+        }else if( field.getType().equals(java.util.Map.class)) {
+            return "MAP";
+        } else if( field.getType().equals(java.util.List.class)) {
+            return "ARRAY";
+        }
+        return field.getType().getCanonicalName().replace(".pojo.json", ".scala");
+    }
+
+    private Map<String,Field> uniqueFields(Set<Field> fieldset) {
+        Map<String,Field> fields = Maps.newTreeMap();
+        Field item = null;
+        for( Iterator<Field> it = fieldset.iterator(); it.hasNext(); item = it.next() ) {
+            if( item != null && item.getName() != null ) {
+                Field added = fields.put(item.getName(), item);
+            }
+            // ensure right class will get used
+        }
+        return fields;
+    }
+
+    private String name(Field field) {
+        if( field.getName().equals("object"))
+            return "obj";
+        else return field.getName();
+    }
+
+    private boolean override(Field field) {
+        try {
+            if( field.getDeclaringClass().getSuperclass().getField(field.getName()) != null )
+                return true;
+            else return false;
+        } catch( Exception e ) {
+            return false;
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ded4ad68/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsHiveResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsHiveResourceGeneratorMojo.java b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsHiveResourceGeneratorMojo.java
new file mode 100644
index 0000000..1f8c782
--- /dev/null
+++ b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsHiveResourceGeneratorMojo.java
@@ -0,0 +1,68 @@
+package org.apache.streams.plugins;
+
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugins.annotations.Component;
+import org.apache.maven.plugins.annotations.Execute;
+import org.apache.maven.plugins.annotations.LifecyclePhase;
+import org.apache.maven.plugins.annotations.Mojo;
+import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.project.MavenProject;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+
+@Mojo(  name = "hive",
+        defaultPhase = LifecyclePhase.GENERATE_SOURCES
+)
+@Execute(   goal = "hive",
+            phase = LifecyclePhase.GENERATE_SOURCES
+)
+public class StreamsHiveResourceGeneratorMojo extends AbstractMojo {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsHiveResourceGeneratorMojo.class);
+
+    @Component
+    private MavenProject project;
+
+//    @Component
+//    private Settings settings;
+//
+//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
+//    protected ArtifactRepository localRepository;
+//
+//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
+//    private PluginDescriptor plugin;
+//
+    @Parameter( defaultValue = "${project.basedir}", readonly = true )
+    private File basedir;
+
+    @Parameter(defaultValue = "${project.build.directory}", readonly = true)
+    private File target;
+
+    @Parameter(defaultValue = "org.apache.streams.pojo.json", readonly = true)
+    private String[] packages;
+
+    public void execute() throws MojoExecutionException {
+        StreamsHiveResourceGenerator streamsPojoScala = new StreamsHiveResourceGenerator(this);
+        Thread thread = new Thread(streamsPojoScala);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+        return;
+    }
+
+    public File getTarget() {
+        return target;
+    }
+
+    public String[] getPackages() {
+        return packages;
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ded4ad68/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHive.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHive.java b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHive.java
deleted file mode 100644
index f8a00f7..0000000
--- a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHive.java
+++ /dev/null
@@ -1,242 +0,0 @@
-package org.apache.streams.plugins;
-
-import com.google.common.base.Strings;
-import com.google.common.collect.Iterables;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
-import com.google.common.collect.Sets;
-import org.apache.streams.data.DocumentClassifier;
-import org.reflections.ReflectionUtils;
-import org.reflections.Reflections;
-import org.reflections.scanners.SubTypesScanner;
-import org.reflections.scanners.TypeAnnotationsScanner;
-import org.reflections.util.ClasspathHelper;
-import org.reflections.util.ConfigurationBuilder;
-import org.reflections.ReflectionUtils.*;
-import org.reflections.util.FilterBuilder;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import javax.annotation.Generated;
-import java.io.File;
-import java.io.IOException;
-import java.io.Serializable;
-import java.lang.reflect.Field;
-import java.nio.file.Files;
-import java.nio.file.OpenOption;
-import java.nio.file.Paths;
-import java.nio.file.StandardOpenOption;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.TreeSet;
-import java.util.concurrent.ConcurrentHashMap;
-
-/**
- * Created by sblackmon on 11/18/15.
- */
-public class StreamsPojoHive implements Runnable {
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoHive.class);
-
-    private final static String LS = System.getProperty("line.separator");
-
-    private StreamsPojoHiveMojo mojo;
-
-    String outDir = "./target/generated-sources/hive";
-    String packages[] = {"org.apache.streams.pojo.json"};
-
-    private final Reflections reflections = new Reflections(
-            new ConfigurationBuilder()
-                    .forPackages(packages)
-                    .filterInputsBy(new FilterBuilder().includePackage(packages))
-                    .setScanners(
-                            new SubTypesScanner(),
-                            new TypeAnnotationsScanner()));
-
-    public void main(String[] args) {
-        StreamsPojoHive streamsPojoScala = new StreamsPojoHive();
-        Thread thread = new Thread(streamsPojoScala);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
-        return;
-    }
-
-    public StreamsPojoHive(StreamsPojoHiveMojo mojo) {
-        this.mojo = mojo;
-        if (    mojo != null &&
-                mojo.getTarget() != null &&
-                !Strings.isNullOrEmpty(mojo.getTarget().getAbsolutePath())
-            )
-            outDir = mojo.getTarget().getAbsolutePath();
-
-        if (    mojo != null &&
-                mojo.getPackages() != null &&
-                mojo.getPackages().length > 0
-            )
-            packages = mojo.getPackages();
-    }
-
-    public StreamsPojoHive() {
-    }
-
-    public void run() {
-
-        List<Class<?>> serializableClasses = detectSerializableClasses();
-
-        LOGGER.info("Detected {} serialiables:", serializableClasses.size());
-        for( Class clazz : serializableClasses )
-            LOGGER.debug(clazz.toString());
-
-        List<Class<?>> pojoClasses = detectPojoClasses(serializableClasses);
-
-        LOGGER.info("Detected {} pojos:", pojoClasses.size());
-        for( Class clazz : pojoClasses ) {
-            LOGGER.debug(clazz.toString());
-
-        }
-
-
-        for( Class clazz : pojoClasses ) {
-            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".hive").replace(".","/")+"/";
-            String pojoName = clazz.getSimpleName()+".hql";
-            String pojoHive = renderPojo(clazz);
-            writeFile(outDir+"/"+pojoPath+pojoName, pojoHive);
-        }
-
-    }
-
-    private void writeFile(String pojoFile, String pojoHive) {
-        try {
-            File path = new File(pojoFile);
-            File dir = path.getParentFile();
-            if( !dir.exists() )
-                dir.mkdirs();
-            Files.write(Paths.get(pojoFile), pojoHive.getBytes(), StandardOpenOption.CREATE_NEW);
-        } catch (Exception e) {
-            LOGGER.error("Write Exception: {}", e);
-        }
-    }
-
-    public List<Class<?>> detectSerializableClasses() {
-
-        Set<Class<? extends Serializable>> classes =
-                reflections.getSubTypesOf(java.io.Serializable.class);
-
-        List<Class<?>> result = Lists.newArrayList();
-
-        for( Class clazz : classes ) {
-            result.add(clazz);
-        }
-
-        return result;
-    }
-
-    public List<Class<?>> detectPojoClasses(List<Class<?>> classes) {
-
-        List<Class<?>> result = Lists.newArrayList();
-
-        for( Class clazz : classes ) {
-            try {
-                clazz.newInstance().toString();
-            } catch( Exception e) {}
-            // super-halfass way to know if this is a jsonschema2pojo
-            if( clazz.getAnnotations().length >= 1 )
-                result.add(clazz);
-        }
-
-        return result;
-    }
-
-    public String renderPojo(Class<?> pojoClass) {
-        StringBuffer stringBuffer = new StringBuffer();
-        stringBuffer.append("CREATE TABLE ");
-        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".hive"));
-        stringBuffer.append(LS);
-        stringBuffer.append("(");
-        stringBuffer.append(LS);
-
-        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
-        appendFields(stringBuffer, fields, "", ",");
-
-        stringBuffer.append(")");
-
-        return stringBuffer.toString();
-    }
-
-    private void appendFields(StringBuffer stringBuffer, Set<Field> fields, String varDef, String fieldDelimiter) {
-        if( fields.size() > 0 ) {
-            stringBuffer.append(LS);
-            Map<String,Field> fieldsToAppend = uniqueFields(fields);
-            for( Iterator<Field> iter = fieldsToAppend.values().iterator(); iter.hasNext(); ) {
-                Field field = iter.next();
-                stringBuffer.append(name(field));
-                stringBuffer.append(": ");
-                stringBuffer.append(type(field));
-                if( iter.hasNext()) stringBuffer.append(fieldDelimiter);
-                stringBuffer.append(LS);
-            }
-        } else {
-            stringBuffer.append(LS);
-        }
-    }
-
-    private String value(Field field) {
-        if( field.getName().equals("verb")) {
-            return "\"post\"";
-        } else if( field.getName().equals("objectType")) {
-            return "\"application\"";
-        } else return null;
-    }
-
-    private String type(Field field) {
-        if( field.getType().equals(java.lang.String.class)) {
-            return "STRING";
-        } else if( field.getType().equals(java.lang.Integer.class)) {
-            return "INT";
-        } else if( field.getType().equals(org.joda.time.DateTime.class)) {
-            return "DATE";
-        }else if( field.getType().equals(java.util.Map.class)) {
-            return "MAP";
-        } else if( field.getType().equals(java.util.List.class)) {
-            return "ARRAY";
-        }
-        return field.getType().getCanonicalName().replace(".pojo.json", ".scala");
-    }
-
-    private Map<String,Field> uniqueFields(Set<Field> fieldset) {
-        Map<String,Field> fields = Maps.newTreeMap();
-        Field item = null;
-        for( Iterator<Field> it = fieldset.iterator(); it.hasNext(); item = it.next() ) {
-            if( item != null && item.getName() != null ) {
-                Field added = fields.put(item.getName(), item);
-            }
-            // ensure right class will get used
-        }
-        return fields;
-    }
-
-    private String name(Field field) {
-        if( field.getName().equals("object"))
-            return "obj";
-        else return field.getName();
-    }
-
-    private boolean override(Field field) {
-        try {
-            if( field.getDeclaringClass().getSuperclass().getField(field.getName()) != null )
-                return true;
-            else return false;
-        } catch( Exception e ) {
-            return false;
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ded4ad68/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHiveMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHiveMojo.java b/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHiveMojo.java
deleted file mode 100644
index a0af5ac..0000000
--- a/streams-plugins/streams-plugin-hive/src/main/java/org/apache/streams/plugins/StreamsPojoHiveMojo.java
+++ /dev/null
@@ -1,71 +0,0 @@
-package org.apache.streams.plugins;
-
-import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.plugin.AbstractMojo;
-import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.plugin.descriptor.PluginDescriptor;
-import org.apache.maven.plugins.annotations.Component;
-import org.apache.maven.plugins.annotations.Execute;
-import org.apache.maven.plugins.annotations.LifecyclePhase;
-import org.apache.maven.plugins.annotations.Mojo;
-import org.apache.maven.plugins.annotations.Parameter;
-import org.apache.maven.project.MavenProject;
-import org.apache.maven.settings.Settings;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.File;
-
-@Mojo(  name = "hive",
-        defaultPhase = LifecyclePhase.GENERATE_SOURCES
-)
-@Execute(   goal = "hive",
-            phase = LifecyclePhase.GENERATE_SOURCES
-)
-public class StreamsPojoHiveMojo extends AbstractMojo {
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoHiveMojo.class);
-
-    @Component
-    private MavenProject project;
-
-//    @Component
-//    private Settings settings;
-//
-//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
-//    protected ArtifactRepository localRepository;
-//
-//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
-//    private PluginDescriptor plugin;
-//
-    @Parameter( defaultValue = "${project.basedir}", readonly = true )
-    private File basedir;
-
-    @Parameter(defaultValue = "${project.build.directory}", readonly = true)
-    private File target;
-
-    @Parameter(defaultValue = "org.apache.streams.pojo.json", readonly = true)
-    private String[] packages;
-
-    public void execute() throws MojoExecutionException {
-        StreamsPojoHive streamsPojoScala = new StreamsPojoHive(this);
-        Thread thread = new Thread(streamsPojoScala);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
-        return;
-    }
-
-    public File getTarget() {
-        return target;
-    }
-
-    public String[] getPackages() {
-        return packages;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ded4ad68/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java
new file mode 100644
index 0000000..cd80cf8
--- /dev/null
+++ b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsHiveResourceGeneratorTest.java
@@ -0,0 +1,55 @@
+package org.apache.streams.plugins.test;
+
+import org.apache.streams.plugins.StreamsHiveResourceGenerator;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.io.FileFilter;
+
+/**
+ * Test that Activity beans are compatible with the example activities in the spec.
+ */
+public class StreamsHiveResourceGeneratorTest {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsHiveResourceGeneratorTest.class);
+
+    /**
+     * Tests that all example activities can be loaded into Activity beans
+     *
+     * @throws Exception
+     */
+    @Test
+    public void testStreamsPojoHive() throws Exception {
+        StreamsHiveResourceGenerator streamsHiveResourceGenerator = new StreamsHiveResourceGenerator();
+        streamsHiveResourceGenerator.main(new String[0]);
+
+        File testOutput = new File( "./target/generated-sources/hive/org/apache/streams/hive");
+        FileFilter hqlFilter = new FileFilter() {
+            @Override
+            public boolean accept(File pathname) {
+                if( pathname.getName().endsWith(".hql") )
+                    return true;
+                return false;
+            }
+        };
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+        assert( testOutput.listFiles(hqlFilter).length == 11 );
+//        assert( new File(testOutput + "/traits").exists() == true );
+//        assert( new File(testOutput + "/traits").isDirectory() == true );
+//        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
+//        assert( new File(testOutput + "/objectTypes").exists() == true );
+//        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
+//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
+//        assert( new File(testOutput + "/verbs").exists() == true );
+//        assert( new File(testOutput + "/verbs").isDirectory() == true );
+//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ded4ad68/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsPojoHiveTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsPojoHiveTest.java b/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsPojoHiveTest.java
deleted file mode 100644
index e5a7abd..0000000
--- a/streams-plugins/streams-plugin-hive/src/test/java/org/apache/streams/plugins/test/StreamsPojoHiveTest.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package org.apache.streams.plugins.test;
-
-import org.apache.streams.plugins.StreamsPojoHive;
-import org.junit.Test;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.File;
-import java.io.FileFilter;
-
-/**
- * Test that Activity beans are compatible with the example activities in the spec.
- */
-public class StreamsPojoHiveTest {
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoHiveTest.class);
-
-    /**
-     * Tests that all example activities can be loaded into Activity beans
-     *
-     * @throws Exception
-     */
-    @Test
-    public void testStreamsPojoHive() throws Exception {
-        StreamsPojoHive streamsPojoHive = new StreamsPojoHive();
-        streamsPojoHive.main(new String[0]);
-
-        File testOutput = new File( "./target/generated-sources/hive/org/apache/streams/hive");
-        FileFilter hqlFilter = new FileFilter() {
-            @Override
-            public boolean accept(File pathname) {
-                if( pathname.getName().endsWith(".hql") )
-                    return true;
-                return false;
-            }
-        };
-
-        assert( testOutput != null );
-        assert( testOutput.exists() == true );
-        assert( testOutput.isDirectory() == true );
-        assert( testOutput.listFiles(hqlFilter).length == 11 );
-//        assert( new File(testOutput + "/traits").exists() == true );
-//        assert( new File(testOutput + "/traits").isDirectory() == true );
-//        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
-//        assert( new File(testOutput + "/objectTypes").exists() == true );
-//        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
-//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
-//        assert( new File(testOutput + "/verbs").exists() == true );
-//        assert( new File(testOutput + "/verbs").isDirectory() == true );
-//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
-//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ded4ad68/streams-plugins/streams-plugin-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/pom.xml b/streams-plugins/streams-plugin-pojo/pom.xml
new file mode 100644
index 0000000..399a371
--- /dev/null
+++ b/streams-plugins/streams-plugin-pojo/pom.xml
@@ -0,0 +1,239 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.streams.plugins</groupId>
+    <artifactId>streams-plugin-pojo</artifactId>
+    <version>0.3-incubating-SNAPSHOT</version>
+    <packaging>maven-plugin</packaging>
+
+    <parent>
+        <groupId>org.apache.streams</groupId>
+        <artifactId>streams-plugins</artifactId>
+        <version>0.3-incubating-SNAPSHOT</version>
+        <relativePath>..</relativePath>
+    </parent>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-config</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-core</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.jsonschema2pojo</groupId>
+            <artifactId>jsonschema2pojo-core</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>commons-logging</groupId>
+                    <artifactId>commons-logging</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.jsonschema2pojo</groupId>
+            <artifactId>jsonschema2pojo-maven-plugin</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-pojo</artifactId>
+            <version>${project.version}</version>
+            <scope>test</scope>
+            <type>test-jar</type>
+        </dependency>
+        <dependency>
+            <groupId>org.reflections</groupId>
+            <artifactId>reflections</artifactId>
+            <version>0.9.9</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-aether-provider</artifactId>
+            <version>3.3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-artifact</artifactId>
+            <version>3.3.3</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-compat</artifactId>
+            <version>3.3.3</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-core</artifactId>
+            <version>3.3.3</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.sonatype.aether</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-plugin-api</artifactId>
+            <version>3.3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-resources-plugin</artifactId>
+            <version>2.7</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.maven</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.codehaus.plexus</groupId>
+            <artifactId>plexus-utils</artifactId>
+            <version>3.0.15</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-plugin-plugin</artifactId>
+            <version>3.4</version>
+            <exclusions>
+                <exclusion>
+                    <artifactId>commons-logging</artifactId>
+                    <groupId>commons-logging</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-tools-api</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-annotations</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-tools-generators</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-testing</groupId>
+            <artifactId>maven-plugin-testing-harness</artifactId>
+            <version>3.3.0</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-lang</groupId>
+            <artifactId>commons-lang</artifactId>
+            <version>2.6</version>
+        </dependency>
+        <dependency>
+            <groupId>joda-time</groupId>
+            <artifactId>joda-time</artifactId>
+            <version>2.2</version>
+        </dependency>
+        <dependency>
+            <groupId>org.joda</groupId>
+            <artifactId>joda-convert</artifactId>
+            <version>1.8.1</version>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <sourceDirectory>src/main/java</sourceDirectory>
+        <testSourceDirectory>src/test/java</testSourceDirectory>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+            </resource>
+        </resources>
+        <testResources>
+            <testResource>
+                <directory>src/test/resources</directory>
+            </testResource>
+        </testResources>
+        <plugins>
+            <plugin>
+                <artifactId>maven-plugin-plugin</artifactId>
+                <version>3.4</version>
+                <configuration>
+                    <skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>mojo-descriptor</id>
+                        <phase>process-classes</phase>
+                        <goals>
+                            <goal>descriptor</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.reflections</groupId>
+                <artifactId>reflections-maven</artifactId>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>reflections</goal>
+                        </goals>
+                        <phase>process-classes</phase>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>2.4</version>
+                <executions>
+                    <execution>
+                        <id>resource-dependencies</id>
+                        <phase>process-test-resources</phase>
+                        <goals>
+                            <goal>unpack-dependencies</goal>
+                        </goals>
+                        <configuration>
+                            <includeArtifactIds>streams-pojo</includeArtifactIds>
+                            <includes>**/*.json</includes>
+                            <outputDirectory>${project.build.directory}/test-classes</outputDirectory>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+
+        </plugins>
+    </build>
+
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ded4ad68/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoGenerationConfig.java b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoGenerationConfig.java
new file mode 100644
index 0000000..b42ccf9
--- /dev/null
+++ b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoGenerationConfig.java
@@ -0,0 +1,198 @@
+package org.apache.streams.plugins;
+
+import org.jsonschema2pojo.AnnotationStyle;
+import org.jsonschema2pojo.Annotator;
+import org.jsonschema2pojo.GenerationConfig;
+import org.jsonschema2pojo.SourceType;
+import org.jsonschema2pojo.rules.RuleFactory;
+
+import java.io.File;
+import java.io.FileFilter;
+import java.net.URL;
+import java.util.Iterator;
+
+/**
+ * Created by sblackmon on 3/27/16.
+ */
+public class StreamsPojoGenerationConfig implements GenerationConfig {
+
+        @Override
+        public boolean isGenerateBuilders() {
+            return false;
+        }
+
+        @Override
+        public boolean isUsePrimitives() {
+            return false;
+        }
+
+        @Override
+        public Iterator<URL> getSource() {
+            return null;
+        }
+
+        @Override
+        public File getTargetDirectory() {
+            return null;
+        }
+
+        @Override
+        public String getTargetPackage() {
+            return null;
+        }
+
+        @Override
+        public char[] getPropertyWordDelimiters() {
+            return new char[0];
+        }
+
+        @Override
+        public boolean isUseLongIntegers() {
+            return false;
+        }
+
+        @Override
+        public boolean isUseDoubleNumbers() {
+            return false;
+        }
+
+        @Override
+        public boolean isUseBigDecimals() {
+            return false;
+        }
+
+        @Override
+        public boolean isIncludeHashcodeAndEquals() {
+            return false;
+        }
+
+        @Override
+        public boolean isIncludeToString() {
+            return false;
+        }
+
+        @Override
+        public AnnotationStyle getAnnotationStyle() {
+            return null;
+        }
+
+        @Override
+        public Class<? extends Annotator> getCustomAnnotator() {
+            return null;
+        }
+
+        @Override
+        public Class<? extends RuleFactory> getCustomRuleFactory() {
+            return null;
+        }
+
+        @Override
+        public boolean isIncludeJsr303Annotations() {
+            return false;
+        }
+
+        @Override
+        public SourceType getSourceType() {
+            return null;
+        }
+
+        @Override
+        public boolean isRemoveOldOutput() {
+            return false;
+        }
+
+        @Override
+        public String getOutputEncoding() {
+            return null;
+        }
+
+        @Override
+        public boolean isUseJodaDates() {
+            return false;
+        }
+
+        @Override
+        public boolean isUseJodaLocalDates() {
+            return false;
+        }
+
+        @Override
+        public boolean isUseJodaLocalTimes() {
+            return false;
+        }
+
+        @Override
+        public boolean isUseCommonsLang3() {
+            return false;
+        }
+
+        @Override
+        public boolean isParcelable() {
+            return false;
+        }
+
+        @Override
+        public FileFilter getFileFilter() {
+            return null;
+        }
+
+        @Override
+        public boolean isInitializeCollections() {
+            return false;
+        }
+
+        @Override
+        public String getClassNamePrefix() {
+            return null;
+        }
+
+        @Override
+        public String getClassNameSuffix() {
+            return null;
+        }
+
+        @Override
+        public boolean isIncludeConstructors() {
+            return false;
+        }
+
+        @Override
+        public boolean isConstructorsRequiredPropertiesOnly() {
+            return false;
+        }
+
+        @Override
+        public boolean isIncludeAdditionalProperties() {
+            return false;
+        }
+
+        @Override
+        public boolean isIncludeAccessors() {
+            return false;
+        }
+
+        @Override
+        public String getTargetVersion() {
+            return null;
+        }
+
+        @Override
+        public boolean isIncludeDynamicAccessors() {
+            return false;
+        }
+
+        @Override
+        public String getDateTimeType() {
+            return null;
+        }
+
+        @Override
+        public String getDateType() {
+            return null;
+        }
+
+        @Override
+        public String getTimeType() {
+            return null;
+        }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ded4ad68/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
new file mode 100644
index 0000000..8980daa
--- /dev/null
+++ b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
@@ -0,0 +1,272 @@
+package org.apache.streams.plugins;
+
+import org.apache.maven.artifact.DependencyResolutionRequiredException;
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugins.annotations.Component;
+import org.apache.maven.plugins.annotations.Execute;
+import org.apache.maven.plugins.annotations.LifecyclePhase;
+import org.apache.maven.plugins.annotations.Mojo;
+import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.project.MavenProject;
+import org.jsonschema2pojo.Jsonschema2Pojo;
+import org.jsonschema2pojo.maven.Jsonschema2PojoMojo;
+import org.jsonschema2pojo.maven.ProjectClasspath;
+import org.jsonschema2pojo.util.URLUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URL;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.nio.file.StandardOpenOption;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+
+import static org.apache.commons.lang.StringUtils.isNotBlank;
+
+@Mojo(  name = "hive",
+        defaultPhase = LifecyclePhase.GENERATE_SOURCES
+)
+@Execute(   goal = "hive",
+            phase = LifecyclePhase.GENERATE_SOURCES
+)
+public class StreamsPojoSourceGeneratorMojo extends AbstractMojo {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoSourceGeneratorMojo.class);
+
+    @Component
+    public MavenProject project;
+
+//    @Component
+//    private Settings settings;
+//
+//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
+//    protected ArtifactRepository localRepository;
+//
+//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
+//    private PluginDescriptor plugin;
+//
+
+    @Parameter( defaultValue = "${project.basedir}", readonly = true )
+    public File basedir;
+
+    @Parameter( defaultValue = "${jsonschema2pojo.sourceDirectory}", readonly = true ) // Maven 3 only
+    public String sourceDirectory;
+
+    @Parameter( defaultValue = "${jsonschema2pojo.sourcePaths}", readonly = true ) // Maven 3 only
+    public String[] sourcePaths;
+
+    @Parameter(defaultValue = "${project.build.directory}", readonly = true)
+    public File target;
+
+    public void execute() throws MojoExecutionException {
+
+        addProjectDependenciesToClasspath();
+
+        // verify source directories
+        if (isNotBlank(sourceDirectory)) {
+            // verify sourceDirectory
+            try {
+                URLUtil.parseURL(sourceDirectory);
+            } catch (IllegalArgumentException e) {
+                throw new MojoExecutionException(e.getMessage(), e);
+            }
+        } else if (sourcePaths != null) {
+            // verify individual source paths
+            for (String source : sourcePaths) {
+                try {
+                    URLUtil.parseURL(source);
+                } catch (IllegalArgumentException e) {
+                    throw new MojoExecutionException(e.getMessage(), e);
+                }
+            }
+        } else {
+            throw new MojoExecutionException("One of sourceDirectory or sourcePaths must be provided");
+        }
+
+        try {
+            Jsonschema2Pojo.generate(new StreamsPojoGenerationConfig());
+        } catch (IOException e) {
+            throw new MojoExecutionException("Error generating classes from JSON Schema file(s) " + sourceDirectory, e);
+        }
+
+//        List<Class<?>> serializableClasses = detectSerializableClasses();
+//
+//        LOGGER.info("Detected {} serialiables:", serializableClasses.size());
+//        for( Class clazz : serializableClasses )
+//            LOGGER.debug(clazz.toString());
+//
+//        List<Class<?>> pojoClasses = detectPojoClasses(serializableClasses);
+//
+//        LOGGER.info("Detected {} pojos:", pojoClasses.size());
+//        for( Class clazz : pojoClasses ) {
+//            LOGGER.debug(clazz.toString());
+//
+//        }
+//
+//
+//        for( Class clazz : pojoClasses ) {
+//            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".hive").replace(".","/")+"/";
+//            String pojoName = clazz.getSimpleName()+".hql";
+//            String pojoHive = renderPojo(clazz);
+//            writeFile(outDir+"/"+pojoPath+pojoName, pojoHive);
+//        }
+
+    }
+
+    private void addProjectDependenciesToClasspath() {
+
+        try {
+
+            ClassLoader oldClassLoader = Thread.currentThread().getContextClassLoader();
+            ClassLoader newClassLoader = new ProjectClasspath().getClassLoader(project, oldClassLoader, getLog());
+            Thread.currentThread().setContextClassLoader(newClassLoader);
+
+        } catch (DependencyResolutionRequiredException e) {
+            LOGGER.info("Skipping addition of project artifacts, there appears to be a dependecy resolution problem", e);
+        }
+
+    }
+
+    private void writeFile(String pojoFile, String pojoHive) {
+        try {
+            File path = new File(pojoFile);
+            File dir = path.getParentFile();
+            if( !dir.exists() )
+                dir.mkdirs();
+            Files.write(Paths.get(pojoFile), pojoHive.getBytes(), StandardOpenOption.CREATE_NEW);
+        } catch (Exception e) {
+            LOGGER.error("Write Exception: {}", e);
+        }
+    }
+
+    public Iterator<URL> getSource() {
+        if (null != sourceDirectory) {
+            return Collections.singleton(URLUtil.parseURL(sourceDirectory)).iterator();
+        }
+        List<URL> sourceURLs = new ArrayList<URL>();
+        for (String source : sourcePaths) {
+            sourceURLs.add(URLUtil.parseURL(source));
+        }
+        return sourceURLs.iterator();
+    }
+
+//    public List<Class<?>> detectSerializableClasses() {
+//
+//        Set<Class<? extends Serializable>> classes =
+//                reflections.getSubTypesOf(java.io.Serializable.class);
+//
+//        List<Class<?>> result = Lists.newArrayList();
+//
+//        for( Class clazz : classes ) {
+//            result.add(clazz);
+//        }
+//
+//        return result;
+//    }
+//
+//    public List<Class<?>> detectPojoClasses(List<Class<?>> classes) {
+//
+//        List<Class<?>> result = Lists.newArrayList();
+//
+//        for( Class clazz : classes ) {
+//            try {
+//                clazz.newInstance().toString();
+//            } catch( Exception e) {}
+//            // super-halfass way to know if this is a jsonschema2pojo
+//            if( clazz.getAnnotations().length >= 1 )
+//                result.add(clazz);
+//        }
+//
+//        return result;
+//    }
+//
+//    public String renderPojo(Class<?> pojoClass) {
+//        StringBuffer stringBuffer = new StringBuffer();
+//        stringBuffer.append("CREATE TABLE ");
+//        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".hive"));
+//        stringBuffer.append(LS);
+//        stringBuffer.append("(");
+//        stringBuffer.append(LS);
+//
+//        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
+//        appendFields(stringBuffer, fields, "", ",");
+//
+//        stringBuffer.append(")");
+//
+//        return stringBuffer.toString();
+//    }
+//
+//    private void appendFields(StringBuffer stringBuffer, Set<Field> fields, String varDef, String fieldDelimiter) {
+//        if( fields.size() > 0 ) {
+//            stringBuffer.append(LS);
+//            Map<String,Field> fieldsToAppend = uniqueFields(fields);
+//            for( Iterator<Field> iter = fieldsToAppend.values().iterator(); iter.hasNext(); ) {
+//                Field field = iter.next();
+//                stringBuffer.append(name(field));
+//                stringBuffer.append(": ");
+//                stringBuffer.append(type(field));
+//                if( iter.hasNext()) stringBuffer.append(fieldDelimiter);
+//                stringBuffer.append(LS);
+//            }
+//        } else {
+//            stringBuffer.append(LS);
+//        }
+//    }
+//
+//    private String value(Field field) {
+//        if( field.getName().equals("verb")) {
+//            return "\"post\"";
+//        } else if( field.getName().equals("objectType")) {
+//            return "\"application\"";
+//        } else return null;
+//    }
+//
+//    private String type(Field field) {
+//        if( field.getType().equals(java.lang.String.class)) {
+//            return "STRING";
+//        } else if( field.getType().equals(java.lang.Integer.class)) {
+//            return "INT";
+//        } else if( field.getType().equals(org.joda.time.DateTime.class)) {
+//            return "DATE";
+//        }else if( field.getType().equals(java.util.Map.class)) {
+//            return "MAP";
+//        } else if( field.getType().equals(java.util.List.class)) {
+//            return "ARRAY";
+//        }
+//        return field.getType().getCanonicalName().replace(".pojo.json", ".scala");
+//    }
+//
+//    private Map<String,Field> uniqueFields(Set<Field> fieldset) {
+//        Map<String,Field> fields = Maps.newTreeMap();
+//        Field item = null;
+//        for( Iterator<Field> it = fieldset.iterator(); it.hasNext(); item = it.next() ) {
+//            if( item != null && item.getName() != null ) {
+//                Field added = fields.put(item.getName(), item);
+//            }
+//            // ensure right class will get used
+//        }
+//        return fields;
+//    }
+//
+//    private String name(Field field) {
+//        if( field.getName().equals("object"))
+//            return "obj";
+//        else return field.getName();
+//    }
+//
+//    private boolean override(Field field) {
+//        try {
+//            if( field.getDeclaringClass().getSuperclass().getField(field.getName()) != null )
+//                return true;
+//            else return false;
+//        } catch( Exception e ) {
+//            return false;
+//        }
+//    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ded4ad68/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
new file mode 100644
index 0000000..63d4995
--- /dev/null
+++ b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
@@ -0,0 +1,54 @@
+package org.apache.streams.plugins.test;
+
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.io.FileFilter;
+
+/**
+ * Test that Activity beans are compatible with the example activities in the spec.
+ */
+public class StreamsPojoSourceGeneratorTest {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoSourceGeneratorTest.class);
+
+    /**
+     * Tests that all example activities can be loaded into Activity beans
+     *
+     * @throws Exception
+     */
+    @Test
+    public void testStreamsPojoSourceGenerator() throws Exception {
+//        StreamsPojoSourceGenerator streamsPojoSourceGenerator = new StreamsPojoSourceGenerator();
+//        StreamsPojoSourceGenerator.main(new String[0]);
+
+        File testOutput = new File( "./target/generated-sources/streams-pojo");
+        FileFilter javaFilter = new FileFilter() {
+            @Override
+            public boolean accept(File pathname) {
+                if( pathname.getName().endsWith(".java") )
+                    return true;
+                return false;
+            }
+        };
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+        assert( testOutput.listFiles(javaFilter).length == 11 );
+//        assert( new File(testOutput + "/traits").exists() == true );
+//        assert( new File(testOutput + "/traits").isDirectory() == true );
+//        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
+//        assert( new File(testOutput + "/objectTypes").exists() == true );
+//        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
+//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
+//        assert( new File(testO`utput + "/verbs").exists() == true );
+//        assert( new File(testOutput + "/verbs").isDirectory() == true );
+//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ded4ad68/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml b/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
new file mode 100644
index 0000000..b1de7b8
--- /dev/null
+++ b/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
@@ -0,0 +1,42 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>org.apache.streams.plugins</groupId>
+    <artifactId>streams-plugin-hive-test</artifactId>
+    <version>0.3-incubating-SNAPSHOT</version>
+    <packaging>jar</packaging>
+    <name>Test StreamsPojoHiveMojo</name>
+
+    <dependencies>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.streams.plugins</groupId>
+                <artifactId>streams-plugin-hive</artifactId>
+                <version>0.3-incubating-SNAPSHOT</version>
+                <configuration>
+                    <packages>
+                        <package>org.apache.streams.pojo.json</package>
+                    </packages>
+                    <target>target/test-classes/streams-hive-plugin/</target>
+                </configuration>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>hive</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
\ No newline at end of file


[34/53] [abbrv] incubator-streams git commit: resolves STREAMS-410

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-consumer/src/main/resources/META-INF/spring/activity-consumer-context.xml
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-consumer/src/main/resources/META-INF/spring/activity-consumer-context.xml b/streams-osgi-components/activity-consumer/src/main/resources/META-INF/spring/activity-consumer-context.xml
deleted file mode 100644
index f12ab82..0000000
--- a/streams-osgi-components/activity-consumer/src/main/resources/META-INF/spring/activity-consumer-context.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-<beans xmlns="http://www.springframework.org/schema/beans"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
-
-    <!-- regular spring configuration file defining the beans for this
-bundle. The configuration of OSGi definitions is kept in a separate
-configuration file so that this file can easily be used
-for integration testing outside of an OSGi environment -->
-    <bean id="activityConsumerWarehouse" class="org.apache.streams.osgi.components.activityconsumer.impl.ActivityConsumerWarehouseImpl"/>
-</beans>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-consumer/src/main/resources/META-INF/spring/activity-consumer-osgi.xml
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-consumer/src/main/resources/META-INF/spring/activity-consumer-osgi.xml b/streams-osgi-components/activity-consumer/src/main/resources/META-INF/spring/activity-consumer-osgi.xml
deleted file mode 100644
index 408ce95..0000000
--- a/streams-osgi-components/activity-consumer/src/main/resources/META-INF/spring/activity-consumer-osgi.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-<beans xmlns="http://www.springframework.org/schema/beans"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xmlns:osgi="http://www.springframework.org/schema/osgi"
-       xsi:schemaLocation="http://www.springframework.org/schema/beans
-	http://www.springframework.org/schema/beans/spring-beans.xsd
-    http://www.springframework.org/schema/osgi
-    http://www.springframework.org/schema/osgi/spring-osgi.xsd">
-
-    <osgi:service ref="activityConsumerWarehouse" interface="org.apache.streams.osgi.components.activityconsumer.ActivityConsumerWarehouse"/>
-
-</beans>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-consumer/src/main/resources/readme.txt
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-consumer/src/main/resources/readme.txt b/streams-osgi-components/activity-consumer/src/main/resources/readme.txt
deleted file mode 100644
index 5774586..0000000
--- a/streams-osgi-components/activity-consumer/src/main/resources/readme.txt
+++ /dev/null
@@ -1 +0,0 @@
-Bundle resources go here

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-registration/osgi.bnd
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-registration/osgi.bnd b/streams-osgi-components/activity-registration/osgi.bnd
deleted file mode 100644
index 53f60f9..0000000
--- a/streams-osgi-components/activity-registration/osgi.bnd
+++ /dev/null
@@ -1,9 +0,0 @@
-#--------------------------------------------------------------------------------
-# Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
-#--------------------------------------------------------------------------------
-
-#-----------------------------------------------------------------
-# Use this file to add customized Bnd instructions for the bundle
-#-----------------------------------------------------------------
-
-

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-registration/pom.xml
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-registration/pom.xml b/streams-osgi-components/activity-registration/pom.xml
deleted file mode 100644
index 7871a0e..0000000
--- a/streams-osgi-components/activity-registration/pom.xml
+++ /dev/null
@@ -1,130 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements.  See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership.  The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied.  See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.apache.streams.osgi.components</groupId>
-    <artifactId>streams-osgi-components</artifactId>
-    <version>0.4-incubating-SNAPSHOT</version>
-  </parent>
-
-  <artifactId>activity-registration</artifactId>
-
-  <name>${bundle.symbolicName} [${bundle.namespace}]</name>
-
-  <packaging>bundle</packaging>
-
-  <properties>
-    <bundle.symbolicName>activity-registration-bundle</bundle.symbolicName>
-    <bundle.namespace>org.apache.streams.osgi.components</bundle.namespace>
-    <commons.log>1.1</commons.log>
-  </properties>
-
-  <build>
-        <resources>
-            <resource>
-                <directory>src/main/resources</directory>
-            </resource>
-            <!--
-             | example additional resource entries, useful when building Eclipse RCP applications
-            -->
-            <resource>
-                <directory>.</directory>
-                <includes>
-                    <include>plugin.xml</include>
-                    <include>plugin.properties</include>
-                    <include>icons/**</include>
-                </includes>
-            </resource>
-        </resources>
-        <plugins>
-            <plugin>
-                <groupId>org.ops4j</groupId>
-                <artifactId>maven-pax-plugin</artifactId>
-                <!--
-                 | enable improved OSGi compilation support for the bundle life-cycle.
-                 | to switch back to the standard bundle life-cycle, move this setting
-                 | down to the maven-bundle-plugin section
-                -->
-                <extensions>true</extensions>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.felix</groupId>
-                <artifactId>maven-bundle-plugin</artifactId>
-                <version>1.4.3</version>
-                <!--
-                 | the following instructions build a simple set of public/private classes into an OSGi bundle
-                -->
-                <configuration>
-                    <instructions>
-                        <Bundle-SymbolicName>${bundle.symbolicName}</Bundle-SymbolicName>
-                        <Bundle-Version>${project.version}</Bundle-Version>
-                        <Export-Package>${bundle.namespace};version="${project.version}"</Export-Package>
-                        <Private-Package>${bundle.namespace}.impl.*</Private-Package>
-                        <Import-Package>org.apache.streams.osgi.components.activityconsumer.impl,org.apache.streams.osgi.components.activityconsumer,org.apache.streams.osgi.components.activitysubscriber,org.apache.streams.osgi.components.activitysubscriber.impl,org.apache.commons.logging, org.codehaus.jackson.map</Import-Package>
-                    </instructions>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.osgi</groupId>
-            <artifactId>osgi_R4_core</artifactId>
-            <version>1.0</version>
-            <scope>provided</scope>
-            <optional>true</optional>
-        </dependency>
-        <dependency>
-            <groupId>org.osgi</groupId>
-            <artifactId>osgi_R4_compendium</artifactId>
-            <version>1.0</version>
-            <scope>provided</scope>
-            <optional>true</optional>
-        </dependency>
-        <dependency>
-            <groupId>commons-logging</groupId>
-            <artifactId>commons-logging-api</artifactId>
-            <version>${commons.log}</version>
-            <scope>provided</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.streams.osgi.components</groupId>
-            <artifactId>activity-consumer</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.streams.osgi.components</groupId>
-            <artifactId>activity-subscriber</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-testing</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-            <type>test-jar</type>
-        </dependency>
-    </dependencies>
-
-</project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/ActivityPublisherRegistration.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/ActivityPublisherRegistration.java b/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/ActivityPublisherRegistration.java
deleted file mode 100644
index fd590a1..0000000
--- a/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/ActivityPublisherRegistration.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components;
-
-/**
- * Public API representing an example OSGi service
- */
-public interface ActivityPublisherRegistration {
-
-    public Object register(Object obj);
-
-}
-

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/ActivityStreamsSubscriberRegistration.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/ActivityStreamsSubscriberRegistration.java b/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/ActivityStreamsSubscriberRegistration.java
deleted file mode 100644
index bd400d8..0000000
--- a/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/ActivityStreamsSubscriberRegistration.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components;
-
-/**
- * Public API representing an example OSGi service
- */
-public interface ActivityStreamsSubscriberRegistration {
-
-    public Object register(Object obj);
-
-}
-

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/impl/ActivityPublisherRegistrationImpl.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/impl/ActivityPublisherRegistrationImpl.java b/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/impl/ActivityPublisherRegistrationImpl.java
deleted file mode 100644
index e621f43..0000000
--- a/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/impl/ActivityPublisherRegistrationImpl.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.impl;
-
-import java.util.Date;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.streams.osgi.components.ActivityPublisherRegistration;
-import org.apache.streams.osgi.components.activityconsumer.ActivityConsumer;
-import org.apache.streams.osgi.components.activityconsumer.impl.PushActivityConsumer;
-
-public class ActivityPublisherRegistrationImpl implements ActivityPublisherRegistration {
-    private static final transient Log LOG = LogFactory.getLog(ActivityPublisherRegistrationImpl.class);
-    private boolean verbose = true;
-    private String prefix = "Activity Publisher Registration";
-
-    public Object register(Object body) {
-
-        //authorize this producer based on some rule set...
-        //create a new ActivityConsumer...
-        //using the URI supplied to set it up...
-        //return the consumer for addition to the consumer warehouse
-
-        String answer = prefix + " set body:  " + body + " " + new Date();
-        LOG.info(">> call >>" + answer);
-
-
-        ActivityConsumer activityConsumer =(ActivityConsumer)body;
-        //authenticate..
-        activityConsumer.setAuthenticated(true);
-        return activityConsumer;
-    }
-
-
-    public boolean isVerbose() {
-        return verbose;
-    }
-
-    public void setVerbose(boolean verbose) {
-        this.verbose = verbose;
-    }
-
-    public String getPrefix() {
-        return prefix;
-    }
-
-    public void setPrefix(String prefix) {
-        this.prefix = prefix;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/impl/ActivityStreamsSubscriberRegistrationImpl.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/impl/ActivityStreamsSubscriberRegistrationImpl.java b/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/impl/ActivityStreamsSubscriberRegistrationImpl.java
deleted file mode 100644
index 6a270d6..0000000
--- a/streams-osgi-components/activity-registration/src/main/java/org/apache/streams/osgi/components/impl/ActivityStreamsSubscriberRegistrationImpl.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.impl;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.streams.osgi.components.ActivityStreamsSubscriberRegistration;
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscription;
-import org.apache.streams.osgi.components.activitysubscriber.impl.ActivityStreamsSubscriberDelegate;
-
-public class ActivityStreamsSubscriberRegistrationImpl implements ActivityStreamsSubscriberRegistration {
-    private static final transient Log LOG = LogFactory.getLog(ActivityStreamsSubscriberRegistrationImpl.class);
-    private boolean verbose = true;
-    private String prefix = "Activity Subscriber Registration";
-
-    public Object register(Object body) {
-
-        //authorize this subscriber based on some rule set...
-        //create a new SubscriberDelegate...
-        //using the URI supplied to set it up...
-        //return the consumer for addition to the consumer warehouse
-
-        ActivityStreamsSubscription configuration = (ActivityStreamsSubscription)body;
-
-        ActivityStreamsSubscriberDelegate delegate =    new ActivityStreamsSubscriberDelegate(configuration);
-        //authenticate
-        delegate.setAuthenticated(true);
-
-
-
-        return  delegate;
-    }
-
-
-
-    public boolean isVerbose() {
-        return verbose;
-    }
-
-    public void setVerbose(boolean verbose) {
-        this.verbose = verbose;
-    }
-
-    public String getPrefix() {
-        return prefix;
-    }
-
-    public void setPrefix(String prefix) {
-        this.prefix = prefix;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-registration/src/main/resources/META-INF/spring/activity-registration-context-osgi.xml
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-registration/src/main/resources/META-INF/spring/activity-registration-context-osgi.xml b/streams-osgi-components/activity-registration/src/main/resources/META-INF/spring/activity-registration-context-osgi.xml
deleted file mode 100644
index af9e3b7..0000000
--- a/streams-osgi-components/activity-registration/src/main/resources/META-INF/spring/activity-registration-context-osgi.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-<beans xmlns="http://www.springframework.org/schema/beans"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xmlns:osgi="http://www.springframework.org/schema/osgi"
-       xsi:schemaLocation="http://www.springframework.org/schema/beans
-	http://www.springframework.org/schema/beans/spring-beans.xsd
-    http://www.springframework.org/schema/osgi
-    http://www.springframework.org/schema/osgi/spring-osgi.xsd">
-
-    <osgi:service ref="activityPublisherRegistration" interface="org.apache.streams.osgi.components.ActivityPublisherRegistration"/>
-    <osgi:service ref="activityStreamsSubscriberRegistration" interface="org.apache.streams.osgi.components.ActivityStreamsSubscriberRegistration"/>
-
-</beans>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-registration/src/main/resources/META-INF/spring/activity-registration-context.xml
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-registration/src/main/resources/META-INF/spring/activity-registration-context.xml b/streams-osgi-components/activity-registration/src/main/resources/META-INF/spring/activity-registration-context.xml
deleted file mode 100644
index 4e58ace..0000000
--- a/streams-osgi-components/activity-registration/src/main/resources/META-INF/spring/activity-registration-context.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-<beans xmlns="http://www.springframework.org/schema/beans"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
-
-    <!-- regular spring configuration file defining the beans for this
-bundle. The configuration of OSGi definitions is kept in a separate
-configuration file so that this file can easily be used
-for integration testing outside of an OSGi environment -->
-    <bean id="activityPublisherRegistration" class="org.apache.streams.osgi.components.impl.ActivityPublisherRegistrationImpl"/>
-    <bean id="activityStreamsSubscriberRegistration" class="org.apache.streams.osgi.components.impl.ActivityStreamsSubscriberRegistrationImpl"/>
-</beans>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-registration/src/main/resources/readme.txt
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-registration/src/main/resources/readme.txt b/streams-osgi-components/activity-registration/src/main/resources/readme.txt
deleted file mode 100644
index 5774586..0000000
--- a/streams-osgi-components/activity-registration/src/main/resources/readme.txt
+++ /dev/null
@@ -1 +0,0 @@
-Bundle resources go here

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/osgi.bnd
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/osgi.bnd b/streams-osgi-components/activity-subscriber/osgi.bnd
deleted file mode 100644
index 53f60f9..0000000
--- a/streams-osgi-components/activity-subscriber/osgi.bnd
+++ /dev/null
@@ -1,9 +0,0 @@
-#--------------------------------------------------------------------------------
-# Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
-#--------------------------------------------------------------------------------
-
-#-----------------------------------------------------------------
-# Use this file to add customized Bnd instructions for the bundle
-#-----------------------------------------------------------------
-
-

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/pom.xml
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/pom.xml b/streams-osgi-components/activity-subscriber/pom.xml
deleted file mode 100644
index 5b5c30a..0000000
--- a/streams-osgi-components/activity-subscriber/pom.xml
+++ /dev/null
@@ -1,134 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements.  See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership.  The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied.  See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.apache.streams.osgi.components</groupId>
-    <artifactId>streams-osgi-components</artifactId>
-    <version>0.4-incubating-SNAPSHOT</version>
-  </parent>
-
-  <artifactId>activity-subscriber</artifactId>
-
-  <name>${bundle.symbolicName} [${bundle.namespace}]</name>
-
-  <packaging>bundle</packaging>
-
-  <properties>
-    <bundle.symbolicName>activity-subscriber-bundle</bundle.symbolicName>
-    <bundle.namespace>org.apache.streams.osgi.components.activitysubscriber</bundle.namespace>
-    <commons.log>1.1</commons.log>
-    <jackson.version>1.9.11</jackson.version>
-  </properties>
-
-  <build>
-        <resources>
-            <resource>
-                <directory>src/main/resources</directory>
-            </resource>
-            <!--
-             | example additional resource entries, useful when building Eclipse RCP applications
-            -->
-            <resource>
-                <directory>.</directory>
-                <includes>
-                    <include>plugin.xml</include>
-                    <include>plugin.properties</include>
-                    <include>icons/**</include>
-                </includes>
-            </resource>
-        </resources>
-        <plugins>
-            <plugin>
-                <groupId>org.ops4j</groupId>
-                <artifactId>maven-pax-plugin</artifactId>
-                <!--
-                 | enable improved OSGi compilation support for the bundle life-cycle.
-                 | to switch back to the standard bundle life-cycle, move this setting
-                 | down to the maven-bundle-plugin section
-                -->
-                <extensions>true</extensions>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.felix</groupId>
-                <artifactId>maven-bundle-plugin</artifactId>
-                <version>1.4.3</version>
-                <!--
-                 | the following instructions build a simple set of public/private classes into an OSGi bundle
-                -->
-                <configuration>
-                    <instructions>
-                        <Bundle-SymbolicName>${bundle.symbolicName}</Bundle-SymbolicName>
-                        <Bundle-Version>${project.version}</Bundle-Version>
-                        <Export-Package>${bundle.namespace};version="${project.version}",org.apache.streams.osgi.components.activitysubscriber.impl</Export-Package>
-                        <Private-Package>${bundle.namespace}.impl.*</Private-Package>
-                        <Import-Package>org.apache.streams.osgi.components.activitysubscriber,org.apache.commons.logging,org.codehaus.jackson.*;version="${jackson.version}",javax.xml.datatype, javax.xml.namespace, javax.xml.parsers, org.joda.time, org.joda.time.format, org.w3c.dom, org.w3c.dom.bootstrap, org.w3c.dom.ls, org.xml.sax</Import-Package>
-                    </instructions>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.osgi</groupId>
-            <artifactId>osgi_R4_core</artifactId>
-            <version>1.0</version>
-            <scope>provided</scope>
-            <optional>true</optional>
-        </dependency>
-
-        <dependency>
-            <groupId>org.codehaus.jackson</groupId>
-            <artifactId>jackson-mrbean</artifactId>
-            <version>${jackson.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.codehaus.jackson</groupId>
-            <artifactId>jackson-mapper-asl</artifactId>
-            <version>${jackson.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.osgi</groupId>
-            <artifactId>osgi_R4_compendium</artifactId>
-            <version>1.0</version>
-            <scope>provided</scope>
-            <optional>true</optional>
-        </dependency>
-        <dependency>
-            <groupId>commons-logging</groupId>
-            <artifactId>commons-logging-api</artifactId>
-            <version>${commons.log}</version>
-            <scope>provided</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-testing</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-            <type>test-jar</type>
-        </dependency>
-    </dependencies>
-
-</project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriber.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriber.java b/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriber.java
deleted file mode 100644
index 8852843..0000000
--- a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriber.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.activitysubscriber;
-
-
-import java.util.Date;
-import java.util.List;
-
-public interface ActivityStreamsSubscriber {
-    public void receive(List<String> activity);
-    public String getStream();
-    public void init();
-    public void setInRoute(String route);
-    public String getInRoute();
-    public void setActivityStreamsSubscriberConfiguration(ActivityStreamsSubscription config);
-    public void updateActivityStreamsSubscriberConfiguration(String config);
-    public boolean isAuthenticated();
-    public void setAuthenticated(boolean authenticated);
-    public ActivityStreamsSubscription getActivityStreamsSubscriberConfiguration();
-    Date getLastUpdated();
-    void setLastUpdated(Date lastUpdated);
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriberWarehouse.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriberWarehouse.java b/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriberWarehouse.java
deleted file mode 100644
index f6e0223..0000000
--- a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriberWarehouse.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.activitysubscriber;
-
-import java.util.ArrayList;
-
-/**
- * Public API representing an example OSGi service
- */
-public interface ActivityStreamsSubscriberWarehouse {
-
-    public void register(ActivityStreamsSubscriber activitySubscriber);
-
-    public ArrayList<ActivityStreamsSubscriber> findSubscribersByFilters(String src);
-
-    public ArrayList<ActivityStreamsSubscriber> getAllSubscribers();
-}
-

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscription.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscription.java b/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscription.java
deleted file mode 100644
index 19cc107..0000000
--- a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscription.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.activitysubscriber;
-
-import org.codehaus.jackson.annotate.JsonTypeInfo;
-
-import java.util.ArrayList;
-import java.util.List;
-
-@JsonTypeInfo(use= JsonTypeInfo.Id.CLASS, include=JsonTypeInfo.As.PROPERTY, property="@class")
-public interface ActivityStreamsSubscription {
-
-    public void setFilters(List<String> filters);
-    public List<String> getFilters();
-
-    public List<ActivityStreamsSubscriptionOutput> getActivityStreamsSubscriptionOutputs();
-    public void setActivityStreamsSubscriptionOutputs(List<ActivityStreamsSubscriptionOutput> outputs);
-
-    public String getAuthToken();
-    public void setAuthToken(String token);
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriptionFilter.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriptionFilter.java b/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriptionFilter.java
deleted file mode 100644
index 5900e76..0000000
--- a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriptionFilter.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.activitysubscriber;
-
-import org.codehaus.jackson.annotate.JsonTypeInfo;
-
-@JsonTypeInfo(use= JsonTypeInfo.Id.CLASS, include=JsonTypeInfo.As.PROPERTY, property="@class")
-public interface ActivityStreamsSubscriptionFilter {
-
-
-
-    public void setQuery(String query);
-
-    public String getQuery();
-
-    public boolean evaluate(String activity);
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriptionOutput.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriptionOutput.java b/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriptionOutput.java
deleted file mode 100644
index b6ca484..0000000
--- a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/ActivityStreamsSubscriptionOutput.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.activitysubscriber;
-
-public interface ActivityStreamsSubscriptionOutput {
-
-    public String getOutputType();
-    public void setOutputType(String outputType);
-
-    public String getMethod();
-    public void setMethod(String method);
-
-    public String getUrl();
-    public void setUrl(String url);
-
-    public String getDeliveryFrequency();
-    public void setDeliveryFrequency(String deliveryFrequency);
-
-    public String getMaxSize();
-    public void setMaxSize(int maxSize);
-
-    public String getAuthType();
-    public void setAuthType(String authType);
-
-    public String getUsername();
-    public void setUsername(String username);
-
-    public String getPassword();
-    public void setPassword(String password);
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriberDelegate.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriberDelegate.java b/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriberDelegate.java
deleted file mode 100644
index b575ba3..0000000
--- a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriberDelegate.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.activitysubscriber.impl;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscriber;
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscription;
-import org.codehaus.jackson.map.DeserializationConfig;
-import org.codehaus.jackson.map.ObjectMapper;
-
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-public class ActivityStreamsSubscriberDelegate implements ActivityStreamsSubscriber {
-
-    private static final transient Log LOG = LogFactory.getLog(ActivityStreamsSubscriberDelegate.class);
-
-    private boolean authenticated;
-
-    private ActivityStreamsSubscription activityStreamsSubscriberConfiguration;
-
-    private String inRoute;
-
-    //an individual subscriber gets ONE stream which is an aggregation of all its SRCs
-    private List<String> stream;
-
-    private Date lastUpdated;
-
-
-    public ActivityStreamsSubscriberDelegate(ActivityStreamsSubscription configuration){
-        setActivityStreamsSubscriberConfiguration(configuration);
-        stream = new ArrayList<String>();
-        lastUpdated = new Date(0);
-    }
-
-
-    public ActivityStreamsSubscription getActivityStreamsSubscriberConfiguration() {
-        return activityStreamsSubscriberConfiguration;
-    }
-
-    public void setActivityStreamsSubscriberConfiguration(ActivityStreamsSubscription activityStreamsSubscriberConfiguration) {
-        this.activityStreamsSubscriberConfiguration = activityStreamsSubscriberConfiguration;
-    }
-
-    public void updateActivityStreamsSubscriberConfiguration(String activityStreamsSubscriberConfiguration) {
-        ObjectMapper mapper = new ObjectMapper();
-        mapper.configure(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES,false);
-
-        try {
-            // read from file, convert it to user class
-            ActivityStreamsSubscription configuration = mapper.readValue(activityStreamsSubscriberConfiguration, ActivityStreamsSubscriptionImpl.class);
-            this.activityStreamsSubscriberConfiguration = configuration;
-
-        } catch (Exception e) {
-            LOG.info("exception" + e);
-
-        }
-
-    }
-
-    public boolean isAuthenticated() {
-        return authenticated;
-    }
-
-    public void setAuthenticated(boolean authenticated) {
-        this.authenticated = authenticated;
-    }
-
-    public String getInRoute() {
-        return inRoute;
-    }
-
-    public void setInRoute(String inRoute) {
-        this.inRoute = inRoute;
-    }
-
-    public void receive (List<String> activity){
-        //add new activities to stream
-        LOG.info("adding activities to subscription stream");
-        stream.addAll(0,activity);
-    }
-
-    //return the list of activities (stream) as a json string
-    public String getStream() {
-
-        return stream.toString();
-    }
-
-    public Date getLastUpdated() {
-        return lastUpdated;
-    }
-
-    public void setLastUpdated(Date lastUpdated) {
-        this.lastUpdated = lastUpdated;
-    }
-
-    public void init(){
-        //any initialization... gets called directly after registration
-
-
-
-    }
-
-
-
-
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriberWarehouseImpl.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriberWarehouseImpl.java b/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriberWarehouseImpl.java
deleted file mode 100644
index 80f94cf..0000000
--- a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriberWarehouseImpl.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.activitysubscriber.impl;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscriber;
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscriberWarehouse;
-
-
-public class ActivityStreamsSubscriberWarehouseImpl implements ActivityStreamsSubscriberWarehouse {
-    private static final transient Log LOG = LogFactory.getLog(ActivityStreamsSubscriberWarehouseImpl.class);
-
-    private ArrayList<ActivityStreamsSubscriber> subscribers;
-
-    public ActivityStreamsSubscriberWarehouseImpl(){
-        subscribers = new ArrayList<ActivityStreamsSubscriber>();
-    }
-
-    public void register(ActivityStreamsSubscriber activitySubscriber) {
-
-        if (!subscribers.contains(activitySubscriber)){
-            subscribers.add(activitySubscriber);
-            activitySubscriber.init();
-        }
-
-    }
-
-
-    //the warehouse can do some interesting things to make the filtering efficient i think...
-    public ArrayList<ActivityStreamsSubscriber> findSubscribersByFilters(String src){
-        return subscribers;
-    }
-
-
-    public ArrayList<ActivityStreamsSubscriber> getAllSubscribers(){
-        return subscribers;
-    }
-
-
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriptionCassandraFilterImpl.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriptionCassandraFilterImpl.java b/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriptionCassandraFilterImpl.java
deleted file mode 100644
index f1a9f9d..0000000
--- a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriptionCassandraFilterImpl.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.activitysubscriber.impl;
-
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscriptionFilter;
-
-import java.util.List;
-
-public class ActivityStreamsSubscriptionCassandraFilterImpl implements ActivityStreamsSubscriptionFilter {
-    private String query;
-    private List<String> filters;
-
-    public ActivityStreamsSubscriptionCassandraFilterImpl(){}
-
-    public void setQuery(String query) {
-        this.query=query;
-    }
-
-    public String getQuery() {
-        return query;
-    }
-
-    public boolean evaluate(String activity){
-        return true;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriptionImpl.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriptionImpl.java b/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriptionImpl.java
deleted file mode 100644
index 32dfdc3..0000000
--- a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriptionImpl.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.activitysubscriber.impl;
-
-
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscription;
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscriptionOutput;
-
-import org.codehaus.jackson.map.annotate.JsonDeserialize;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class ActivityStreamsSubscriptionImpl implements ActivityStreamsSubscription {
-
-    @JsonDeserialize(as=ArrayList.class)
-    private List<String> filters;
-
-    @JsonDeserialize(as=ArrayList.class)
-    private List<ActivityStreamsSubscriptionOutput> outputs;
-
-    private String authToken;
-
-    public void setFilters(List<String> filters) {
-        this.filters = filters;
-    }
-
-    @Override
-    public List<ActivityStreamsSubscriptionOutput> getActivityStreamsSubscriptionOutputs() {
-        return outputs;
-    }
-
-    @Override
-    public void setActivityStreamsSubscriptionOutputs(List<ActivityStreamsSubscriptionOutput> outputs) {
-        this.outputs = outputs;
-    }
-
-    @Override
-    public List<String> getFilters(){
-        return filters;
-
-    }
-
-    @Override
-    public String getAuthToken() {
-        return authToken;
-    }
-
-    @Override
-    public void setAuthToken(String auth_token) {
-        this.authToken = auth_token;
-    }
-
-
-
-
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriptionLuceneFilterImpl.java
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriptionLuceneFilterImpl.java b/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriptionLuceneFilterImpl.java
deleted file mode 100644
index c738e0e..0000000
--- a/streams-osgi-components/activity-subscriber/src/main/java/org/apache/streams/osgi/components/activitysubscriber/impl/ActivityStreamsSubscriptionLuceneFilterImpl.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.osgi.components.activitysubscriber.impl;
-
-
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscriptionFilter;
-
-public class ActivityStreamsSubscriptionLuceneFilterImpl implements ActivityStreamsSubscriptionFilter{
-
-    private String query;
-
-
-
-    public void setQuery(String query) {
-        this.query=query;
-    }
-
-    public String getQuery() {
-        return query;
-    }
-
-    public boolean evaluate(String activity){
-        return true;
-    }
-
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/src/main/resources/META-INF/spring/activity-subscriber-context.xml
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/src/main/resources/META-INF/spring/activity-subscriber-context.xml b/streams-osgi-components/activity-subscriber/src/main/resources/META-INF/spring/activity-subscriber-context.xml
deleted file mode 100644
index 65c58bd..0000000
--- a/streams-osgi-components/activity-subscriber/src/main/resources/META-INF/spring/activity-subscriber-context.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-<beans xmlns="http://www.springframework.org/schema/beans"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
-
-    <!-- regular spring configuration file defining the beans for this
-bundle. The configuration of OSGi definitions is kept in a separate
-configuration file so that this file can easily be used
-for integration testing outside of an OSGi environment -->
-    <bean id="activitySubscriberWarehouse" class="org.apache.streams.osgi.components.activitysubscriber.impl.ActivityStreamsSubscriberWarehouseImpl"/>
-</beans>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/src/main/resources/META-INF/spring/activity-subscriber-osgi.xml
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/src/main/resources/META-INF/spring/activity-subscriber-osgi.xml b/streams-osgi-components/activity-subscriber/src/main/resources/META-INF/spring/activity-subscriber-osgi.xml
deleted file mode 100644
index 8988824..0000000
--- a/streams-osgi-components/activity-subscriber/src/main/resources/META-INF/spring/activity-subscriber-osgi.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-<beans xmlns="http://www.springframework.org/schema/beans"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xmlns:osgi="http://www.springframework.org/schema/osgi"
-       xsi:schemaLocation="http://www.springframework.org/schema/beans
-	http://www.springframework.org/schema/beans/spring-beans.xsd
-    http://www.springframework.org/schema/osgi
-    http://www.springframework.org/schema/osgi/spring-osgi.xsd">
-
-    <osgi:service ref="activitySubscriberWarehouse" interface="org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscriberWarehouse"/>
-
-</beans>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/src/main/resources/readme.txt
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/src/main/resources/readme.txt b/streams-osgi-components/activity-subscriber/src/main/resources/readme.txt
deleted file mode 100644
index 5774586..0000000
--- a/streams-osgi-components/activity-subscriber/src/main/resources/readme.txt
+++ /dev/null
@@ -1 +0,0 @@
-Bundle resources go here

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/activity-subscriber/src/site/resources/readme.txt
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-subscriber/src/site/resources/readme.txt b/streams-osgi-components/activity-subscriber/src/site/resources/readme.txt
deleted file mode 100644
index 5774586..0000000
--- a/streams-osgi-components/activity-subscriber/src/site/resources/readme.txt
+++ /dev/null
@@ -1 +0,0 @@
-Bundle resources go here

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-osgi-components/pom.xml
----------------------------------------------------------------------
diff --git a/streams-osgi-components/pom.xml b/streams-osgi-components/pom.xml
deleted file mode 100644
index 44d0f44..0000000
--- a/streams-osgi-components/pom.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-<modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.apache.streams</groupId>
-    <artifactId>streams-project</artifactId>
-    <version>0.4-incubating-SNAPSHOT</version>
-  </parent>
-
-  <groupId>org.apache.streams.osgi.components</groupId>
-  <artifactId>streams-osgi-components</artifactId>
-
-  <name>Apache Streams OSGI Components</name>
-
-  <packaging>pom</packaging>
-
-
-  <modules>
-    <module>activity-registration</module>
-    <module>activity-consumer</module>
-    <module>activity-subscriber</module>
-  </modules>
-
-</project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/pom.xml
----------------------------------------------------------------------
diff --git a/streams-runtimes/pom.xml b/streams-runtimes/pom.xml
index 21c2a15..0194b45 100644
--- a/streams-runtimes/pom.xml
+++ b/streams-runtimes/pom.xml
@@ -38,6 +38,5 @@
         <module>streams-runtime-local</module>
         <module>streams-runtime-pig</module>
         <module>streams-runtime-storm</module>
-        <!--<module>streams-runtime-webapp</module>-->
     </modules>
 </project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-spark/src/main/jsonschema/SparkRuntimeConfiguration.json
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-spark/src/main/jsonschema/SparkRuntimeConfiguration.json b/streams-runtimes/streams-runtime-spark/src/main/jsonschema/SparkRuntimeConfiguration.json
deleted file mode 100644
index 5a9cf69..0000000
--- a/streams-runtimes/streams-runtime-spark/src/main/jsonschema/SparkRuntimeConfiguration.json
+++ /dev/null
@@ -1,27 +0,0 @@
-{
-  "$schema": "http://json-schema.org/draft-03/schema",
-  "$license": [
-    "http://www.apache.org/licenses/LICENSE-2.0"
-  ],
-  "type": "object",
-  "javaType" : "org.apache.streams.spark.SparkRuntimeConfiguration",
-  "extends": {
-    "$ref": "../../../../../streams-config/src/main/jsonschema/StreamsConfiguration.json"
-  },
-  "javaInterfaces": ["java.io.Serializable"],
-  "properties": {
-    "inputPath": {
-      "type": "string",
-      "description": "Input Path"
-    },
-    "outputPath": {
-      "type": "string",
-      "description": "Output Path"
-    },
-    "outputPartitions": {
-      "type": "integer",
-      "description": "Partitions",
-      "default": 0
-    }
-  }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/README.md
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/README.md b/streams-runtimes/streams-runtime-webapp/README.md
deleted file mode 100644
index 94ffeff..0000000
--- a/streams-runtimes/streams-runtime-webapp/README.md
+++ /dev/null
@@ -1,8 +0,0 @@
-Apache Streams (incubating)
-Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
---------------------------------------------------------------------------------
-
-org.apache.streams:streams-runtime-webapp
-=========================================
-
-[README.md](src/site/markdown/index.md "README")

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/pom.xml
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/pom.xml b/streams-runtimes/streams-runtime-webapp/pom.xml
deleted file mode 100644
index 7c97dae..0000000
--- a/streams-runtimes/streams-runtime-webapp/pom.xml
+++ /dev/null
@@ -1,250 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.apache.streams</groupId>
-    <artifactId>streams-runtimes</artifactId>
-    <version>0.4-incubating-SNAPSHOT</version>
-  </parent>
-
-  <artifactId>streams-runtime-webapp</artifactId>
-
-  <name>${bundle.symbolicName} [${bundle.namespace}]</name>
-
-    <description>Apache Streams Runtimes</description>
-
-    <properties>
-        <bundle.symbolicName>streams-eip-routes</bundle.symbolicName>
-        <bundle.namespace>org.apache.streams</bundle.namespace>
-        <jackson.old.version>1.9.11</jackson.old.version>
-    </properties>
-
-    <packaging>bundle</packaging>
-
-    <repositories>
-        <repository>
-            <id>clojars.org</id>
-            <url>http://clojars.org/repo</url>
-        </repository>
-    </repositories>
-
-    <build>
-
-        <resources>
-            <resource>
-                <directory>src/main/resources</directory>
-            </resource>
-            <!--
-             | example additional resource entries, useful when building Eclipse RCP applications
-            -->
-            <resource>
-                <directory>.</directory>
-                <includes>
-                    <include>plugin.xml</include>
-                    <include>plugin.properties</include>
-                    <include>icons/**</include>
-                    <include>META-INF/*</include>
-                </includes>
-            </resource>
-        </resources>
-        <plugins>
-            <plugin>
-                <groupId>org.ops4j</groupId>
-                <artifactId>maven-pax-plugin</artifactId>
-                <!--
-                 | enable improved OSGi compilation support for the bundle life-cycle.
-                 | to switch back to the standard bundle life-cycle, move this setting
-                 | down to the maven-bundle-plugin section
-                -->
-                <extensions>true</extensions>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.felix</groupId>
-                <artifactId>maven-bundle-plugin</artifactId>
-                <version>1.4.3</version>
-                <!--
-                 | the following instructions build a simple set of public/private classes into an OSGi bundle
-                -->
-                <configuration>
-                    <instructions>
-                        <Bundle-SymbolicName>${bundle.symbolicName}</Bundle-SymbolicName>
-                        <Bundle-Version>${project.version}</Bundle-Version>
-                        <Export-Package>${bundle.namespace};version="${project.version}",org.apache.streams.messaging.configuration,org.apache.streams.messaging.routers,org.apache.streams.messaging.rules,org.apache.streams.messaging.processors,org.apache.streams.messaging.aggregation,org.apache.streams.messaging.service, org.apache.streams.messaging.storm,org.apache.activemq,org.codehaus.jackson.*;version="${jackson.version}"</Export-Package>
-                        <Private-Package>${bundle.namespace}.messaging.routers.impl.*,${bundle.namespace}.messaging.rules.impl.*, ${bundle.namespace}.messaging.service.impl.*</Private-Package>
-                        <Import-Package>org.apache.camel.*;version="2.8.5",org.apache.streams.messaging.configuration,org.apache.activemq.camel.component,org.apache.activemq,org.apache.activemq.pool,org.apache.camel.component.jms,org.springframework.*;version="3.0.6.RELEASE",org.apache.commons.logging,org.apache.streams.*,org.apache.streams.osgi.components,org.apache.streams.osgi.components.activityconsumer,org.apache.streams.osgi.components.activityconsumer.impl,org.apache.streams.osgi.components.activitysubscriber,org.apache.streams.osgi.components.activitysubscriber.impl,org.apache.streams.messaging.processors,org.apache.streams.messaging.aggregation,javax.jms, javax.net.ssl, javax.transaction.xa, org.apache.activemq.advisory, org.apache.activemq.blob, org.apache.activemq.broker, org.apache.activemq.broker.region, org.apache.activemq.command, org.apache.activemq.filter, org.apache.activemq.jndi, org.apache.activemq.management, org.apache.activemq.selector, org.apache.activemq.sta
 te, org.apache.activemq.thread, org.apache.activemq.transaction, org.apache.activemq.transport, org.apache.activemq.transport.failover, org.apache.activemq.transport.tcp, org.apache.activemq.usage, org.apache.activemq.util, org.slf4j,org.codehaus.jackson;version="${jackson.version}",javax.xml.datatype, javax.xml.namespace, javax.xml.parsers, org.joda.time, org.joda.time.format, org.w3c.dom, org.w3c.dom.bootstrap, org.w3c.dom.ls, org.xml.sax, org.apache.rave.model, org.apache.rave.portal.model.impl, backtype.storm, backtype.storm.coordination, backtype.storm.generated, backtype.storm.spout, backtype.storm.task, backtype.storm.topology, backtype.storm.topology.base, backtype.storm.tuple, javax.annotation, backtype.storm.utils</Import-Package>
-                    </instructions>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.camel</groupId>
-            <artifactId>camel-core</artifactId>
-            <version>2.9.0</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.activemq</groupId>
-            <artifactId>activemq-camel</artifactId>
-            <version>5.5.1</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>commons-logging</groupId>
-                    <artifactId>commons-logging</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.activemq</groupId>
-            <artifactId>activemq-pool</artifactId>
-            <version>5.5.1</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-core</artifactId>
-            <version>3.0.6.RELEASE</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>commons-logging</groupId>
-                    <artifactId>commons-logging</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-context</artifactId>
-            <version>3.0.6.RELEASE</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>commons-logging</groupId>
-                    <artifactId>commons-logging</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <dependency>
-            <groupId>org.codehaus.jackson</groupId>
-            <artifactId>jackson-mrbean</artifactId>
-            <version>${jackson.old.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.codehaus.jackson</groupId>
-            <artifactId>jackson-mapper-asl</artifactId>
-            <version>${jackson.old.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.osgi</groupId>
-            <artifactId>osgi_R4_core</artifactId>
-            <version>1.0</version>
-            <scope>provided</scope>
-            <optional>true</optional>
-        </dependency>
-
-        <dependency>
-            <groupId>org.osgi</groupId>
-            <artifactId>osgi_R4_compendium</artifactId>
-            <version>1.0</version>
-            <scope>provided</scope>
-            <optional>true</optional>
-        </dependency>
-
-
-        <dependency>
-            <groupId>org.apache.streams.osgi.components</groupId>
-            <artifactId>activity-registration</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.streams.osgi.components</groupId>
-            <artifactId>activity-consumer</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.streams.osgi.components</groupId>
-            <artifactId>activity-subscriber</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-persist-cassandra</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.rave</groupId>
-            <artifactId>rave-core</artifactId>
-            <version>${rave.version}</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>commons-logging</groupId>
-                    <artifactId>commons-logging</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.rave</groupId>
-            <artifactId>rave-core-api</artifactId>
-            <version>${rave.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>storm</groupId>
-            <artifactId>storm</artifactId>
-            <version>0.8.2</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>commons-logging</groupId>
-                    <artifactId>commons-logging</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>org.slf4j</groupId>
-                    <artifactId>slf4j-log4j12</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <dependency>
-            <groupId>org.easymock</groupId>
-            <artifactId>easymock</artifactId>
-            <version>3.1</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-testing</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-            <type>test-jar</type>
-        </dependency>
-    </dependencies>
-
-</project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/ce7aa24d/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/aggregation/ActivityAggregator.java
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/aggregation/ActivityAggregator.java b/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/aggregation/ActivityAggregator.java
deleted file mode 100644
index dc7ba0c..0000000
--- a/streams-runtimes/streams-runtime-webapp/src/main/java/org/apache/streams/messaging/aggregation/ActivityAggregator.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.messaging.aggregation;
-
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.streams.messaging.service.impl.CassandraActivityService;
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscriber;
-import org.apache.streams.osgi.components.activitysubscriber.ActivityStreamsSubscriberWarehouse;
-import org.springframework.scheduling.annotation.Scheduled;
-
-import java.util.*;
-
-public class ActivityAggregator {
-
-    private ActivityStreamsSubscriberWarehouse activityStreamsSubscriberWarehouse;
-    private CassandraActivityService activityService;
-    private static final transient Log LOG = LogFactory.getLog(ActivityAggregator.class);
-
-    public void setActivityStreamsSubscriberWarehouse(ActivityStreamsSubscriberWarehouse activityStreamsSubscriberWarehouse) {
-        this.activityStreamsSubscriberWarehouse = activityStreamsSubscriberWarehouse;
-    }
-
-    public void setActivityService(CassandraActivityService activityService) {
-        this.activityService = activityService;
-    }
-
-    @Scheduled(fixedRate=30000)
-    public void distributeToSubscribers() {
-        for (ActivityStreamsSubscriber subscriber : activityStreamsSubscriberWarehouse.getAllSubscribers()) {
-              updateSubscriber(subscriber);
-        }
-    }
-
-    public void updateSubscriber(ActivityStreamsSubscriber subscriber){
-        Set<String> activities = new TreeSet<String>();
-        activities.addAll(activityService.getActivitiesForFilters(subscriber.getActivityStreamsSubscriberConfiguration().getFilters(), subscriber.getLastUpdated()));
-        //TODO: an activity posted in between the cql query and setting the lastUpdated field will be lost
-        subscriber.setLastUpdated(new Date());
-        subscriber.receive(new ArrayList<String>(activities));
-    }
-}


[43/53] [abbrv] incubator-streams git commit: remove version declaration from test

Posted by mf...@apache.org.
remove version declaration from test


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/b21ec4b5
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/b21ec4b5
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/b21ec4b5

Branch: refs/heads/invalid_headers
Commit: b21ec4b5028f8fa65ea2223e22af7d7c7bf16d4a
Parents: 150e171
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Wed Oct 12 12:41:12 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Oct 12 12:41:12 2016 -0500

----------------------------------------------------------------------
 .../org/apache/streams/util/schema/test/SchemaStoreTest.java     | 4 ++--
 streams-util/src/test/resources/media_link.json                  | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b21ec4b5/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaStoreTest.java
----------------------------------------------------------------------
diff --git a/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaStoreTest.java b/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaStoreTest.java
index 9aa7661..6b5e598 100644
--- a/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaStoreTest.java
+++ b/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaStoreTest.java
@@ -44,7 +44,7 @@ public class SchemaStoreTest {
         Schema collection = schemaStore.getByUri(file.toURI()).get();
         assert( collection.getParent() == null );
         assert( schemaStore.getById(
-                URI.create("http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/object.json#"
+                URI.create("http://streams.incubator.apache.org/site/latest/streams-project/streams-schemas/object.json#"
                 )).isPresent());
     }
 
@@ -60,7 +60,7 @@ public class SchemaStoreTest {
         assert( update.getParent() != null );
         assert( update.getParent().getId().getScheme().equals("http"));
         assert( update.getParent().getId().getHost().equals("streams.incubator.apache.org"));
-        assert( update.getParent().getId().getPath().startsWith("/site/0.3-incubating-SNAPSHOT/streams-schemas"));
+        assert( update.getParent().getId().getPath().startsWith("/site/latest/streams-project/streams-schemas"));
         assert( update.getParent().getId().getPath().endsWith("activity.json"));
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/b21ec4b5/streams-util/src/test/resources/media_link.json
----------------------------------------------------------------------
diff --git a/streams-util/src/test/resources/media_link.json b/streams-util/src/test/resources/media_link.json
index 0bed6f0..739c66b 100644
--- a/streams-util/src/test/resources/media_link.json
+++ b/streams-util/src/test/resources/media_link.json
@@ -1,5 +1,5 @@
 {
-    "$schema": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/media_link.json#",
+    "$schema": "http://streams.incubator.apache.org/site/latest/streams-project/streams-schemas/media_link.json#",
     "duration": 30000,
     "height": 480,
     "width": 640,


[08/53] [abbrv] incubator-streams git commit: test pom for streams-plugin-pojo

Posted by mf...@apache.org.
test pom for streams-plugin-pojo


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/387da685
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/387da685
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/387da685

Branch: refs/heads/invalid_headers
Commit: 387da685f37a7135d556f4f645a3e77e6138f958
Parents: 7d318c3
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Mon Mar 28 08:32:27 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Jun 1 12:49:27 2016 -0500

----------------------------------------------------------------------
 .../src/test/resources/streams-plugin-pojo/pom.xml        | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/387da685/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml b/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
index b1de7b8..fbb2864 100644
--- a/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
+++ b/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
@@ -4,10 +4,10 @@
     <modelVersion>4.0.0</modelVersion>
 
     <groupId>org.apache.streams.plugins</groupId>
-    <artifactId>streams-plugin-hive-test</artifactId>
+    <artifactId>streams-plugin-pojo-test</artifactId>
     <version>0.3-incubating-SNAPSHOT</version>
     <packaging>jar</packaging>
-    <name>Test StreamsPojoHiveMojo</name>
+    <name>Test StreamsPojoMojo</name>
 
     <dependencies>
         <dependency>
@@ -21,18 +21,18 @@
         <plugins>
             <plugin>
                 <groupId>org.apache.streams.plugins</groupId>
-                <artifactId>streams-plugin-hive</artifactId>
+                <artifactId>streams-plugin-pojo</artifactId>
                 <version>0.3-incubating-SNAPSHOT</version>
                 <configuration>
                     <packages>
                         <package>org.apache.streams.pojo.json</package>
                     </packages>
-                    <target>target/test-classes/streams-hive-plugin/</target>
+                    <target>target/test-classes/streams-pojo-plugin/</target>
                 </configuration>
                 <executions>
                     <execution>
                         <goals>
-                            <goal>hive</goal>
+                            <goal>pojo</goal>
                         </goals>
                     </execution>
                 </executions>


[36/53] [abbrv] incubator-streams git commit: Merge remote-tracking branch 'charlesmims/STREAMS-409'

Posted by mf...@apache.org.
Merge remote-tracking branch 'charlesmims/STREAMS-409'


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/f1e1e114
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/f1e1e114
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/f1e1e114

Branch: refs/heads/invalid_headers
Commit: f1e1e114ba9b56a141e06d3392918a419957466c
Parents: 51961a0 012d383
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Wed Oct 12 09:52:05 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Oct 12 09:52:05 2016 -0500

----------------------------------------------------------------------
 NOTICE | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------



[51/53] [abbrv] incubator-streams git commit: Added missing license headers for pojo plugin

Posted by mf...@apache.org.
Added missing license headers for pojo plugin


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/3b7509fc
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/3b7509fc
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/3b7509fc

Branch: refs/heads/invalid_headers
Commit: 3b7509fc97a1b0baa5663549c902da1eddaf3044
Parents: be7323d
Author: Matt Franklin <mf...@apache.org>
Authored: Wed Oct 12 14:22:42 2016 -0400
Committer: Matt Franklin <mf...@apache.org>
Committed: Wed Oct 12 14:22:42 2016 -0400

----------------------------------------------------------------------
 streams-plugins/streams-plugin-pojo/pom.xml      |  1 +
 .../plugins/StreamsPojoGenerationConfig.java     | 19 +++++++++++++++++++
 .../plugins/StreamsPojoSourceGenerator.java      | 19 +++++++++++++++++++
 .../plugins/StreamsPojoSourceGeneratorMojo.java  | 19 +++++++++++++++++++
 .../test/StreamsPojoSourceGeneratorCLITest.java  | 19 +++++++++++++++++++
 .../test/StreamsPojoSourceGeneratorMojoTest.java | 19 +++++++++++++++++++
 .../test/StreamsPojoSourceGeneratorTest.java     | 19 +++++++++++++++++++
 .../test/resources/streams-plugin-pojo/pom.xml   | 19 +++++++++++++++++++
 8 files changed, 134 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/3b7509fc/streams-plugins/streams-plugin-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/pom.xml b/streams-plugins/streams-plugin-pojo/pom.xml
index f8d1b02..85ed015 100644
--- a/streams-plugins/streams-plugin-pojo/pom.xml
+++ b/streams-plugins/streams-plugin-pojo/pom.xml
@@ -6,6 +6,7 @@
   ~ regarding copyright ownership.  The ASF licenses this file
   ~ to you under the Apache License, Version 2.0 (the
   ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
   ~
   ~   http://www.apache.org/licenses/LICENSE-2.0
   ~

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/3b7509fc/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoGenerationConfig.java b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoGenerationConfig.java
index 4c1f850..3b953fa 100644
--- a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoGenerationConfig.java
+++ b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoGenerationConfig.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins;
 
 import org.jsonschema2pojo.AnnotationStyle;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/3b7509fc/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java
index 504eb80..ea8f4f3 100644
--- a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java
+++ b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGenerator.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins;
 
 import com.google.common.base.Preconditions;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/3b7509fc/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
index 2a4978a..c265bb6 100644
--- a/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-pojo/src/main/java/org/apache/streams/plugins/StreamsPojoSourceGeneratorMojo.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins;
 
 import org.apache.maven.artifact.DependencyResolutionRequiredException;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/3b7509fc/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorCLITest.java b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorCLITest.java
index 07049ed..06b451e 100644
--- a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorCLITest.java
+++ b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorCLITest.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.test;
 
 import com.google.common.collect.Lists;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/3b7509fc/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java
index 41d762d..8932f3b 100644
--- a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java
+++ b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorMojoTest.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.test;
 
 import com.google.common.collect.Lists;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/3b7509fc/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
index 6e7400e..bf22f6c 100644
--- a/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-pojo/src/test/java/org/apache/streams/plugins/test/StreamsPojoSourceGeneratorTest.java
@@ -1,3 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 package org.apache.streams.plugins.test;
 
 import com.google.common.base.Predicate;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/3b7509fc/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml b/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
index 077f150..84e4342 100644
--- a/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
+++ b/streams-plugins/streams-plugin-pojo/src/test/resources/streams-plugin-pojo/pom.xml
@@ -1,3 +1,22 @@
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
 <project xmlns="http://maven.apache.org/POM/4.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">


[46/53] [abbrv] incubator-streams git commit: Added missing license headers for elasticsearch plugin

Posted by mf...@apache.org.
Added missing license headers for elasticsearch plugin


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/4d32e640
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/4d32e640
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/4d32e640

Branch: refs/heads/invalid_headers
Commit: 4d32e640f8a7f97cc2c2f382475f685cf7f7cf82
Parents: 94f7ea0
Author: Matt Franklin <mf...@apache.org>
Authored: Wed Oct 12 14:20:19 2016 -0400
Committer: Matt Franklin <mf...@apache.org>
Committed: Wed Oct 12 14:20:19 2016 -0400

----------------------------------------------------------------------
 .../StreamsElasticsearchGenerationConfig.java      | 17 +++++++++++++++++
 .../StreamsElasticsearchResourceGenerator.java     | 17 +++++++++++++++++
 .../StreamsElasticsearchResourceGeneratorMojo.java | 17 +++++++++++++++++
 ...reamsElasticsearchResourceGeneratorCLITest.java | 17 +++++++++++++++++
 ...eamsElasticsearchResourceGeneratorMojoTest.java | 17 +++++++++++++++++
 .../StreamsElasticsearchResourceGeneratorTest.java | 17 +++++++++++++++++
 .../resources/streams-plugin-elasticsearch/pom.xml | 17 +++++++++++++++++
 7 files changed, 119 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/4d32e640/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java
index 71bbdf8..42cd6f6 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.plugins.elasticsearch;
 
 import org.apache.streams.util.schema.GenerationConfig;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/4d32e640/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java
index 4d16f7e..d8497dc 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.plugins.elasticsearch;
 
 import com.fasterxml.jackson.core.JsonProcessingException;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/4d32e640/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java
index ed280ff..dbb7b5d 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.plugins.elasticsearch;
 
 import org.apache.maven.plugin.AbstractMojo;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/4d32e640/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorCLITest.java
index 3805894..65dac76 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorCLITest.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorCLITest.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.plugins.elasticsearch.test;
 
 import com.google.common.collect.Lists;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/4d32e640/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorMojoTest.java
index 72f4675..5a14d25 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorMojoTest.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorMojoTest.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.plugins.elasticsearch.test;
 
 import com.google.common.collect.Lists;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/4d32e640/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java
index 7844442..6e039d7 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.plugins.elasticsearch.test;
 
 import com.google.common.base.Predicate;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/4d32e640/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml b/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
index 175b012..2f49cad 100644
--- a/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
+++ b/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
@@ -1,3 +1,20 @@
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
 <project xmlns="http://maven.apache.org/POM/4.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">


[12/53] [abbrv] incubator-streams git commit: first take at STREAMS-389: streams-project/streams-plugins/streams-plugin-scala

Posted by mf...@apache.org.
first take at STREAMS-389: streams-project/streams-plugins/streams-plugin-scala


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/61f2736a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/61f2736a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/61f2736a

Branch: refs/heads/invalid_headers
Commit: 61f2736a9424516606b9f7544b894cb81f65922c
Parents: 1bc84db
Author: Steve Blackmon (@steveblackmon) <sb...@apache.org>
Authored: Mon Dec 7 13:48:38 2015 -0700
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Jun 1 12:51:43 2016 -0500

----------------------------------------------------------------------
 streams-plugins/pom.xml                         |   1 +
 streams-plugins/streams-plugin-scala/pom.xml    | 243 ++++++++++++
 .../streams/plugins/StreamsPojoScala.java       | 371 +++++++++++++++++++
 .../streams/plugins/StreamsPojoScalaMojo.java   |  71 ++++
 .../plugins/test/StreamsPojoScalaTest.java      |  55 +++
 .../test/resources/streams-plugin-scala/pom.xml |  40 ++
 6 files changed, 781 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/61f2736a/streams-plugins/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/pom.xml b/streams-plugins/pom.xml
index 5d403ac..f2c8999 100644
--- a/streams-plugins/pom.xml
+++ b/streams-plugins/pom.xml
@@ -42,6 +42,7 @@
         <module>streams-plugin-hive</module>
         <module>streams-plugin-pig</module>
         <module>streams-plugin-pojo</module>
+        <module>streams-plugin-scala</module>
  	</modules>
 
     <dependencyManagement>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/61f2736a/streams-plugins/streams-plugin-scala/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/pom.xml b/streams-plugins/streams-plugin-scala/pom.xml
new file mode 100644
index 0000000..f718260
--- /dev/null
+++ b/streams-plugins/streams-plugin-scala/pom.xml
@@ -0,0 +1,243 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.streams.plugins</groupId>
+    <artifactId>streams-plugin-scala</artifactId>
+    <version>0.3-incubating-SNAPSHOT</version>
+    <packaging>maven-plugin</packaging>
+
+    <parent>
+        <groupId>org.apache.streams</groupId>
+        <artifactId>streams-plugins</artifactId>
+        <version>0.3-incubating-SNAPSHOT</version>
+    </parent>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-config</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-core</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.jsonschema2pojo</groupId>
+            <artifactId>jsonschema2pojo-core</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-pojo</artifactId>
+            <version>${project.version}</version>
+            <scope>test</scope>
+            <type>test-jar</type>
+        </dependency>
+        <dependency>
+            <groupId>org.reflections</groupId>
+            <artifactId>reflections</artifactId>
+            <version>0.9.9</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-aether-provider</artifactId>
+            <version>3.3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-artifact</artifactId>
+            <version>3.3.3</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-compat</artifactId>
+            <version>3.3.3</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-core</artifactId>
+            <version>3.3.3</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.sonatype.aether</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-plugin-api</artifactId>
+            <version>3.3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-resources-plugin</artifactId>
+            <version>2.7</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.maven</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.codehaus.plexus</groupId>
+            <artifactId>plexus-utils</artifactId>
+            <version>3.0.15</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-plugin-plugin</artifactId>
+            <version>3.4</version>
+            <exclusions>
+                <exclusion>
+                    <artifactId>commons-logging</artifactId>
+                    <groupId>commons-logging</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-tools-api</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-annotations</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-tools-generators</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-testing</groupId>
+            <artifactId>maven-plugin-testing-harness</artifactId>
+            <version>3.3.0</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-lang</groupId>
+            <artifactId>commons-lang</artifactId>
+            <version>2.6</version>
+        </dependency>
+        <dependency>
+            <groupId>joda-time</groupId>
+            <artifactId>joda-time</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.joda</groupId>
+            <artifactId>joda-convert</artifactId>
+            <version>1.8.1</version>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <sourceDirectory>src/main/java</sourceDirectory>
+        <testSourceDirectory>src/test/java</testSourceDirectory>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+            </resource>
+        </resources>
+        <testResources>
+            <testResource>
+                <directory>src/test/resources</directory>
+            </testResource>
+        </testResources>
+        <plugins>
+            <plugin>
+                <artifactId>maven-plugin-plugin</artifactId>
+                <version>3.4</version>
+                <configuration>
+                    <skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>mojo-descriptor</id>
+                        <phase>process-classes</phase>
+                        <goals>
+                            <goal>descriptor</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.reflections</groupId>
+                <artifactId>reflections-maven</artifactId>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>reflections</goal>
+                        </goals>
+                        <phase>process-classes</phase>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>2.4</version>
+                <executions>
+                    <execution>
+                        <id>streams-pojo-resource-dependencies</id>
+                        <phase>process-test-resources</phase>
+                        <goals>
+                            <goal>unpack-dependencies</goal>
+                        </goals>
+                        <configuration>
+                            <includeArtifactIds>streams-pojo</includeArtifactIds>
+                            <includes>org/apache/streams/pojo/json/**</includes>
+                            <outputDirectory>${project.build.directory}/test-classes</outputDirectory>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>net.alchim31.maven</groupId>
+                <artifactId>scala-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>scala-compile-generated-sources</id>
+                        <phase>integration-test</phase>
+                        <goals>
+                            <goal>compile</goal>
+                        </goals>
+                        <configuration>
+                            <sourceDir>target/generated-sources/scala</sourceDir>
+                            <target>target/testClasses/scala</target>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/61f2736a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScala.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScala.java b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScala.java
new file mode 100644
index 0000000..1c3e317
--- /dev/null
+++ b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScala.java
@@ -0,0 +1,371 @@
+package org.apache.streams.plugins;
+
+import com.google.common.base.Strings;
+import com.google.common.collect.Iterables;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
+import com.google.common.collect.Sets;
+import org.apache.streams.data.DocumentClassifier;
+import org.reflections.ReflectionUtils;
+import org.reflections.Reflections;
+import org.reflections.scanners.SubTypesScanner;
+import org.reflections.scanners.TypeAnnotationsScanner;
+import org.reflections.util.ClasspathHelper;
+import org.reflections.util.ConfigurationBuilder;
+import org.reflections.ReflectionUtils.*;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.annotation.Generated;
+import java.io.File;
+import java.io.IOException;
+import java.io.Serializable;
+import java.lang.reflect.Field;
+import java.nio.file.Files;
+import java.nio.file.OpenOption;
+import java.nio.file.Paths;
+import java.nio.file.StandardOpenOption;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeSet;
+import java.util.concurrent.ConcurrentHashMap;
+
+/**
+ * Created by sblackmon on 11/18/15.
+ */
+public class StreamsPojoScala implements Runnable {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoScala.class);
+
+    private final static String LS = System.getProperty("line.separator");
+
+    private StreamsPojoScalaMojo mojo;
+
+    String outDir = "./target/generated-sources/scala";
+    String packages = "org.apache.streams.pojo.json";
+
+    private final Reflections reflections = new Reflections(
+            new ConfigurationBuilder()
+                    // TODO
+                    .forPackages(packages)
+                    .setScanners(
+                            new SubTypesScanner(),
+                            new TypeAnnotationsScanner()));
+
+    public void main(String[] args) {
+        StreamsPojoScala streamsPojoScala = new StreamsPojoScala();
+        Thread thread = new Thread(streamsPojoScala);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+        return;
+    }
+
+    public StreamsPojoScala(StreamsPojoScalaMojo mojo) {
+        this.mojo = mojo;
+        if (    mojo != null &&
+                mojo.getTarget() != null &&
+                !Strings.isNullOrEmpty(mojo.getTarget().getAbsolutePath())
+            )
+            outDir = mojo.getTarget().getAbsolutePath();
+
+        if (    mojo != null &&
+                mojo.getPackages() != null &&
+                !Strings.isNullOrEmpty(mojo.getPackages())
+            )
+            packages = mojo.getPackages();
+    }
+
+    public StreamsPojoScala() {
+    }
+
+    public void run() {
+
+        List<Class<?>> serializableClasses = detectSerializableClasses();
+
+        LOGGER.info("Detected {} serialiables:", serializableClasses.size());
+        for( Class clazz : serializableClasses )
+            LOGGER.debug(clazz.toString());
+
+        List<Class<?>> pojoClasses = detectPojoClasses(serializableClasses);
+
+        LOGGER.info("Detected {} pojos:", pojoClasses.size());
+        for( Class clazz : pojoClasses )
+            LOGGER.debug(clazz.toString());
+
+        List<Class<?>> traits = detectTraits(pojoClasses);
+
+        LOGGER.info("Detected {} traits:", traits.size());
+        for( Class clazz : traits )
+            LOGGER.debug(clazz.toString());
+
+        List<Class<?>> cases = detectCases(pojoClasses);
+
+        LOGGER.info("Detected {} cases:", cases.size());
+        for( Class clazz : cases )
+            LOGGER.debug(clazz.toString());
+
+
+        for( Class clazz : traits ) {
+            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".scala").replace(".","/")+"/traits/";
+            String pojoName = clazz.getSimpleName()+".scala";
+            String pojoScala = renderTrait(clazz);
+            writeFile(outDir+"/"+pojoPath+pojoName, pojoScala);
+        }
+
+        for( Class clazz : traits ) {
+            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".scala").replace(".","/")+"/";
+            String pojoName = clazz.getSimpleName()+".scala";
+            String pojoScala = renderClass(clazz);
+            writeFile(outDir+"/"+pojoPath+pojoName, pojoScala);
+        }
+
+        for( Class clazz : cases ) {
+            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".scala").replace(".","/")+"/";
+            String pojoName = clazz.getSimpleName()+".scala";
+            String pojoScala = renderCase(clazz);
+            writeFile(outDir+"/"+pojoPath+pojoName, pojoScala);
+        }
+
+    }
+
+    private void writeFile(String pojoFile, String pojoScala) {
+        try {
+            File path = new File(pojoFile);
+            File dir = path.getParentFile();
+            if( !dir.exists() )
+                dir.mkdirs();
+            Files.write(Paths.get(pojoFile), pojoScala.getBytes(), StandardOpenOption.CREATE_NEW);
+        } catch (Exception e) {
+            LOGGER.error("Write Exception: {}", e);
+        }
+    }
+
+    public List<Class<?>> detectSerializableClasses() {
+
+        Set<Class<? extends Serializable>> classes =
+                reflections.getSubTypesOf(java.io.Serializable.class);
+
+        List<Class<?>> result = Lists.newArrayList();
+
+        for( Class clazz : classes ) {
+            result.add(clazz);
+        }
+
+        return result;
+    }
+
+    public List<Class<?>> detectPojoClasses(List<Class<?>> classes) {
+
+        List<Class<?>> result = Lists.newArrayList();
+
+        for( Class clazz : classes ) {
+            try {
+                clazz.newInstance().toString();
+            } catch( Exception e) {}
+            // super-halfass way to know if this is a jsonschema2pojo
+            if( clazz.getAnnotations().length >= 1 )
+                result.add(clazz);
+        }
+
+        return result;
+    }
+
+    public List<Class<?>> detectTraits(List<Class<?>> classes) {
+
+        List<Class<?>> traits = Lists.newArrayList();
+
+        for( Class clazz : classes ) {
+            if (reflections.getSubTypesOf(clazz).size() > 0)
+                traits.add(clazz);
+        }
+
+        return traits;
+    }
+
+    public List<Class<?>> detectCases(List<Class<?>> classes) {
+
+        List<Class<?>> cases = Lists.newArrayList();
+
+        for( Class clazz : classes ) {
+            if (reflections.getSubTypesOf(clazz).size() == 0)
+                cases.add(clazz);
+        }
+
+        return cases;
+    }
+
+
+    public String renderTrait(Class<?> pojoClass) {
+        StringBuffer stringBuffer = new StringBuffer();
+        stringBuffer.append("package ");
+        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".scala"));
+        stringBuffer.append(".traits");
+        stringBuffer.append(LS);
+        stringBuffer.append("trait "+pojoClass.getSimpleName());
+        stringBuffer.append(" extends Serializable");
+        stringBuffer.append(" {");
+
+        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
+        appendFields(stringBuffer, fields, "def", ";");
+
+        stringBuffer.append("}");
+
+        return stringBuffer.toString();
+    }
+
+    public String renderClass(Class<?> pojoClass) {
+        StringBuffer stringBuffer = new StringBuffer();
+        stringBuffer.append("package ");
+        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".scala"));
+        stringBuffer.append(LS);
+        stringBuffer.append("import org.apache.commons.lang.builder.{HashCodeBuilder, EqualsBuilder, ToStringBuilder}");
+        stringBuffer.append(LS);
+        stringBuffer.append("class "+pojoClass.getSimpleName());
+        stringBuffer.append(" (");
+
+        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
+        appendFields(stringBuffer, fields, "var", ",");
+
+        stringBuffer.append(")");
+        stringBuffer.append(" extends "+pojoClass.getPackage().getName().replace(".pojo.json", ".scala")+".traits."+pojoClass.getSimpleName());
+        stringBuffer.append(" with Serializable ");
+        stringBuffer.append("{ ");
+        stringBuffer.append(LS);
+        stringBuffer.append("override def equals(obj: Any) = obj match { ");
+        stringBuffer.append(LS);
+        stringBuffer.append("  case other: ");
+        stringBuffer.append(pojoClass.getSimpleName());
+        stringBuffer.append(" => other.getClass == getClass && EqualsBuilder.reflectionEquals(this,obj)");
+        stringBuffer.append(LS);
+        stringBuffer.append("  case _ => false");
+        stringBuffer.append(LS);
+        stringBuffer.append("}");
+        stringBuffer.append(LS);
+        stringBuffer.append("override def hashCode = new HashCodeBuilder().hashCode");
+        stringBuffer.append(LS);
+        stringBuffer.append("}");
+
+        return stringBuffer.toString();
+    }
+
+    public String renderCase(Class<?> pojoClass) {
+        StringBuffer stringBuffer = new StringBuffer();
+        stringBuffer.append("package ");
+        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".scala"));
+        stringBuffer.append(LS);
+        stringBuffer.append("case class "+pojoClass.getSimpleName());
+        stringBuffer.append("(");
+        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
+        appendFields(stringBuffer, fields, "var", ",");
+        stringBuffer.append(")");
+        if( pojoClass.getSuperclass() != null && !pojoClass.getSuperclass().equals(java.lang.Object.class)) {
+            stringBuffer.append(" extends "+pojoClass.getSuperclass().getPackage().getName().replace(".pojo.json", ".scala")+".traits."+pojoClass.getSuperclass().getSimpleName());
+        }
+        stringBuffer.append(LS);
+
+        return stringBuffer.toString();
+    }
+
+    private void appendFields(StringBuffer stringBuffer, Set<Field> fields, String varDef, String fieldDelimiter) {
+        if( fields.size() > 0 ) {
+            stringBuffer.append(LS);
+            Map<String,Field> fieldsToAppend = uniqueFields(fields);
+            for( Iterator<Field> iter = fieldsToAppend.values().iterator(); iter.hasNext(); ) {
+                Field field = iter.next();
+                if( override( field ) )
+                    stringBuffer.append("override ");
+                stringBuffer.append(varDef);
+                stringBuffer.append(" ");
+                stringBuffer.append(name(field));
+                stringBuffer.append(": ");
+                if( option(field) ) {
+                    stringBuffer.append("scala.Option[");
+                    stringBuffer.append(type(field));
+                    stringBuffer.append("]");
+                } else {
+                    stringBuffer.append(type(field));
+                }
+                if( !fieldDelimiter.equals(";") && value(field) != null) {
+                    stringBuffer.append(" = ");
+                    if( option(field) ) {
+                        stringBuffer.append("scala.Some(");
+                        stringBuffer.append(value(field));
+                        stringBuffer.append(")");
+                    } else {
+                        stringBuffer.append(value(field));
+                    }
+                }
+                if( iter.hasNext()) stringBuffer.append(fieldDelimiter);
+                stringBuffer.append(LS);
+            }
+        } else {
+            stringBuffer.append(LS);
+        }
+    }
+
+    private boolean option(Field field) {
+        if( field.getName().equals("verb")) {
+            return false;
+        } else if( field.getType().equals(java.util.Map.class)) {
+            return false;
+        } else if( field.getType().equals(java.util.List.class)) {
+            return false;
+        } else return true;
+    }
+
+    private String value(Field field) {
+        if( field.getName().equals("verb")) {
+            return "\"post\"";
+        } else if( field.getName().equals("objectType")) {
+            return "\"application\"";
+        } else return null;
+    }
+
+    private String type(Field field) {
+        if( field.getType().equals(java.lang.String.class)) {
+            return "String";
+        } else if( field.getType().equals(java.util.Map.class)) {
+            return "scala.collection.mutable.Map[String,Any]";
+        } else if( field.getType().equals(java.util.List.class)) {
+            return "scala.collection.mutable.MutableList[Any]";
+        }
+        return field.getType().getCanonicalName().replace(".pojo.json", ".scala");
+    }
+
+    private Map<String,Field> uniqueFields(Set<Field> fieldset) {
+        Map<String,Field> fields = Maps.newTreeMap();
+        Field item = null;
+        for( Iterator<Field> it = fieldset.iterator(); it.hasNext(); item = it.next() ) {
+            if( item != null && item.getName() != null ) {
+                Field added = fields.put(item.getName(), item);
+            }
+            // ensure right class will get used
+        }
+        return fields;
+    }
+
+    private String name(Field field) {
+        if( field.getName().equals("object"))
+            return "obj";
+        else return field.getName();
+    }
+
+    private boolean override(Field field) {
+        try {
+            if( field.getDeclaringClass().getSuperclass().getField(field.getName()) != null )
+                return true;
+            else return false;
+        } catch( Exception e ) {
+            return false;
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/61f2736a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScalaMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScalaMojo.java b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScalaMojo.java
new file mode 100644
index 0000000..baa0f50
--- /dev/null
+++ b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScalaMojo.java
@@ -0,0 +1,71 @@
+package org.apache.streams.plugins;
+
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.descriptor.PluginDescriptor;
+import org.apache.maven.plugins.annotations.Component;
+import org.apache.maven.plugins.annotations.Execute;
+import org.apache.maven.plugins.annotations.LifecyclePhase;
+import org.apache.maven.plugins.annotations.Mojo;
+import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.settings.Settings;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+
+@Mojo(  name = "scala",
+        defaultPhase = LifecyclePhase.GENERATE_SOURCES
+)
+@Execute(   goal = "scala",
+            phase = LifecyclePhase.GENERATE_SOURCES
+)
+public class StreamsPojoScalaMojo extends AbstractMojo {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoScalaMojo.class);
+
+    @Component
+    private MavenProject project;
+
+//    @Component
+//    private Settings settings;
+//
+//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
+//    protected ArtifactRepository localRepository;
+//
+//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
+//    private PluginDescriptor plugin;
+//
+    @Parameter( defaultValue = "${project.basedir}", readonly = true )
+    private File basedir;
+
+    @Parameter(defaultValue = "${project.build.directory}", readonly = true)
+    private File target;
+
+    @Parameter(defaultValue = "org.apache.streams.pojo.json", readonly = true)
+    private String packages;
+
+    public void execute() throws MojoExecutionException {
+        StreamsPojoScala streamsPojoScala = new StreamsPojoScala(this);
+        Thread thread = new Thread(streamsPojoScala);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+        return;
+    }
+
+    public File getTarget() {
+        return target;
+    }
+
+    public String getPackages() {
+        return packages;
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/61f2736a/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsPojoScalaTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsPojoScalaTest.java b/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsPojoScalaTest.java
new file mode 100644
index 0000000..4e5e7e3
--- /dev/null
+++ b/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsPojoScalaTest.java
@@ -0,0 +1,55 @@
+package org.apache.streams.plugins.test;
+
+import org.apache.streams.plugins.StreamsPojoScala;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.io.FileFilter;
+
+/**
+ * Test that Activity beans are compatible with the example activities in the spec.
+ */
+public class StreamsPojoScalaTest {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoScalaTest.class);
+
+    /**
+     * Tests that all example activities can be loaded into Activity beans
+     *
+     * @throws Exception
+     */
+    @Test
+    public void testDetectPojoScala() throws Exception {
+        StreamsPojoScala streamsPojoScala = new StreamsPojoScala();
+        streamsPojoScala.main(new String[0]);
+
+        File testOutput = new File( "./target/generated-sources/scala/org/apache/streams/scala");
+        FileFilter scalaFilter = new FileFilter() {
+            @Override
+            public boolean accept(File pathname) {
+                if( pathname.getName().endsWith(".scala") )
+                    return true;
+                return false;
+            }
+        };
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+        assert( testOutput.listFiles(scalaFilter).length == 11 );
+        assert( new File(testOutput + "/traits").exists() == true );
+        assert( new File(testOutput + "/traits").isDirectory() == true );
+        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
+        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
+        assert( new File(testOutput + "/objectTypes").exists() == true );
+        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
+        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
+        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
+        assert( new File(testOutput + "/verbs").exists() == true );
+        assert( new File(testOutput + "/verbs").isDirectory() == true );
+        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
+        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/61f2736a/streams-plugins/streams-plugin-scala/src/test/resources/streams-plugin-scala/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/test/resources/streams-plugin-scala/pom.xml b/streams-plugins/streams-plugin-scala/src/test/resources/streams-plugin-scala/pom.xml
new file mode 100644
index 0000000..b4867a0
--- /dev/null
+++ b/streams-plugins/streams-plugin-scala/src/test/resources/streams-plugin-scala/pom.xml
@@ -0,0 +1,40 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>org.apache.streams.plugins</groupId>
+    <artifactId>streams-plugin-scala-test</artifactId>
+    <version>0.3-incubating-SNAPSHOT</version>
+    <packaging>jar</packaging>
+    <name>Test StreamsPojoScalaMojo</name>
+
+    <dependencies>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.streams.plugins</groupId>
+                <artifactId>streams-plugin-scala</artifactId>
+                <version>0.3-incubating-SNAPSHOT</version>
+                <configuration>
+                    <packages>org.apache.streams.pojo.json</packages>
+                    <target>target/test-classes/streams-scala-plugin/</target>
+                </configuration>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>scala</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
\ No newline at end of file


[40/53] [abbrv] incubator-streams git commit: version bump

Posted by mf...@apache.org.
version bump


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/18a29b00
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/18a29b00
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/18a29b00

Branch: refs/heads/invalid_headers
Commit: 18a29b0079f68eaae008e4eabcc5929e124dc63b
Parents: abc58b4
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Wed Oct 12 12:27:44 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Oct 12 12:27:44 2016 -0500

----------------------------------------------------------------------
 streams-plugins/pom.xml                                       | 2 +-
 streams-plugins/streams-plugin-scala/pom.xml                  | 7 +++++--
 .../src/test/resources/streams-plugin-scala/pom.xml           | 4 ++--
 streams-pojo/pom.xml                                          | 2 +-
 4 files changed, 9 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/18a29b00/streams-plugins/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/pom.xml b/streams-plugins/pom.xml
index f2c8999..c79e5c2 100644
--- a/streams-plugins/pom.xml
+++ b/streams-plugins/pom.xml
@@ -22,7 +22,7 @@
     <parent>
         <artifactId>streams-project</artifactId>
         <groupId>org.apache.streams</groupId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.4-incubating-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/18a29b00/streams-plugins/streams-plugin-scala/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/pom.xml b/streams-plugins/streams-plugin-scala/pom.xml
index 3988142..1e50141 100644
--- a/streams-plugins/streams-plugin-scala/pom.xml
+++ b/streams-plugins/streams-plugin-scala/pom.xml
@@ -21,13 +21,13 @@
     <modelVersion>4.0.0</modelVersion>
     <groupId>org.apache.streams.plugins</groupId>
     <artifactId>streams-plugin-scala</artifactId>
-    <version>0.3-incubating-SNAPSHOT</version>
+    <version>0.4-incubating-SNAPSHOT</version>
     <packaging>maven-plugin</packaging>
 
     <parent>
         <groupId>org.apache.streams</groupId>
         <artifactId>streams-plugins</artifactId>
-        <version>0.3-incubating-SNAPSHOT</version>
+        <version>0.4-incubating-SNAPSHOT</version>
     </parent>
 
     <dependencies>
@@ -248,6 +248,9 @@
                         </configuration>
                     </execution>
                 </executions>
+                <configuration>
+                    <scalaVersion>${scala.version}</scalaVersion>
+                </configuration>
             </plugin>
         </plugins>
     </build>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/18a29b00/streams-plugins/streams-plugin-scala/src/test/resources/streams-plugin-scala/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/test/resources/streams-plugin-scala/pom.xml b/streams-plugins/streams-plugin-scala/src/test/resources/streams-plugin-scala/pom.xml
index b4867a0..3179e95 100644
--- a/streams-plugins/streams-plugin-scala/src/test/resources/streams-plugin-scala/pom.xml
+++ b/streams-plugins/streams-plugin-scala/src/test/resources/streams-plugin-scala/pom.xml
@@ -5,7 +5,7 @@
 
     <groupId>org.apache.streams.plugins</groupId>
     <artifactId>streams-plugin-scala-test</artifactId>
-    <version>0.3-incubating-SNAPSHOT</version>
+    <version>0.4-incubating-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>Test StreamsPojoScalaMojo</name>
 
@@ -22,7 +22,7 @@
             <plugin>
                 <groupId>org.apache.streams.plugins</groupId>
                 <artifactId>streams-plugin-scala</artifactId>
-                <version>0.3-incubating-SNAPSHOT</version>
+                <version>0.4-incubating-SNAPSHOT</version>
                 <configuration>
                     <packages>org.apache.streams.pojo.json</packages>
                     <target>target/test-classes/streams-scala-plugin/</target>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/18a29b00/streams-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-pojo/pom.xml b/streams-pojo/pom.xml
index eab4b59..e3f5d3f 100644
--- a/streams-pojo/pom.xml
+++ b/streams-pojo/pom.xml
@@ -64,7 +64,7 @@
 
         <dependency>
             <groupId>com.fasterxml.jackson.module</groupId>
-            <artifactId>jackson-module-scala_2.10</artifactId>
+            <artifactId>jackson-module-scala_${scala.suffix}</artifactId>
         </dependency>
 
         <dependency>


[19/53] [abbrv] incubator-streams git commit: WIP for apachecon

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-elasticsearch/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/pom.xml b/streams-plugins/streams-plugin-elasticsearch/pom.xml
new file mode 100644
index 0000000..4f0ed4a
--- /dev/null
+++ b/streams-plugins/streams-plugin-elasticsearch/pom.xml
@@ -0,0 +1,245 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.streams.plugins</groupId>
+    <artifactId>streams-plugin-elasticsearch</artifactId>
+    <version>0.3-incubating-SNAPSHOT</version>
+    <packaging>maven-plugin</packaging>
+
+    <parent>
+        <groupId>org.apache.streams</groupId>
+        <artifactId>streams-plugins</artifactId>
+        <version>0.3-incubating-SNAPSHOT</version>
+        <relativePath>..</relativePath>
+    </parent>
+
+    <properties>
+        <elasticsearch.version>2.3.0</elasticsearch.version>
+        <lucene.version>5.4.0</lucene.version>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-config</artifactId>
+            <version>${project.version}</version>
+            <exclusions>
+                <exclusion>
+                    <artifactId>commons-logging</artifactId>
+                    <groupId>commons-logging</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-core</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schemas</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.google.guava</groupId>
+            <artifactId>guava</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.reflections</groupId>
+            <artifactId>reflections</artifactId>
+            <version>0.9.9</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-aether-provider</artifactId>
+            <version>3.3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-artifact</artifactId>
+            <version>3.3.3</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-compat</artifactId>
+            <version>3.3.3</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-core</artifactId>
+            <version>3.3.3</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.sonatype.aether</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-plugin-api</artifactId>
+            <version>3.3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-resources-plugin</artifactId>
+            <version>2.7</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.maven</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.shared</groupId>
+            <artifactId>maven-verifier</artifactId>
+            <version>1.6</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.codehaus.plexus</groupId>
+            <artifactId>plexus-utils</artifactId>
+            <version>3.0.15</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-plugin-plugin</artifactId>
+            <version>3.4</version>
+            <exclusions>
+                <exclusion>
+                    <artifactId>commons-logging</artifactId>
+                    <groupId>commons-logging</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-tools-api</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-annotations</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-tools-generators</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-testing</groupId>
+            <artifactId>maven-plugin-testing-harness</artifactId>
+            <version>3.3.0</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-lang</groupId>
+            <artifactId>commons-lang</artifactId>
+            <version>2.6</version>
+        </dependency>
+        <dependency>
+            <groupId>joda-time</groupId>
+            <artifactId>joda-time</artifactId>
+            <version>2.2</version>
+        </dependency>
+        <dependency>
+            <groupId>org.joda</groupId>
+            <artifactId>joda-convert</artifactId>
+            <version>1.8.1</version>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <sourceDirectory>src/main/java</sourceDirectory>
+        <testSourceDirectory>src/test/java</testSourceDirectory>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+            </resource>
+        </resources>
+        <testResources>
+            <testResource>
+                <directory>src/test/resources</directory>
+            </testResource>
+        </testResources>
+        <plugins>
+            <plugin>
+                <artifactId>maven-plugin-plugin</artifactId>
+                <version>3.4</version>
+                <configuration>
+                    <skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>mojo-descriptor</id>
+                        <phase>process-classes</phase>
+                        <goals>
+                            <goal>descriptor</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.reflections</groupId>
+                <artifactId>reflections-maven</artifactId>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>reflections</goal>
+                        </goals>
+                        <phase>process-classes</phase>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>2.4</version>
+                <executions>
+                    <execution>
+                        <id>resource-dependencies</id>
+                        <phase>process-test-resources</phase>
+                        <goals>
+                            <goal>unpack-dependencies</goal>
+                        </goals>
+                        <configuration>
+                            <includeGroupIds>org.apache.streams</includeGroupIds>
+                            <includeArtifactIds>streams-schemas</includeArtifactIds>
+                            <includes>**/*.json</includes>
+                            <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+
+        </plugins>
+    </build>
+
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java
new file mode 100644
index 0000000..ef5b9ef
--- /dev/null
+++ b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchGenerationConfig.java
@@ -0,0 +1,81 @@
+package org.apache.streams.plugins.elasticsearch;
+
+import org.apache.streams.schema.GenerationConfig;
+import org.jsonschema2pojo.DefaultGenerationConfig;
+import org.jsonschema2pojo.util.URLUtil;
+
+import java.io.File;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+/**
+ * Configures StreamsElasticsearchResourceGenerator
+ *
+ *
+ */
+public class StreamsElasticsearchGenerationConfig extends DefaultGenerationConfig implements GenerationConfig {
+
+    public String getSourceDirectory() {
+        return sourceDirectory;
+    }
+
+    public List<String> getSourcePaths() {
+        return sourcePaths;
+    }
+
+    private String sourceDirectory;
+    private List<String> sourcePaths = new ArrayList<String>();
+    private String targetDirectory;
+    private int maxDepth = 1;
+
+    public Set<String> getExclusions() {
+        return exclusions;
+    }
+
+    public void setExclusions(Set<String> exclusions) {
+        this.exclusions = exclusions;
+    }
+
+    private Set<String> exclusions = new HashSet<String>();
+
+    public int getMaxDepth() {
+        return maxDepth;
+    }
+
+    public void setSourceDirectory(String sourceDirectory) {
+        this.sourceDirectory = sourceDirectory;
+    }
+
+    public void setSourcePaths(List<String> sourcePaths) {
+        this.sourcePaths = sourcePaths;
+    }
+
+    public void setTargetDirectory(String targetDirectory) {
+        this.targetDirectory = targetDirectory;
+    }
+
+    public File getTargetDirectory() {
+        return new File(targetDirectory);
+    }
+
+    public Iterator<URL> getSource() {
+        if (null != sourceDirectory) {
+            return Collections.singleton(URLUtil.parseURL(sourceDirectory)).iterator();
+        }
+        List<URL> sourceURLs = new ArrayList<URL>();
+        if( sourcePaths != null && sourcePaths.size() > 0)
+            for (String source : sourcePaths) {
+                sourceURLs.add(URLUtil.parseURL(source));
+            }
+        return sourceURLs.iterator();
+    }
+
+    public void setMaxDepth(int maxDepth) {
+        this.maxDepth = maxDepth;
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java
new file mode 100644
index 0000000..0f506ca
--- /dev/null
+++ b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGenerator.java
@@ -0,0 +1,373 @@
+package org.apache.streams.plugins.elasticsearch;
+
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.google.common.base.Joiner;
+import com.google.common.base.Optional;
+import com.google.common.base.Preconditions;
+import com.google.common.base.Strings;
+import com.google.common.collect.Lists;
+import org.apache.streams.schema.FieldType;
+import org.apache.streams.schema.FieldUtil;
+import org.apache.streams.schema.GenerationConfig;
+import org.apache.streams.schema.Schema;
+import org.apache.streams.schema.SchemaStore;
+import org.jsonschema2pojo.util.URLUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URL;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+
+import static com.google.common.base.Preconditions.checkNotNull;
+import static org.apache.streams.schema.FileUtil.dropExtension;
+import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
+import static org.apache.streams.schema.FileUtil.resolveRecursive;
+import static org.apache.streams.schema.FileUtil.writeFile;
+
+/**
+ * Created by sblackmon on 5/3/16.
+ */
+public class StreamsElasticsearchResourceGenerator implements Runnable {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsElasticsearchResourceGenerator.class);
+
+    private final static String LS = System.getProperty("line.separator");
+
+    private StreamsElasticsearchGenerationConfig config;
+
+    private SchemaStore schemaStore = new SchemaStore();
+
+    private int currentDepth = 0;
+
+    public void main(String[] args) {
+        StreamsElasticsearchGenerationConfig config = new StreamsElasticsearchGenerationConfig();
+
+        String sourceDirectory = "target/test-classes/activities";
+        String targetDirectory = "target/generated-resources/streams-plugin-elasticsearch";
+
+        if( args.length > 0 )
+            sourceDirectory = args[0];
+        if( args.length > 1 )
+            targetDirectory = args[1];
+
+        config.setSourceDirectory(sourceDirectory);
+        config.setTargetDirectory(targetDirectory);
+
+        StreamsElasticsearchResourceGenerator StreamsElasticsearchResourceGenerator = new StreamsElasticsearchResourceGenerator(config);
+        Thread thread = new Thread(StreamsElasticsearchResourceGenerator);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+        return;
+    }
+
+    public StreamsElasticsearchResourceGenerator(StreamsElasticsearchGenerationConfig config) {
+        this.config = config;
+    }
+
+    public void run() {
+
+        checkNotNull(config);
+
+        generate(config);
+
+    }
+
+    public void generate(StreamsElasticsearchGenerationConfig config) {
+
+        LinkedList<File> sourceFiles = new LinkedList<File>();
+
+        for (Iterator<URL> sources = config.getSource(); sources.hasNext();) {
+            URL source = sources.next();
+            sourceFiles.add(URLUtil.getFileFromURL(source));
+        }
+
+        LOGGER.info("Seeded with {} source paths:", sourceFiles.size());
+
+        resolveRecursive((GenerationConfig)config, sourceFiles);
+
+        LOGGER.info("Resolved {} schema files:", sourceFiles.size());
+
+        for (Iterator<File> iterator = sourceFiles.iterator(); iterator.hasNext();) {
+            File item = iterator.next();
+            schemaStore.create(item.toURI());
+        }
+
+        LOGGER.info("Identified {} objects:", schemaStore.getSize());
+
+        String outputFile = config.getTargetDirectory() + "/" + "types.cql";
+        StringBuilder typesContent = new StringBuilder();
+
+        for (Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator(); schemaIterator.hasNext(); ) {
+            Schema schema = schemaIterator.next();
+            currentDepth = 0;
+            if( schema.getURI().getScheme().equals("file")) {
+                String inputFile = schema.getURI().getPath();
+                String resourcePath = dropSourcePathPrefix(inputFile, config.getSourceDirectory());
+                for (String sourcePath : config.getSourcePaths()) {
+                    resourcePath = dropSourcePathPrefix(resourcePath, sourcePath);
+                }
+
+                LOGGER.info("Processing {}:", resourcePath);
+
+                String resourceId = schemaSymbol(schema);
+
+                String resourceContent = generateResource(schema, resourceId);
+
+                typesContent.append(resourceContent);
+
+                LOGGER.info("Added {}:", resourceId);
+            }
+        }
+
+        writeFile(outputFile, typesContent.toString());
+
+    }
+
+    public String generateResource(Schema schema, String resourceId) {
+        StringBuilder resourceBuilder = new StringBuilder();
+        resourceBuilder.append("CREATE TYPE ");
+        resourceBuilder.append(resourceId);
+        resourceBuilder.append(" IF NOT EXISTS (");
+        resourceBuilder.append(LS);
+        resourceBuilder = appendRootObject(resourceBuilder, schema, resourceId, ' ');
+        resourceBuilder.append(");");
+        resourceBuilder.append(LS);
+        return resourceBuilder.toString();
+    }
+
+    public StringBuilder appendRootObject(StringBuilder builder, Schema schema, String resourceId, Character seperator) {
+        ObjectNode propertiesNode = schemaStore.resolveProperties(schema, null, resourceId);
+        if( propertiesNode.get("id") != null ) {
+            builder.append("id text PRIMARY KEY,");
+            builder.append(LS);
+            propertiesNode.remove("id");
+        }
+        if( propertiesNode != null && propertiesNode.isObject() && propertiesNode.size() > 0) {
+            builder = appendPropertiesNode(builder, schema, propertiesNode, seperator);
+        }
+        return builder;
+    }
+
+    private StringBuilder appendValueField(StringBuilder builder, Schema schema, String fieldId, FieldType fieldType, Character seperator) {
+        // safe to append nothing
+        checkNotNull(builder);
+        builder.append(cqlEscape(fieldId));
+        builder.append(seperator);
+        builder.append(cqlType(fieldType));
+        return builder;
+    }
+
+    public StringBuilder appendArrayItems(StringBuilder builder, Schema schema, String fieldId, ObjectNode itemsNode, Character seperator) {
+        // not safe to append nothing
+        checkNotNull(builder);
+        if( itemsNode == null ) return builder;
+        if( itemsNode.has("type")) {
+            try {
+                FieldType itemType = FieldUtil.determineFieldType(itemsNode);
+                switch( itemType ) {
+                    case OBJECT:
+                        Schema objectSchema = null;
+                        URI parentURI = null;
+                        if( itemsNode.has("$ref") || itemsNode.has("extends") ) {
+                            JsonNode refNode = itemsNode.get("$ref");
+                            JsonNode extendsNode = itemsNode.get("extends");
+                            if (refNode != null && refNode.isValueNode())
+                                parentURI = URI.create(refNode.asText());
+                            else if (extendsNode != null && extendsNode.isObject())
+                                parentURI = URI.create(extendsNode.get("$ref").asText());
+                            URI absoluteURI;
+                            if (parentURI.isAbsolute())
+                                absoluteURI = parentURI;
+                            else {
+                                absoluteURI = schema.getURI().resolve(parentURI);
+                                if (!absoluteURI.isAbsolute() || (absoluteURI.isAbsolute() && !schemaStore.getByUri(absoluteURI).isPresent() ))
+                                    absoluteURI = schema.getParentURI().resolve(parentURI);
+                            }
+                            if (absoluteURI != null && absoluteURI.isAbsolute()) {
+                                Optional<Schema> schemaLookup = schemaStore.getByUri(absoluteURI);
+                                if (schemaLookup.isPresent()) {
+                                    objectSchema = schemaLookup.get();
+                                }
+                            }
+                        }
+                        // have to resolve schema here
+
+                        builder = appendArrayObject(builder, objectSchema, fieldId, seperator);
+                        break;
+                    case ARRAY:
+                        ObjectNode subArrayItems = (ObjectNode) itemsNode.get("items");
+                        builder = appendArrayItems(builder, schema, fieldId, subArrayItems, seperator);
+                        break;
+                    default:
+                        builder = appendArrayField(builder, schema, fieldId, itemType, seperator);
+                }
+            } catch (Exception e) {
+                LOGGER.warn("No item type resolvable for {}", fieldId);
+            }
+        }
+        checkNotNull(builder);
+        return builder;
+    }
+
+    private StringBuilder appendArrayField(StringBuilder builder, Schema schema, String fieldId, FieldType fieldType, Character seperator) {
+        // safe to append nothing
+        checkNotNull(builder);
+        checkNotNull(fieldId);
+        builder.append(cqlEscape(fieldId));
+        builder.append(seperator);
+        builder.append("list<"+cqlType(fieldType)+">");
+        checkNotNull(builder);
+        return builder;
+    }
+
+    private StringBuilder appendArrayObject(StringBuilder builder, Schema schema, String fieldId, Character seperator) {
+        // safe to append nothing
+        checkNotNull(builder);
+        String schemaSymbol = schemaSymbol(schema);
+        if( !Strings.isNullOrEmpty(fieldId) && schemaSymbol != null ) {
+            builder.append(cqlEscape(fieldId));
+            builder.append(seperator);
+            builder.append("list<" + schemaSymbol + ">");
+            builder.append(LS);
+        }
+        checkNotNull(builder);
+        return builder;
+    }
+
+    private StringBuilder appendSchemaField(StringBuilder builder, Schema schema, String fieldId, Character seperator) {
+        // safe to append nothing
+        checkNotNull(builder);
+        String schemaSymbol = schemaSymbol(schema);
+        if( !Strings.isNullOrEmpty(fieldId) && schemaSymbol != null ) {
+            builder.append(cqlEscape(fieldId));
+            builder.append(seperator);
+            builder.append(schemaSymbol);
+        }
+        checkNotNull(builder);
+        return builder;
+    }
+
+    /*
+     can this be moved to streams-schemas if schemastore available in scope?
+     maybe an interface?
+     lot of boilerplate / reuse between plugins
+     however treatment is way different when resolving a type symbol vs resolving and listing fields .
+     */
+    private StringBuilder appendPropertiesNode(StringBuilder builder, Schema schema, ObjectNode propertiesNode, Character seperator) {
+        checkNotNull(builder);
+        checkNotNull(propertiesNode);
+        Iterator<Map.Entry<String, JsonNode>> fields = propertiesNode.fields();
+        Joiner joiner = Joiner.on(","+LS).skipNulls();
+        List<String> fieldStrings = Lists.newArrayList();
+        for( ; fields.hasNext(); ) {
+            Map.Entry<String, JsonNode> field = fields.next();
+            String fieldId = field.getKey();
+            if( !config.getExclusions().contains(fieldId) && field.getValue().isObject()) {
+                ObjectNode fieldNode = (ObjectNode) field.getValue();
+                FieldType fieldType = FieldUtil.determineFieldType(fieldNode);
+                if (fieldType != null ) {
+                    switch (fieldType) {
+                        case ARRAY:
+                            ObjectNode itemsNode = (ObjectNode) fieldNode.get("items");
+                            if( currentDepth <= config.getMaxDepth()) {
+                                StringBuilder arrayItemsBuilder = appendArrayItems(new StringBuilder(), schema, fieldId, itemsNode, seperator);
+                                if( !Strings.isNullOrEmpty(arrayItemsBuilder.toString())) {
+                                    fieldStrings.add(arrayItemsBuilder.toString());
+                                }
+                            }
+                            break;
+                        case OBJECT:
+                            Schema objectSchema = null;
+                            URI parentURI = null;
+                            if( fieldNode.has("$ref") || fieldNode.has("extends") ) {
+                                JsonNode refNode = fieldNode.get("$ref");
+                                JsonNode extendsNode = fieldNode.get("extends");
+                                if (refNode != null && refNode.isValueNode())
+                                    parentURI = URI.create(refNode.asText());
+                                else if (extendsNode != null && extendsNode.isObject())
+                                    parentURI = URI.create(extendsNode.get("$ref").asText());
+                                URI absoluteURI;
+                                if (parentURI.isAbsolute())
+                                    absoluteURI = parentURI;
+                                else {
+                                    absoluteURI = schema.getURI().resolve(parentURI);
+                                    if (!absoluteURI.isAbsolute() || (absoluteURI.isAbsolute() && !schemaStore.getByUri(absoluteURI).isPresent() ))
+                                        absoluteURI = schema.getParentURI().resolve(parentURI);
+                                }
+                                if (absoluteURI != null && absoluteURI.isAbsolute()) {
+                                    Optional<Schema> schemaLookup = schemaStore.getByUri(absoluteURI);
+                                    if (schemaLookup.isPresent()) {
+                                        objectSchema = schemaLookup.get();
+                                    }
+                                }
+                            }
+                            //ObjectNode childProperties = schemaStore.resolveProperties(schema, fieldNode, fieldId);
+                            if( currentDepth < config.getMaxDepth()) {
+                                StringBuilder structFieldBuilder = appendSchemaField(new StringBuilder(), objectSchema, fieldId, seperator);
+                                if( !Strings.isNullOrEmpty(structFieldBuilder.toString())) {
+                                    fieldStrings.add(structFieldBuilder.toString());
+                                }
+                            }
+                            break;
+                        default:
+                            StringBuilder valueFieldBuilder = appendValueField(new StringBuilder(), schema, fieldId, fieldType, seperator);
+                            if( !Strings.isNullOrEmpty(valueFieldBuilder.toString())) {
+                                fieldStrings.add(valueFieldBuilder.toString());
+                            }
+                    }
+                }
+            }
+        }
+        builder.append(joiner.join(fieldStrings)).append(LS);
+        Preconditions.checkNotNull(builder);
+        return builder;
+    }
+
+    private static String cqlEscape( String fieldId ) {
+        return "`"+fieldId+"`";
+    }
+
+    private static String cqlType( FieldType fieldType ) {
+        switch( fieldType ) {
+            case STRING:
+                return "text";
+            case INTEGER:
+                return "int";
+            case NUMBER:
+                return "double";
+            case OBJECT:
+                return "tuple";
+            case ARRAY:
+                return "list";
+            default:
+                return fieldType.name().toUpperCase();
+        }
+    }
+
+    private String schemaSymbol( Schema schema ) {
+        if (schema == null) return null;
+        // this needs to return whatever
+        if (schema.getURI().getScheme().equals("file")) {
+            String inputFile = schema.getURI().getPath();
+            String resourcePath = dropSourcePathPrefix(inputFile, config.getSourceDirectory());
+            for (String sourcePath : config.getSourcePaths()) {
+                resourcePath = dropSourcePathPrefix(resourcePath, sourcePath);
+            }
+            return dropExtension(resourcePath).replace("/", "_");
+        } else {
+            return "IDK";
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java
new file mode 100644
index 0000000..6969051
--- /dev/null
+++ b/streams-plugins/streams-plugin-elasticsearch/src/main/java/org/apache/streams/plugins/elasticsearch/StreamsElasticsearchResourceGeneratorMojo.java
@@ -0,0 +1,93 @@
+package org.apache.streams.plugins.elasticsearch;
+
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.MojoFailureException;
+import org.apache.maven.plugins.annotations.Component;
+import org.apache.maven.plugins.annotations.Execute;
+import org.apache.maven.plugins.annotations.LifecyclePhase;
+import org.apache.maven.plugins.annotations.Mojo;
+import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.project.MavenProject;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.util.List;
+
+@Mojo(  name = "elasticsearch",
+        defaultPhase = LifecyclePhase.GENERATE_RESOURCES
+)
+@Execute(   goal = "elasticsearch",
+            phase = LifecyclePhase.GENERATE_RESOURCES
+)
+public class StreamsElasticsearchResourceGeneratorMojo extends AbstractMojo {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsElasticsearchResourceGeneratorMojo.class);
+
+    private volatile MojoFailureException mojoFailureException;
+
+    @Component
+    private MavenProject project;
+
+//    @Component
+//    private Settings settings;
+//
+//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
+//    protected ArtifactRepository localRepository;
+//
+//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
+//    private PluginDescriptor plugin;
+//
+    @Parameter( defaultValue = "${project.basedir}", readonly = true )
+    private File basedir;
+
+    @Parameter( defaultValue = "src/main/jsonschema", readonly = true ) // Maven 3 only
+    public String sourceDirectory;
+
+    @Parameter( readonly = true ) // Maven 3 only
+    public List<String> sourcePaths;
+
+    @Parameter(defaultValue = "./target/generated-resources/streams-plugin-elasticsearch", readonly = true)
+    public String targetDirectory;
+
+    public void execute() throws MojoExecutionException, MojoFailureException {
+
+        //addProjectDependenciesToClasspath();
+
+        StreamsElasticsearchGenerationConfig config = new StreamsElasticsearchGenerationConfig();
+
+        if( sourcePaths != null && sourcePaths.size() > 0)
+            config.setSourcePaths(sourcePaths);
+        else
+            config.setSourceDirectory(sourceDirectory);
+        config.setTargetDirectory(targetDirectory);
+
+        StreamsElasticsearchResourceGenerator streamsElasticsearchResourceGenerator = new StreamsElasticsearchResourceGenerator(config);
+
+        Thread.UncaughtExceptionHandler h = new Thread.UncaughtExceptionHandler() {
+            public void uncaughtException(Thread th, Throwable ex) {
+                LOGGER.error("Exception", ex);
+                mojoFailureException = new MojoFailureException("Exception", ex);
+            }
+        };
+        Thread.setDefaultUncaughtExceptionHandler(h);
+        Thread thread = new Thread(streamsElasticsearchResourceGenerator);
+        thread.setUncaughtExceptionHandler(h);
+        try {
+            thread.start();
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+            mojoFailureException = new MojoFailureException("Exception", e);
+        }
+
+        if( mojoFailureException != null )
+            throw mojoFailureException;
+
+        return;
+    }
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-elasticsearch/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/site/markdown/index.md b/streams-plugins/streams-plugin-elasticsearch/src/site/markdown/index.md
new file mode 100644
index 0000000..9e80a3e
--- /dev/null
+++ b/streams-plugins/streams-plugin-elasticsearch/src/site/markdown/index.md
@@ -0,0 +1,22 @@
+org.apache.streams.plugins:streams-plugin-elasticsearch
+=======================================================
+
+streams-plugin-elasticsearch generates resources from json schemas to assist with indexing of json data using Elasticsearch.
+
+#### Usage
+
+Run within a module containing a src/main/jsonschema directory
+
+    mvn org.apache.streams.plugins:streams-plugin-elasticsearch:0.3-incubating-SNAPSHOT:elasticsearch
+
+Output will be placed in target/generated-resources/elasticsearch by default
+
+#### Example
+
+[streams-plugin-elasticsearch/pom.xml](streams-plugin-elasticsearch/pom.xml "streams-plugin-elasticsearch/pom.xml")
+
+#### Documentation
+
+[JavaDocs](apidocs/index.html "JavaDocs")
+
+###### Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorMojoTest.java
new file mode 100644
index 0000000..72f4675
--- /dev/null
+++ b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorMojoTest.java
@@ -0,0 +1,50 @@
+package org.apache.streams.plugins.elasticsearch.test;
+
+import com.google.common.collect.Lists;
+import junit.framework.TestCase;
+import org.apache.maven.it.Verifier;
+import org.apache.maven.it.util.ResourceExtractor;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Tests that streams-plugin-hive running via maven generates hql resources
+ */
+public class StreamsElasticsearchResourceGeneratorMojoTest extends TestCase {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsElasticsearchResourceGeneratorMojoTest.class);
+
+    protected void setUp() throws Exception
+    {
+        // required for mojo lookups to work
+        super.setUp();
+    }
+
+
+    @Test
+    public void testStreamsElasticsearchResourceGeneratorMojo() throws Exception {
+
+        File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/streams-plugin-elasticsearch" );
+
+        Verifier verifier;
+
+        verifier = new Verifier( testDir.getAbsolutePath() );
+
+        List cliOptions = new ArrayList();
+        cliOptions.add( "-N" );
+        verifier.executeGoals( Lists.<String>newArrayList(
+                "clean",
+                "dependency:unpack-dependencies",
+                "generate-resources"));
+
+        verifier.verifyErrorFreeLog();
+
+        verifier.resetStreams();
+
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java
new file mode 100644
index 0000000..20bb561
--- /dev/null
+++ b/streams-plugins/streams-plugin-elasticsearch/src/test/java/org/apache/streams/plugins/elasticsearch/test/StreamsElasticsearchResourceGeneratorTest.java
@@ -0,0 +1,139 @@
+package org.apache.streams.plugins.elasticsearch.test;
+
+import com.google.common.base.Predicate;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Sets;
+import com.google.common.io.Files;
+import org.apache.commons.io.FileUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.streams.plugins.elasticsearch.StreamsElasticsearchGenerationConfig;
+import org.apache.streams.plugins.elasticsearch.StreamsElasticsearchResourceGenerator;
+import org.junit.Assert;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.annotation.Nullable;
+import java.io.File;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.Collection;
+import java.util.Iterator;
+
+import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
+
+/**
+ * Test that Elasticsearch resources are generated.
+ */
+public class StreamsElasticsearchResourceGeneratorTest {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsElasticsearchResourceGeneratorTest.class);
+
+    /**
+     * Test that Elasticsearch resources are generated
+     *
+     * @throws Exception
+     */
+    @Test
+    public void StreamsElasticsearchResourceGenerator() throws Exception {
+
+        StreamsElasticsearchGenerationConfig config = new StreamsElasticsearchGenerationConfig();
+
+        String sourceDirectory = "target/test-classes/streams-schemas";
+
+        config.setSourceDirectory(sourceDirectory);
+
+        config.setTargetDirectory("target/generated-sources/test");
+
+        config.setExclusions(Sets.newHashSet("attachments"));
+
+        config.setMaxDepth(2);
+
+        StreamsElasticsearchResourceGenerator streamsElasticsearchResourceGenerator = new StreamsElasticsearchResourceGenerator(config);
+        Thread thread = new Thread(streamsElasticsearchResourceGenerator);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+
+        File testOutput = new File( "./target/generated-sources/test");
+        Predicate<File> jsonFilter = new Predicate<File>() {
+            @Override
+            public boolean apply(@Nullable File file) {
+                if( file.getName().endsWith(".json") )
+                    return true;
+                else return false;
+            }
+        };
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(jsonFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() == 133 );
+
+        String expectedDirectory = "target/test-classes/expected";
+        File testExpected = new File( expectedDirectory );
+
+        Iterable<File> expectedIterator = Files.fileTreeTraverser().breadthFirstTraversal(testExpected)
+                .filter(jsonFilter);
+        Collection<File> expectedCollection = Lists.newArrayList(expectedIterator);
+
+        int fails = 0;
+
+        Iterator<File> iterator = expectedCollection.iterator();
+        while( iterator.hasNext() ) {
+            File objectExpected = iterator.next();
+            String expectedEnd = dropSourcePathPrefix(objectExpected.getAbsolutePath(),  expectedDirectory);
+            File objectActual = new File(config.getTargetDirectory() + "/" + expectedEnd);
+            LOGGER.info("Comparing: {} and {}", objectExpected.getAbsolutePath(), objectActual.getAbsolutePath());
+            assert( objectActual.exists());
+            if( FileUtils.contentEquals(objectActual, objectExpected) == true ) {
+                LOGGER.info("Exact Match!");
+            } else {
+                LOGGER.info("No Match!");
+                fails++;
+            }
+        }
+        if( fails > 0 ) {
+            LOGGER.info("Fails: {}", fails);
+            Assert.fail();
+        }
+
+//        String expectedDirectory = "target/test-classes/expected";
+//        File testExpected = new File( expectedDirectory );
+//
+//        Iterable<File> expectedIterator = Files.fileTreeTraverser().breadthFirstTraversal(testExpected)
+//                .filter(cqlFilter);
+//        Collection<File> expectedCollection = Lists.newArrayList(expectedIterator);
+//
+//        int fails = 0;
+//
+//        Iterator<File> iterator = expectedCollection.iterator();
+//        while( iterator.hasNext() ) {
+//            File objectExpected = iterator.next();
+//            String expectedEnd = dropSourcePathPrefix(objectExpected.getAbsolutePath(),  expectedDirectory);
+//            File objectActual = new File(config.getTargetDirectory() + "/" + expectedEnd);
+//            LOGGER.info("Comparing: {} and {}", objectExpected.getAbsolutePath(), objectActual.getAbsolutePath());
+//            assert( objectActual.exists());
+//            if( FileUtils.contentEquals(objectActual, objectExpected) == true ) {
+//                LOGGER.info("Exact Match!");
+//            } else {
+//                LOGGER.info("No Match!");
+//                fails++;
+//            }
+//        }
+//        if( fails > 0 ) {
+//            LOGGER.info("Fails: {}", fails);
+//            Assert.fail();
+//        }
+
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml b/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
new file mode 100644
index 0000000..2aaa037
--- /dev/null
+++ b/streams-plugins/streams-plugin-elasticsearch/src/test/resources/streams-plugin-elasticsearch/pom.xml
@@ -0,0 +1,75 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>org.apache.streams.plugins</groupId>
+    <artifactId>streams-plugin-elasticsearch-test</artifactId>
+    <version>0.3-incubating-SNAPSHOT</version>
+    <packaging>jar</packaging>
+    <name>Test StreamsElasticsearchResourceGeneratorMojo</name>
+
+    <dependencies>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>4.11</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schemas</artifactId>
+            <version>${project.version}</version>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.streams.plugins</groupId>
+                <artifactId>streams-plugin-elasticsearch</artifactId>
+                <version>0.3-incubating-SNAPSHOT</version>
+                <configuration>
+                    <sourcePaths>
+                        <sourcePath>target/test-classes/streams-schemas/activity.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/collection.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/media_link.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/object.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/objectTypes</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/verbs</sourcePath>
+                    </sourcePaths>
+                    <targetDirectory>target/generated-resources/test-mojo</targetDirectory>
+                </configuration>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>elasticsearch</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>2.10</version>
+                <configuration>
+                    <includes>**/*.json</includes>
+                    <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                    <includeGroupIds>org.apache.streams</includeGroupIds>
+                    <includeArtifactIds>streams-schemas</includeArtifactIds>
+                    <includeTypes>jar,test-jar</includeTypes>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>unpack-schemas</id>
+                        <phase>process-resources</phase>
+                        <goals>
+                            <goal>unpack-dependencies</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hbase/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/pom.xml b/streams-plugins/streams-plugin-hbase/pom.xml
new file mode 100644
index 0000000..94a0115
--- /dev/null
+++ b/streams-plugins/streams-plugin-hbase/pom.xml
@@ -0,0 +1,244 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.streams.plugins</groupId>
+    <artifactId>streams-plugin-hbase</artifactId>
+    <version>0.3-incubating-SNAPSHOT</version>
+    <packaging>maven-plugin</packaging>
+
+    <parent>
+        <groupId>org.apache.streams</groupId>
+        <artifactId>streams-plugins</artifactId>
+        <version>0.3-incubating-SNAPSHOT</version>
+        <relativePath>..</relativePath>
+    </parent>
+
+    <properties>
+        <hbase.version>3.0</hbase.version>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-config</artifactId>
+            <version>${project.version}</version>
+            <exclusions>
+                <exclusion>
+                    <artifactId>commons-logging</artifactId>
+                    <groupId>commons-logging</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-core</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schemas</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.google.guava</groupId>
+            <artifactId>guava</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.reflections</groupId>
+            <artifactId>reflections</artifactId>
+            <version>0.9.9</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-aether-provider</artifactId>
+            <version>3.3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-artifact</artifactId>
+            <version>3.3.3</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-compat</artifactId>
+            <version>3.3.3</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-core</artifactId>
+            <version>3.3.3</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.sonatype.aether</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-plugin-api</artifactId>
+            <version>3.3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.shared</groupId>
+            <artifactId>maven-verifier</artifactId>
+            <version>1.6</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-resources-plugin</artifactId>
+            <version>2.7</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.maven</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.codehaus.plexus</groupId>
+            <artifactId>plexus-utils</artifactId>
+            <version>3.0.15</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-plugin-plugin</artifactId>
+            <version>3.4</version>
+            <exclusions>
+                <exclusion>
+                    <artifactId>commons-logging</artifactId>
+                    <groupId>commons-logging</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-tools-api</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-annotations</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-tools-generators</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-testing</groupId>
+            <artifactId>maven-plugin-testing-harness</artifactId>
+            <version>3.3.0</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-lang</groupId>
+            <artifactId>commons-lang</artifactId>
+            <version>2.6</version>
+        </dependency>
+        <dependency>
+            <groupId>joda-time</groupId>
+            <artifactId>joda-time</artifactId>
+            <version>2.2</version>
+        </dependency>
+        <dependency>
+            <groupId>org.joda</groupId>
+            <artifactId>joda-convert</artifactId>
+            <version>1.8.1</version>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <sourceDirectory>src/main/java</sourceDirectory>
+        <testSourceDirectory>src/test/java</testSourceDirectory>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+            </resource>
+        </resources>
+        <testResources>
+            <testResource>
+                <directory>src/test/resources</directory>
+            </testResource>
+        </testResources>
+        <plugins>
+            <plugin>
+                <artifactId>maven-plugin-plugin</artifactId>
+                <version>3.4</version>
+                <configuration>
+                    <skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>mojo-descriptor</id>
+                        <phase>process-classes</phase>
+                        <goals>
+                            <goal>descriptor</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.reflections</groupId>
+                <artifactId>reflections-maven</artifactId>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>reflections</goal>
+                        </goals>
+                        <phase>process-classes</phase>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>2.4</version>
+                <executions>
+                    <execution>
+                        <id>resource-dependencies</id>
+                        <phase>process-test-resources</phase>
+                        <goals>
+                            <goal>unpack-dependencies</goal>
+                        </goals>
+                        <configuration>
+                            <includeGroupIds>org.apache.streams</includeGroupIds>
+                            <includeArtifactIds>streams-schemas</includeArtifactIds>
+                            <includes>**/*.json</includes>
+                            <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+
+        </plugins>
+    </build>
+
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseGenerationConfig.java b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseGenerationConfig.java
new file mode 100644
index 0000000..2612ec2
--- /dev/null
+++ b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseGenerationConfig.java
@@ -0,0 +1,90 @@
+package org.apache.streams.plugins.hbase;
+
+import org.apache.streams.schema.GenerationConfig;
+import org.jsonschema2pojo.DefaultGenerationConfig;
+import org.jsonschema2pojo.util.URLUtil;
+
+import java.io.File;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+/**
+ * Configures StreamsHiveResourceGenerator
+ *
+ *
+ */
+public class StreamsHbaseGenerationConfig extends DefaultGenerationConfig implements GenerationConfig {
+
+    public String getSourceDirectory() {
+        return sourceDirectory;
+    }
+
+    public List<String> getSourcePaths() {
+        return sourcePaths;
+    }
+
+    private String columnFamily;
+    private String sourceDirectory;
+    private List<String> sourcePaths = new ArrayList<String>();
+    private String targetDirectory;
+    private int maxDepth = 1;
+
+    public Set<String> getExclusions() {
+        return exclusions;
+    }
+
+    public void setExclusions(Set<String> exclusions) {
+        this.exclusions = exclusions;
+    }
+
+    private Set<String> exclusions = new HashSet<String>();
+
+    public int getMaxDepth() {
+        return maxDepth;
+    }
+
+    public void setSourceDirectory(String sourceDirectory) {
+        this.sourceDirectory = sourceDirectory;
+    }
+
+    public void setSourcePaths(List<String> sourcePaths) {
+        this.sourcePaths = sourcePaths;
+    }
+
+    public void setTargetDirectory(String targetDirectory) {
+        this.targetDirectory = targetDirectory;
+    }
+
+    public File getTargetDirectory() {
+        return new File(targetDirectory);
+    }
+
+    public Iterator<URL> getSource() {
+        if (null != sourceDirectory) {
+            return Collections.singleton(URLUtil.parseURL(sourceDirectory)).iterator();
+        }
+        List<URL> sourceURLs = new ArrayList<URL>();
+        if( sourcePaths != null && sourcePaths.size() > 0)
+            for (String source : sourcePaths) {
+                sourceURLs.add(URLUtil.parseURL(source));
+            }
+        return sourceURLs.iterator();
+    }
+
+    public void setMaxDepth(int maxDepth) {
+        this.maxDepth = maxDepth;
+    }
+
+    public String getColumnFamily() {
+        return columnFamily;
+    }
+
+    public void setColumnFamily(String columnFamily) {
+        this.columnFamily = columnFamily;
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGenerator.java b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGenerator.java
new file mode 100644
index 0000000..649bdd9
--- /dev/null
+++ b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGenerator.java
@@ -0,0 +1,204 @@
+package org.apache.streams.plugins.hbase;
+
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.google.common.base.Joiner;
+import com.google.common.base.Optional;
+import com.google.common.base.Preconditions;
+import com.google.common.base.Strings;
+import com.google.common.collect.Lists;
+import org.apache.streams.schema.FieldType;
+import org.apache.streams.schema.FieldUtil;
+import org.apache.streams.schema.GenerationConfig;
+import org.apache.streams.schema.Schema;
+import org.apache.streams.schema.SchemaStore;
+import org.jsonschema2pojo.util.URLUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URL;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+
+import static com.google.common.base.Preconditions.checkNotNull;
+import static org.apache.streams.schema.FileUtil.dropExtension;
+import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
+import static org.apache.streams.schema.FileUtil.resolveRecursive;
+import static org.apache.streams.schema.FileUtil.swapExtension;
+import static org.apache.streams.schema.FileUtil.writeFile;
+
+/**
+ * Created by sblackmon on 5/3/16.
+ */
+public class StreamsHbaseResourceGenerator implements Runnable {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsHbaseResourceGenerator.class);
+
+    private final static String LS = System.getProperty("line.separator");
+
+    private StreamsHbaseGenerationConfig config;
+
+    private SchemaStore schemaStore = new SchemaStore();
+
+    private int currentDepth = 0;
+
+    public static void main(String[] args) {
+        StreamsHbaseGenerationConfig config = new StreamsHbaseGenerationConfig();
+
+        String sourceDirectory = "./target/test-classes/activities";
+        String targetDirectory = "./target/generated-resources/hbase";
+
+        if( args.length > 0 )
+            sourceDirectory = args[0];
+        if( args.length > 1 )
+            targetDirectory = args[1];
+
+        config.setSourceDirectory(sourceDirectory);
+        config.setTargetDirectory(targetDirectory);
+
+        StreamsHbaseResourceGenerator StreamsHbaseResourceGenerator = new StreamsHbaseResourceGenerator(config);
+        Thread thread = new Thread(StreamsHbaseResourceGenerator);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+        return;
+    }
+
+    public StreamsHbaseResourceGenerator(StreamsHbaseGenerationConfig config) {
+        this.config = config;
+    }
+
+    public void run() {
+
+        checkNotNull(config);
+
+        generate(config);
+
+    }
+
+    public void generate(StreamsHbaseGenerationConfig config) {
+
+        LinkedList<File> sourceFiles = new LinkedList<File>();
+
+        for (Iterator<URL> sources = config.getSource(); sources.hasNext();) {
+            URL source = sources.next();
+            sourceFiles.add(URLUtil.getFileFromURL(source));
+        }
+
+        LOGGER.info("Seeded with {} source paths:", sourceFiles.size());
+
+        resolveRecursive((GenerationConfig)config, sourceFiles);
+
+        LOGGER.info("Resolved {} schema files:", sourceFiles.size());
+
+        for (Iterator<File> iterator = sourceFiles.iterator(); iterator.hasNext();) {
+            File item = iterator.next();
+            schemaStore.create(item.toURI());
+        }
+
+        LOGGER.info("Identified {} objects:", schemaStore.getSize());
+
+        for (Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator(); schemaIterator.hasNext(); ) {
+            Schema schema = schemaIterator.next();
+            currentDepth = 0;
+            if( schema.getURI().getScheme().equals("file")) {
+                String inputFile = schema.getURI().getPath();
+                String resourcePath = dropSourcePathPrefix(inputFile, config.getSourceDirectory());
+                for (String sourcePath : config.getSourcePaths()) {
+                    resourcePath = dropSourcePathPrefix(resourcePath, sourcePath);
+                }
+                String outputFile = config.getTargetDirectory() + "/" + swapExtension(resourcePath, "json", "txt");
+
+                LOGGER.info("Processing {}:", resourcePath);
+
+                String resourceId = dropExtension(resourcePath).replace("/", "_");
+
+                String resourceContent = generateResource(schema, resourceId);
+
+                writeFile(outputFile, resourceContent);
+
+                LOGGER.info("Wrote {}:", outputFile);
+            }
+        }
+
+    }
+
+    public String generateResource(Schema schema, String resourceId) {
+        StringBuilder resourceBuilder = new StringBuilder();
+        resourceBuilder.append("CREATE ");
+        resourceBuilder = appendRootObject(resourceBuilder, schema, resourceId);
+        return resourceBuilder.toString();
+    }
+
+    public StringBuilder appendRootObject(StringBuilder builder, Schema schema, String resourceId) {
+        checkNotNull(builder);
+        ObjectNode propertiesNode = schemaStore.resolveProperties(schema, null, resourceId);
+        if( propertiesNode != null && propertiesNode.isObject() && propertiesNode.size() > 0) {
+
+            List<String> fieldStrings = Lists.newArrayList();
+
+            // table
+            fieldStrings.add(hbaseEscape(schemaSymbol(schema)));
+
+            // column family
+            fieldStrings.add(hbaseEscape(schemaSymbol(schema)));
+
+            // parent column family
+            if( schema.getParent() != null )
+                fieldStrings.add(hbaseEscape(schemaSymbol(schema.getParent())));
+
+            // sub-object column families
+            if( propertiesNode != null && propertiesNode.isObject() && propertiesNode.size() > 0 ) {
+
+                Iterator<Map.Entry<String, JsonNode>> fields = propertiesNode.fields();
+                Joiner joiner = Joiner.on(", ").skipNulls();
+                for( ; fields.hasNext(); ) {
+                    Map.Entry<String, JsonNode> field = fields.next();
+                    String fieldId = field.getKey();
+                    if( !config.getExclusions().contains(fieldId) && field.getValue().isObject()) {
+                        ObjectNode fieldNode = (ObjectNode) field.getValue();
+                        FieldType fieldType = FieldUtil.determineFieldType(fieldNode);
+                        if (fieldType != null ) {
+                            switch (fieldType) {
+                                case OBJECT:
+                                    fieldStrings.add(hbaseEscape(fieldId));
+                            }
+                        }
+                    }
+                }
+                builder.append(joiner.join(fieldStrings));
+
+            }
+        }
+        checkNotNull(builder);
+        return builder;
+    }
+
+    private static String hbaseEscape( String fieldId ) {
+        return "'"+fieldId+"'";
+    }
+
+    private String schemaSymbol( Schema schema ) {
+        if (schema == null) return null;
+        if (schema.getURI().getScheme().equals("file")) {
+            String inputFile = schema.getURI().getPath();
+            String resourcePath = dropSourcePathPrefix(inputFile, config.getSourceDirectory());
+            for (String sourcePath : config.getSourcePaths()) {
+                resourcePath = dropSourcePathPrefix(resourcePath, sourcePath);
+            }
+            return dropExtension(resourcePath).replace("/", "_");
+        } else {
+            return "IDK";
+        }
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGeneratorMojo.java b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGeneratorMojo.java
new file mode 100644
index 0000000..0db68f0
--- /dev/null
+++ b/streams-plugins/streams-plugin-hbase/src/main/java/org/apache/streams/plugins/hbase/StreamsHbaseResourceGeneratorMojo.java
@@ -0,0 +1,93 @@
+package org.apache.streams.plugins.hbase;
+
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.MojoFailureException;
+import org.apache.maven.plugins.annotations.Component;
+import org.apache.maven.plugins.annotations.Execute;
+import org.apache.maven.plugins.annotations.LifecyclePhase;
+import org.apache.maven.plugins.annotations.Mojo;
+import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.project.MavenProject;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.util.List;
+
+@Mojo(  name = "hbase",
+        defaultPhase = LifecyclePhase.GENERATE_RESOURCES
+)
+@Execute(   goal = "hbase",
+            phase = LifecyclePhase.GENERATE_RESOURCES
+)
+public class StreamsHbaseResourceGeneratorMojo extends AbstractMojo {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsHbaseResourceGeneratorMojo.class);
+
+    private volatile MojoFailureException mojoFailureException;
+
+    @Component
+    private MavenProject project;
+
+//    @Component
+//    private Settings settings;
+//
+//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
+//    protected ArtifactRepository localRepository;
+//
+//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
+//    private PluginDescriptor plugin;
+//
+    @Parameter( defaultValue = "${project.basedir}", readonly = true )
+    private File basedir;
+
+    @Parameter( defaultValue = "src/main/jsonschema", readonly = true ) // Maven 3 only
+    public String sourceDirectory;
+
+    @Parameter( readonly = true ) // Maven 3 only
+    public List<String> sourcePaths;
+
+    @Parameter(defaultValue = "./target/generated-resources/hbase", readonly = true)
+    public String targetDirectory;
+
+    public void execute() throws MojoExecutionException, MojoFailureException {
+
+        //addProjectDependenciesToClasspath();
+
+        StreamsHbaseGenerationConfig config = new StreamsHbaseGenerationConfig();
+
+        if( sourcePaths != null && sourcePaths.size() > 0)
+            config.setSourcePaths(sourcePaths);
+        else
+            config.setSourceDirectory(sourceDirectory);
+        config.setTargetDirectory(targetDirectory);
+
+        StreamsHbaseResourceGenerator streamsHbaseResourceGenerator = new StreamsHbaseResourceGenerator(config);
+
+        Thread.UncaughtExceptionHandler h = new Thread.UncaughtExceptionHandler() {
+            public void uncaughtException(Thread th, Throwable ex) {
+                LOGGER.error("Exception", ex);
+                mojoFailureException = new MojoFailureException("Exception", ex);
+            }
+        };
+        Thread.setDefaultUncaughtExceptionHandler(h);
+        Thread thread = new Thread(streamsHbaseResourceGenerator);
+        thread.setUncaughtExceptionHandler(h);
+        try {
+            thread.start();
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+            mojoFailureException = new MojoFailureException("Exception", e);
+        }
+
+        if( mojoFailureException != null )
+            throw mojoFailureException;
+
+        return;
+    }
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hbase/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/site/markdown/index.md b/streams-plugins/streams-plugin-hbase/src/site/markdown/index.md
new file mode 100644
index 0000000..858cb85
--- /dev/null
+++ b/streams-plugins/streams-plugin-hbase/src/site/markdown/index.md
@@ -0,0 +1,22 @@
+org.apache.streams.plugins:streams-plugin-hbase
+===============================================
+
+streams-plugin-hbase generates resources from json schemas to assist with indexing of json data using Apache HBase.
+
+#### Usage
+
+Run within a module containing a src/main/jsonschema directory
+
+    mvn org.apache.streams.plugins:streams-plugin-hbase:0.3-incubating-SNAPSHOT:hbase
+
+Output will be placed in target/generated-resources/hive by default
+
+#### Example
+
+[streams-plugin-hbase/pom.xml](streams-plugin-hbase/pom.xml "streams-plugin-hbase/pom.xml")
+
+#### Documentation
+
+[JavaDocs](apidocs/index.html "JavaDocs")
+
+###### Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorCLITest.java
new file mode 100644
index 0000000..290d601
--- /dev/null
+++ b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorCLITest.java
@@ -0,0 +1,41 @@
+package org.apache.streams.plugins.test;
+
+import com.google.common.base.Predicate;
+import com.google.common.collect.Lists;
+import com.google.common.io.Files;
+import org.apache.streams.plugins.hbase.StreamsHbaseResourceGenerator;
+import org.junit.Test;
+
+import javax.annotation.Nullable;
+import java.io.File;
+import java.util.Collection;
+import java.util.List;
+
+import static org.apache.streams.plugins.test.StreamsHbaseResourceGeneratorTest.txtFilter;
+
+/**
+ * Created by sblackmon on 5/5/16.
+ */
+public class StreamsHbaseResourceGeneratorCLITest {
+
+    @Test
+    public void testStreamsHiveResourceGeneratorCLI() throws Exception {
+
+        String sourceDirectory = "target/test-classes/streams-schemas";
+        String targetDirectory = "target/generated-resources/hbase-cli";
+
+        List<String> argsList = Lists.newArrayList(sourceDirectory, targetDirectory);
+        StreamsHbaseResourceGenerator.main(argsList.toArray(new String[0]));
+
+        File testOutput = new File(targetDirectory);
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(txtFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() == 133 );
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorMojoTest.java
new file mode 100644
index 0000000..6293021
--- /dev/null
+++ b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorMojoTest.java
@@ -0,0 +1,65 @@
+package org.apache.streams.plugins.test;
+
+import com.google.common.collect.Lists;
+import com.google.common.io.Files;
+import junit.framework.TestCase;
+import org.apache.maven.it.Verifier;
+import org.apache.maven.it.util.ResourceExtractor;
+import org.junit.Ignore;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import static org.apache.streams.plugins.test.StreamsHbaseResourceGeneratorTest.txtFilter;
+
+/**
+ * Tests that streams-plugin-hive running via maven generates hql resources
+ */
+public class StreamsHbaseResourceGeneratorMojoTest extends TestCase {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsHbaseResourceGeneratorMojoTest.class);
+
+    protected void setUp() throws Exception
+    {
+        // required for mojo lookups to work
+        super.setUp();
+    }
+
+
+    @Test
+    public void testStreamsHbaseResourceGeneratorMojo() throws Exception {
+
+        File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/streams-plugin-hbase" );
+
+        Verifier verifier;
+
+        verifier = new Verifier( testDir.getAbsolutePath() );
+
+        List cliOptions = new ArrayList();
+        cliOptions.add( "-N" );
+        verifier.executeGoals( Lists.<String>newArrayList(
+                "clean",
+                "dependency:unpack-dependencies",
+                "generate-resources"));
+
+        verifier.verifyErrorFreeLog();
+
+        verifier.resetStreams();
+
+        File testOutput = new File(testDir.getAbsolutePath() + "/target/generated-resources/test-mojo");
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(txtFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() == 133 );
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorTest.java b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorTest.java
new file mode 100644
index 0000000..02b0214
--- /dev/null
+++ b/streams-plugins/streams-plugin-hbase/src/test/java/org/apache/streams/plugins/test/StreamsHbaseResourceGeneratorTest.java
@@ -0,0 +1,125 @@
+package org.apache.streams.plugins.test;
+
+import com.google.common.base.Predicate;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Sets;
+import com.google.common.io.Files;
+import org.apache.commons.io.FileUtils;
+import org.apache.streams.plugins.hbase.StreamsHbaseGenerationConfig;
+import org.apache.streams.plugins.hbase.StreamsHbaseResourceGenerator;
+import org.junit.Assert;
+import org.junit.Ignore;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.annotation.Nullable;
+import java.io.File;
+import java.util.Collection;
+import java.util.Iterator;
+
+import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
+
+/**
+ * Test that Activity beans are compatible with the example activities in the spec.
+ */
+public class StreamsHbaseResourceGeneratorTest {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsHbaseResourceGeneratorTest.class);
+
+    public static final Predicate<File> txtFilter = new Predicate<File>() {
+        @Override
+        public boolean apply(@Nullable File file) {
+            if( file.getName().endsWith(".txt") )
+                return true;
+            else return false;
+        }
+    };
+
+    /**
+     * Tests that all example activities can be loaded into Activity beans
+     *
+     * @throws Exception
+     */
+    @Test
+    public void StreamsHbaseResourceGenerator() throws Exception {
+
+        StreamsHbaseGenerationConfig config = new StreamsHbaseGenerationConfig();
+
+        String sourceDirectory = "target/test-classes/streams-schemas";
+
+        config.setSourceDirectory(sourceDirectory);
+
+        config.setTargetDirectory("target/generated-resources/test");
+
+        config.setExclusions(Sets.newHashSet("attachments"));
+
+        config.setColumnFamily("cf");
+        config.setMaxDepth(2);
+
+        StreamsHbaseResourceGenerator streamsHbaseResourceGenerator = new StreamsHbaseResourceGenerator(config);
+        Thread thread = new Thread(streamsHbaseResourceGenerator);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+
+        File testOutput = config.getTargetDirectory();
+
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(txtFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() == 133 );
+
+        String expectedDirectory = "target/test-classes/expected";
+        File testExpected = new File( expectedDirectory );
+
+        Iterable<File> expectedIterator = Files.fileTreeTraverser().breadthFirstTraversal(testExpected)
+                .filter(txtFilter);
+        Collection<File> expectedCollection = Lists.newArrayList(expectedIterator);
+
+        int fails = 0;
+
+        Iterator<File> iterator = expectedCollection.iterator();
+        while( iterator.hasNext() ) {
+            File objectExpected = iterator.next();
+            String expectedEnd = dropSourcePathPrefix(objectExpected.getAbsolutePath(),  expectedDirectory);
+            File objectActual = new File(config.getTargetDirectory() + "/" + expectedEnd);
+            LOGGER.info("Comparing: {} and {}", objectExpected.getAbsolutePath(), objectActual.getAbsolutePath());
+            assert( objectActual.exists());
+            if( FileUtils.contentEquals(objectActual, objectExpected) == true ) {
+                LOGGER.info("Exact Match!");
+            } else {
+                LOGGER.info("No Match!");
+                fails++;
+            }
+        }
+        if( fails > 0 ) {
+            LOGGER.info("Fails: {}", fails);
+            Assert.fail();
+        }
+
+
+//        assert( new File(testOutput + "/traits").exists() == true );
+//        assert( new File(testOutput + "/traits").isDirectory() == true );
+//        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
+//        assert( new File(testOutput + "/objectTypes").exists() == true );
+//        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
+//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
+//        assert( new File(testOutput + "/verbs").exists() == true );
+//        assert( new File(testOutput + "/verbs").isDirectory() == true );
+//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
+//        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
+    }
+}
\ No newline at end of file


[31/53] [abbrv] incubator-streams git commit: resolves STREAMS-409

Posted by mf...@apache.org.
resolves STREAMS-409


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/012d383e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/012d383e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/012d383e

Branch: refs/heads/invalid_headers
Commit: 012d383ef690259cda96272676094c3ee8f223e7
Parents: a726b3c
Author: charlesmims <ch...@gmail.com>
Authored: Tue Oct 11 13:40:08 2016 -0500
Committer: charlesmims <ch...@gmail.com>
Committed: Tue Oct 11 13:40:08 2016 -0500

----------------------------------------------------------------------
 NOTICE | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/012d383e/NOTICE
----------------------------------------------------------------------
diff --git a/NOTICE b/NOTICE
index 2bb8312..1a7f648 100644
--- a/NOTICE
+++ b/NOTICE
@@ -1,5 +1,5 @@
 Apache Streams
-Copyright 2012-2015 The Apache Software Foundation
+Copyright 2012-2016 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).


[16/53] [abbrv] incubator-streams git commit: WIP for apachecon

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/join.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/join.json b/streams-schemas/src/main/jsonschema/verbs/join.json
index 78daed8..5276072 100644
--- a/streams-schemas/src/main/jsonschema/verbs/join.json
+++ b/streams-schemas/src/main/jsonschema/verbs/join.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/join.json#",
     "type": "object",
     "title": "Join",
     "description": "Indicates that the actor has become a member of the object.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/leave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/leave.json b/streams-schemas/src/main/jsonschema/verbs/leave.json
index 1ce73bc..9995099 100644
--- a/streams-schemas/src/main/jsonschema/verbs/leave.json
+++ b/streams-schemas/src/main/jsonschema/verbs/leave.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/leave.json#",
     "type": "object",
     "title": "Leave",
     "description": "Indicates that the actor has left the object. For instance, a Person leaving a Group or checking-out of a Place.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/like.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/like.json b/streams-schemas/src/main/jsonschema/verbs/like.json
index 4ac1bf7..d583305 100644
--- a/streams-schemas/src/main/jsonschema/verbs/like.json
+++ b/streams-schemas/src/main/jsonschema/verbs/like.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/like.json#",
     "type": "object",
     "title": "Like",
     "description": "Indicates that the actor marked the object as an item of special interest.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/listen.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/listen.json b/streams-schemas/src/main/jsonschema/verbs/listen.json
index 3476144..9982ac6 100644
--- a/streams-schemas/src/main/jsonschema/verbs/listen.json
+++ b/streams-schemas/src/main/jsonschema/verbs/listen.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/listen.json#",
     "type": "object",
     "title": "Listen",
     "description": "Indicates that the actor has listened to the object. This is typically only applicable for objects representing audio content, such as music, an audio-book, or a radio broadcast.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/lose.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/lose.json b/streams-schemas/src/main/jsonschema/verbs/lose.json
index 60899ba..1d959a4 100644
--- a/streams-schemas/src/main/jsonschema/verbs/lose.json
+++ b/streams-schemas/src/main/jsonschema/verbs/lose.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/lose.json#",
     "type": "object",
     "title": "Lose",
     "description": "Indicates that the actor has lost the object. For instance, if a person loses a game.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/make-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/make-friend.json b/streams-schemas/src/main/jsonschema/verbs/make-friend.json
index a6440f1..141aba7 100644
--- a/streams-schemas/src/main/jsonschema/verbs/make-friend.json
+++ b/streams-schemas/src/main/jsonschema/verbs/make-friend.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/make-friend.json#",
     "type": "object",
     "title": "Befriend",
     "description": "Indicates the creation of a friendship that is reciprocated by the object.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/open.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/open.json b/streams-schemas/src/main/jsonschema/verbs/open.json
index 0145bab..6c06529 100644
--- a/streams-schemas/src/main/jsonschema/verbs/open.json
+++ b/streams-schemas/src/main/jsonschema/verbs/open.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/open.json#",
     "type": "object",
     "title": "Open",
     "description": "Indicates that the actor has opened the object. For instance, the object could represent a ticket being tracked in an issue management system.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/play.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/play.json b/streams-schemas/src/main/jsonschema/verbs/play.json
index 3f25748..115ac11 100644
--- a/streams-schemas/src/main/jsonschema/verbs/play.json
+++ b/streams-schemas/src/main/jsonschema/verbs/play.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/play.json#",
     "type": "object",
     "title": "Play",
     "description": "Indicates that the actor spent some time enjoying the object. For example, if the object is a video this indicates that the subject watched all or part of the video.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/post.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/post.json b/streams-schemas/src/main/jsonschema/verbs/post.json
index ea1ad39..20a5feb 100644
--- a/streams-schemas/src/main/jsonschema/verbs/post.json
+++ b/streams-schemas/src/main/jsonschema/verbs/post.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/post.json#",
     "type": "object",
     "title": "Post",
     "description": "To publish an object",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/present.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/present.json b/streams-schemas/src/main/jsonschema/verbs/present.json
index bcfb1dc..0cf7154 100644
--- a/streams-schemas/src/main/jsonschema/verbs/present.json
+++ b/streams-schemas/src/main/jsonschema/verbs/present.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/present.json#",
     "type": "object",
     "title": "Present",
     "description": "Indicates that the actor has presented the object. For instance, when a person gives a presentation at a conference.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/purchase.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/purchase.json b/streams-schemas/src/main/jsonschema/verbs/purchase.json
index 303386a..e867ad9 100644
--- a/streams-schemas/src/main/jsonschema/verbs/purchase.json
+++ b/streams-schemas/src/main/jsonschema/verbs/purchase.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/purchase.json#",
     "type": "object",
     "title": "Purchase",
     "description": "Indicates that the actor has purchased the object. If a target is specified, in indicates the entity from which the object was purchased.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/qualify.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/qualify.json b/streams-schemas/src/main/jsonschema/verbs/qualify.json
index 974448f..8bc5248 100644
--- a/streams-schemas/src/main/jsonschema/verbs/qualify.json
+++ b/streams-schemas/src/main/jsonschema/verbs/qualify.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/qualify.json#",
     "type": "object",
     "title": "Qualify",
     "description": "Indicates that the actor has qualified for the object. If a target is specified, it indicates the context within which the qualification applies.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/read.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/read.json b/streams-schemas/src/main/jsonschema/verbs/read.json
index e797f41..2776a4e 100644
--- a/streams-schemas/src/main/jsonschema/verbs/read.json
+++ b/streams-schemas/src/main/jsonschema/verbs/read.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/read.json#",
     "type": "object",
     "title": "Read",
     "description": "Indicates that the actor read the object. This is typically only applicable for objects representing printed or written content, such as a book, a message or a comment.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/receive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/receive.json b/streams-schemas/src/main/jsonschema/verbs/receive.json
index 0d44aef..da88b34 100644
--- a/streams-schemas/src/main/jsonschema/verbs/receive.json
+++ b/streams-schemas/src/main/jsonschema/verbs/receive.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/receive.json#",
     "type": "object",
     "title": "Receive",
     "description": "Indicates that the actor is receiving an object. Examples include a person receiving a badge object. The object identifies the object being received.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/reject.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/reject.json b/streams-schemas/src/main/jsonschema/verbs/reject.json
index b82fac7..d8a8bb4 100644
--- a/streams-schemas/src/main/jsonschema/verbs/reject.json
+++ b/streams-schemas/src/main/jsonschema/verbs/reject.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/reject.json#",
     "type": "object",
     "title": "Reject",
     "description": "Indicates that the actor has rejected the object.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/remove-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/remove-friend.json b/streams-schemas/src/main/jsonschema/verbs/remove-friend.json
index 073441d..84f6b78 100644
--- a/streams-schemas/src/main/jsonschema/verbs/remove-friend.json
+++ b/streams-schemas/src/main/jsonschema/verbs/remove-friend.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/remove-friend.json#",
     "type": "object",
     "title": "UnFriend",
     "description": "Indicates that the actor has removed the object from the collection of friends.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/remove.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/remove.json b/streams-schemas/src/main/jsonschema/verbs/remove.json
index 5b694db..367da5d 100644
--- a/streams-schemas/src/main/jsonschema/verbs/remove.json
+++ b/streams-schemas/src/main/jsonschema/verbs/remove.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/remove.json#",
     "type": "object",
     "title": "Remove",
     "description": "Indicates that the actor has removed the object from the target.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/replace.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/replace.json b/streams-schemas/src/main/jsonschema/verbs/replace.json
index 198c8c5..418ea94 100644
--- a/streams-schemas/src/main/jsonschema/verbs/replace.json
+++ b/streams-schemas/src/main/jsonschema/verbs/replace.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/replace.json#",
     "type": "object",
     "title": "Replace",
     "description": "Indicates that the actor has replaced the target with the object.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/request-friend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/request-friend.json b/streams-schemas/src/main/jsonschema/verbs/request-friend.json
index 9e246ca..51333e2 100644
--- a/streams-schemas/src/main/jsonschema/verbs/request-friend.json
+++ b/streams-schemas/src/main/jsonschema/verbs/request-friend.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/request-friend.json#",
     "type": "object",
     "title": "RequestFriend",
     "description": "Indicates the creation of a friendship that has not yet been reciprocated by the object.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/request.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/request.json b/streams-schemas/src/main/jsonschema/verbs/request.json
index 35807f5..f15104c 100644
--- a/streams-schemas/src/main/jsonschema/verbs/request.json
+++ b/streams-schemas/src/main/jsonschema/verbs/request.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/request.json#",
     "type": "object",
     "title": "Request",
     "description": "Indicates that the actor has requested the object. If a target is specified, it indicates the entity from which the object is being requested.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/resolve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/resolve.json b/streams-schemas/src/main/jsonschema/verbs/resolve.json
index 0b71ce3..2b8365d 100644
--- a/streams-schemas/src/main/jsonschema/verbs/resolve.json
+++ b/streams-schemas/src/main/jsonschema/verbs/resolve.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/resolve.json#",
     "type": "object",
     "title": "Resolve",
     "description": "Indicates that the actor has resolved the object. For instance, the object could represent a ticket being tracked in an issue management system.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/retract.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/retract.json b/streams-schemas/src/main/jsonschema/verbs/retract.json
index ff7cbe7..8ddbcbc 100644
--- a/streams-schemas/src/main/jsonschema/verbs/retract.json
+++ b/streams-schemas/src/main/jsonschema/verbs/retract.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/retract.json#",
     "type": "object",
     "title": "Retract",
     "description": "Indicates that the actor has retracted the object. For instance, if an actor wishes to retract a previously published activity, the object would be the previously published activity that is being retracted.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/return.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/return.json b/streams-schemas/src/main/jsonschema/verbs/return.json
index 14a8cfb..40426cf 100644
--- a/streams-schemas/src/main/jsonschema/verbs/return.json
+++ b/streams-schemas/src/main/jsonschema/verbs/return.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/return.json#",
     "type": "object",
     "title": "Return",
     "description": "Indicates that the actor has returned the object. If a target is specified, it indicates the entity to which the object was returned.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/rsvp-maybe.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/rsvp-maybe.json b/streams-schemas/src/main/jsonschema/verbs/rsvp-maybe.json
index 4838406..6e9e8f5 100644
--- a/streams-schemas/src/main/jsonschema/verbs/rsvp-maybe.json
+++ b/streams-schemas/src/main/jsonschema/verbs/rsvp-maybe.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/rsvp-maybe.json#",
     "type": "object",
     "title": "Rsvp Maybe",
     "description": "To indicate that the actor may attend an event",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/rsvp-no.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/rsvp-no.json b/streams-schemas/src/main/jsonschema/verbs/rsvp-no.json
index dc36ee3..6339f1e 100644
--- a/streams-schemas/src/main/jsonschema/verbs/rsvp-no.json
+++ b/streams-schemas/src/main/jsonschema/verbs/rsvp-no.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/rsvp-no.json#",
     "type": "object",
     "title": "Rsvp No",
     "description": "To indicate that the actor will not attend an event",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/rsvp-yes.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/rsvp-yes.json b/streams-schemas/src/main/jsonschema/verbs/rsvp-yes.json
index f62141e..7fecc78 100644
--- a/streams-schemas/src/main/jsonschema/verbs/rsvp-yes.json
+++ b/streams-schemas/src/main/jsonschema/verbs/rsvp-yes.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/rsvp-yes.json#",
     "type": "object",
     "title": "Rsvp Yes",
     "description": "To indicate that the actor will attend an event",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/satisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/satisfy.json b/streams-schemas/src/main/jsonschema/verbs/satisfy.json
index a719680..9c36006 100644
--- a/streams-schemas/src/main/jsonschema/verbs/satisfy.json
+++ b/streams-schemas/src/main/jsonschema/verbs/satisfy.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/satisfy.json#",
     "type": "object",
     "title": "Satisfy",
     "description": "Indicates that the actor has satisfied the object. If a target is specified, it indicate the context within which the object was satisfied. For instance, if a person satisfies the requirements for a particular challenge, the person is the actor; the requirement is the object; and the challenge is the target.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/save.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/save.json b/streams-schemas/src/main/jsonschema/verbs/save.json
index 1bdbc4b..06ec16f 100644
--- a/streams-schemas/src/main/jsonschema/verbs/save.json
+++ b/streams-schemas/src/main/jsonschema/verbs/save.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/save.json#",
     "type": "object",
     "title": "Save",
     "description": "Indicates that the actor has called out the object as being of interest primarily to him- or herself. Though this action MAY be shared publicly, the implication is that the object has been saved primarily for the actor's own benefit rather than to show it to others as would be indicated by the \"share\" verb.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/schedule.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/schedule.json b/streams-schemas/src/main/jsonschema/verbs/schedule.json
index a9824a3..a42d955 100644
--- a/streams-schemas/src/main/jsonschema/verbs/schedule.json
+++ b/streams-schemas/src/main/jsonschema/verbs/schedule.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/schedule.json#",
     "type": "object",
     "title": "Schedule",
     "description": "Indicates that the actor has scheduled the object. For instance, scheduling a meeting.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/search.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/search.json b/streams-schemas/src/main/jsonschema/verbs/search.json
index 3263bbb..1cb8572 100644
--- a/streams-schemas/src/main/jsonschema/verbs/search.json
+++ b/streams-schemas/src/main/jsonschema/verbs/search.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/search.json#",
     "type": "object",
     "title": "Search",
     "description": "Indicates that the actor is or has searched for the object. If a target is specified, it indicates the context within which the search is or has been conducted.",
@@ -14,7 +14,7 @@
     "properties": {
         "verb": {
             "type": "string",
-            "default": "satisfy"
+            "default": "search"
         },
         "title": {
             "type": "string",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/sell.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/sell.json b/streams-schemas/src/main/jsonschema/verbs/sell.json
index 16aa351..4ec46b6 100644
--- a/streams-schemas/src/main/jsonschema/verbs/sell.json
+++ b/streams-schemas/src/main/jsonschema/verbs/sell.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/sell.json#",
     "type": "object",
     "title": "Sell",
     "description": "Indicates that the actor has sold the object. If a target is specified, it indicates the entity to which the object was sold.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/send.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/send.json b/streams-schemas/src/main/jsonschema/verbs/send.json
index ead4108..69f565c 100644
--- a/streams-schemas/src/main/jsonschema/verbs/send.json
+++ b/streams-schemas/src/main/jsonschema/verbs/send.json
@@ -4,21 +4,21 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/send.json#",
     "type": "object",
-    "title": "Share",
-    "description": "Indicates that the actor has called out the object to readers. In most cases, the actor did not create the object being shared, but is instead drawing attention to it.",
+    "title": "Send",
+    "description": "Indicates that the actor has sent the object to the target.",
     "extends": {
         "$ref": "../activity.json"
     },
     "properties": {
         "verb": {
             "type": "string",
-            "default": "share"
+            "default": "send"
         },
         "title": {
             "type": "string",
-            "default": "{actor.displayName} shared {object.displayName}"
+            "default": "{actor.displayName} sent {object.displayName}"
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/share.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/share.json b/streams-schemas/src/main/jsonschema/verbs/share.json
index 18c0aea..576f5fb 100644
--- a/streams-schemas/src/main/jsonschema/verbs/share.json
+++ b/streams-schemas/src/main/jsonschema/verbs/share.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/share.json#",
     "type": "object",
     "title": "Share",
     "description": "To share an object.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/sponsor.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/sponsor.json b/streams-schemas/src/main/jsonschema/verbs/sponsor.json
index cc6f5cf..55445b7 100644
--- a/streams-schemas/src/main/jsonschema/verbs/sponsor.json
+++ b/streams-schemas/src/main/jsonschema/verbs/sponsor.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/sponsor.json#",
     "type": "object",
     "title": "Sponsor",
     "description": "Indicates that the actor has sponsored the object. If a target is specified, it indicates the context within which the sponsorship is offered. For instance, a company can sponsor an event; or an individual can sponsor a project; etc.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/start.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/start.json b/streams-schemas/src/main/jsonschema/verbs/start.json
index 61eaf06..3e52c12 100644
--- a/streams-schemas/src/main/jsonschema/verbs/start.json
+++ b/streams-schemas/src/main/jsonschema/verbs/start.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/start.json#",
     "type": "object",
     "title": "Start",
     "description": "Indicates that the actor has started the object. For instance, when a person starts a project.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/stop-following.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/stop-following.json b/streams-schemas/src/main/jsonschema/verbs/stop-following.json
index e09317d..cd7c521 100644
--- a/streams-schemas/src/main/jsonschema/verbs/stop-following.json
+++ b/streams-schemas/src/main/jsonschema/verbs/stop-following.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/stop-following.json#",
     "type": "object",
     "title": "UnFollow",
     "description": "Indicates that the actor has stopped following the object.",
@@ -14,7 +14,7 @@
     "properties": {
         "verb": {
             "type": "string",
-            "default": "follow"
+            "default": "stop-following"
         },
         "title": {
             "type": "string",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/submit.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/submit.json b/streams-schemas/src/main/jsonschema/verbs/submit.json
index c1d25b1..58582ee 100644
--- a/streams-schemas/src/main/jsonschema/verbs/submit.json
+++ b/streams-schemas/src/main/jsonschema/verbs/submit.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/submit.json#",
     "type": "object",
     "title": "Submit",
     "description": "Indicates that the actor has submitted the object. If a target is specified, it indicates the entity to which the object was submitted.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/tag.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/tag.json b/streams-schemas/src/main/jsonschema/verbs/tag.json
index 6208eae..6ed1632 100644
--- a/streams-schemas/src/main/jsonschema/verbs/tag.json
+++ b/streams-schemas/src/main/jsonschema/verbs/tag.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/tag.json#",
     "type": "object",
     "title": "Tag",
     "description": "Indicates that the actor has associated the object with the target. For example, if the actor specifies that a particular user appears in a photo. the object is the user and the target is the photo.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/terminate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/terminate.json b/streams-schemas/src/main/jsonschema/verbs/terminate.json
index 280eb31..9a4d94c 100644
--- a/streams-schemas/src/main/jsonschema/verbs/terminate.json
+++ b/streams-schemas/src/main/jsonschema/verbs/terminate.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/terminate.json#",
     "type": "object",
     "title": "Terminate",
     "description": "Indicates that the actor has terminated the object.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/tie.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/tie.json b/streams-schemas/src/main/jsonschema/verbs/tie.json
index 7530ed2..6637fb9 100644
--- a/streams-schemas/src/main/jsonschema/verbs/tie.json
+++ b/streams-schemas/src/main/jsonschema/verbs/tie.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/tie.json#",
     "type": "object",
     "title": "Tie",
     "description": "Indicates that the actor has neither won or lost the object. This verb is generally only applicable when the object represents some form of competition, such as a game.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/unfavorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unfavorite.json b/streams-schemas/src/main/jsonschema/verbs/unfavorite.json
index bfa9c20..2b642b4 100644
--- a/streams-schemas/src/main/jsonschema/verbs/unfavorite.json
+++ b/streams-schemas/src/main/jsonschema/verbs/unfavorite.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/unfavorite.json#",
     "type": "object",
     "title": "UnFavorite",
     "description": "Indicates that the actor has removed the object from the collection of favorited items.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/unlike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unlike.json b/streams-schemas/src/main/jsonschema/verbs/unlike.json
index 4dc75f6..db0b7bc 100644
--- a/streams-schemas/src/main/jsonschema/verbs/unlike.json
+++ b/streams-schemas/src/main/jsonschema/verbs/unlike.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/unlike.json#",
     "type": "object",
     "title": "UnLike",
     "description": "Indicates that the actor has removed the object from the collection of liked items.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json b/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json
index 8ea075b..381818a 100644
--- a/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json
+++ b/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/unsatisfy.json#",
     "type": "object",
     "title": "UnSatisfy",
     "description": "Indicates that the actor has not satisfied the object. If a target is specified, it indicates the context within which the object was not satisfied. For instance, if a person fails to satisfy the requirements of some particular challenge, the person is the actor; the requirement is the object and the challenge is the target.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/unsave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unsave.json b/streams-schemas/src/main/jsonschema/verbs/unsave.json
index e45a97f..09f7123 100644
--- a/streams-schemas/src/main/jsonschema/verbs/unsave.json
+++ b/streams-schemas/src/main/jsonschema/verbs/unsave.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/unsave.json#",
     "type": "object",
     "title": "UnSave",
     "description": "Indicates that the actor has removed the object from the collection of saved items.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/unshare.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unshare.json b/streams-schemas/src/main/jsonschema/verbs/unshare.json
index 4ca924b..9aceb25 100644
--- a/streams-schemas/src/main/jsonschema/verbs/unshare.json
+++ b/streams-schemas/src/main/jsonschema/verbs/unshare.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/unshare.json#",
     "type": "object",
     "title": "UnSave",
     "description": "Indicates that the actor is no longer sharing the object. If a target is specified, it indicates the entity with whom the object is no longer being shared.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/update.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/update.json b/streams-schemas/src/main/jsonschema/verbs/update.json
index 4b143fc..4272bb4 100644
--- a/streams-schemas/src/main/jsonschema/verbs/update.json
+++ b/streams-schemas/src/main/jsonschema/verbs/update.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/update.json#",
     "type": "object",
     "title": "Update",
     "description": "The \"update\" verb indicates that the actor has modified the object. Use of the \"update\" verb is generally reserved to indicate modifications to existing objects or data such as changing an existing user's profile information.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/use.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/use.json b/streams-schemas/src/main/jsonschema/verbs/use.json
index d5a79fd..26c69a6 100644
--- a/streams-schemas/src/main/jsonschema/verbs/use.json
+++ b/streams-schemas/src/main/jsonschema/verbs/use.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/use.json#",
     "type": "object",
     "title": "Use",
     "description": "Indicates that the actor has used the object in some manner.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/watch.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/watch.json b/streams-schemas/src/main/jsonschema/verbs/watch.json
index 192d56e..08d7eb0 100644
--- a/streams-schemas/src/main/jsonschema/verbs/watch.json
+++ b/streams-schemas/src/main/jsonschema/verbs/watch.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/watch.json#",
     "type": "object",
     "title": "Watch",
     "description": "Indicates that the actor has watched the object. This verb is typically applicable only when the object represents dynamic, visible content such as a movie, a television show or a public performance.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/main/jsonschema/verbs/win.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/win.json b/streams-schemas/src/main/jsonschema/verbs/win.json
index a5bef2a..baedbaa 100644
--- a/streams-schemas/src/main/jsonschema/verbs/win.json
+++ b/streams-schemas/src/main/jsonschema/verbs/win.json
@@ -4,7 +4,7 @@
         "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
         "http://www.apache.org/licenses/LICENSE-2.0"
     ],
-    "id": "#",
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/win.json#",
     "type": "object",
     "title": "Win",
     "description": "Indicates that the actor has won the object.  For instance, if a person wins a game.",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/activity.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/activity.json b/streams-schemas/src/site/resources/activity.json
deleted file mode 100644
index 8c058a4..0000000
--- a/streams-schemas/src/site/resources/activity.json
+++ /dev/null
@@ -1,108 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "activity",
-    "javaInterfaces": ["java.io.Serializable"],
-    "description": "An activity construct recounts what an actor did to an object in the past. If there is no actor it simply describes the change.",
-    "additionalProperties": true,
-    "properties": {
-        "id": {
-            "type": "string",
-            "description": "Uniquely identifies each activity within the service",
-            "required": true
-        },
-        "actor": {
-            "type": "object",
-            "required": true,
-            "description": "Describes the entity that performed the activity. An activity MUST contain one actor property whose value is a single Object.",
-            "javaInterfaces": ["java.io.Serializable"],
-            "$ref": "./object.json"
-        },
-        "verb": {
-            "title": "verb",
-            "type": "string",
-            "default": "post",
-            "required": true,
-            "description": "Identifies the action that the activity describes. An activity MUST contain a verb property whose value is a JSON String that is non-empty and matches either the \"isegment-nz-nc\" or the \"IRI\" production in [RFC3987]. Note that the use of a relative reference other than a simple name is not allowed."
-        },
-        "object": {
-            "type": "object",
-            "required": true,
-            "description": "Describes the primary object of the activity. For instance, in the activity, \"John saved a movie to his wishlist\", the object of the activity is \"movie\". An activity SHOULD contain an object property whose value is a single Object. If the object property is not contained, the primary object of the activity MAY be implied by context.",
-            "$ref": "./object.json"
-        },
-        "target": {
-            "type": "object",
-            "description": "Describes the target of the activity. The precise meaning of the activity's target is dependent on the activities verb, but will often be the object the English preposition \"to\". For instance, in the activity, \"John saved a movie to his wishlist\", the target of the activity is \"wishlist\". The activity target MUST NOT be used to identity an indirect object that is not a target of the activity. An activity MAY contain a target property whose value is a single Object.",
-            "$ref": "./object.json"
-        },
-        "published": {
-            "type": "string",
-            "description": "The date and time at which the activity occurred. It is important to note that this is not necessarily the same as the time at which the activity was published. An activity MUST contain a postedTime property.",
-            "format": "date-time"
-        },
-        "updated": {
-            "type": "string",
-            "description": "The date and time at which a previously published activity has been modified. An Activity MAY contain an updatedTime property",
-            "format": "date-time"
-        },
-        "generator": {
-            "type": "object",
-            "description": "Describes the application that generated the activity. An activity MAY contain a generator property whose value is a single Object.",
-            "javaInterfaces": ["java.io.Serializable"],
-            "extends": {
-                "$ref": "./object.json"
-            }
-        },
-        "icon": {
-            "type": "object",
-            "javaInterfaces": ["java.io.Serializable"],
-            "properties": {
-                "$ref": "./media_link.json#properties"
-            },
-            "description": "An IRI[RFC3987] identifying an image resource provides a visual representation of the activity, intended for human consumption. The image SHOULD have an aspect ratio of one (horizontal) to one (vertical) and SHOULD be suitable for presentation at a small size. An activity MAY have an icon property"
-        },
-        "provider": {
-            "type": "object",
-            "description": "Describes the application that published the activity. Note that this is not necessarily the same entity that generated the activity. An activity MAY contain a provider property whose value is a single Object",
-            "javaInterfaces": ["java.io.Serializable"],
-            "extends": {
-                "$ref": "./object.json"
-            }
-        },
-        "title": {
-            "type": "string",
-            "description": "Natural-language title or headline for the activity encoded as a single JSON String containing HTML markup. An activity MAY contain a title property",
-            "format": "html"
-        },
-        "content": {
-            "type": "string",
-            "description": "Natural-language description of the activity encoded as a single JSON String containing HTML markup. Visual elements such as thumbnail images MAY be included. An activity MAY contain a content property",
-            "format": "html"
-        },
-        "url": {
-            "type": "string",
-            "description": "An IRI [RFC3987] identifying a resource providing an HTML representation of the activity. An activity MAY contain a url property",
-            "format": "url"
-        },
-        "links": {
-            "type": "array",
-            "description": "Links between this object and other resources as defined in Web Linking",
-            "note": "Tell JSON schema team to not put links inside http://json-schema.org/hyper-schema#properties",
-            "items": {
-                "type": "string"
-            }
-        }
-    },
-    "links": [
-        {
-            "rel": "describedby",
-            "href": "./verbs/{verb}.json"
-        }
-    ]
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/activity.xsd
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/activity.xsd b/streams-schemas/src/site/resources/activity.xsd
deleted file mode 100644
index 1d81b44..0000000
--- a/streams-schemas/src/site/resources/activity.xsd
+++ /dev/null
@@ -1,94 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<!--
-  ~ Licensed to the Apache Software Foundation (ASF) under one
-  ~ or more contributor license agreements.  See the NOTICE file
-  ~ distributed with this work for additional information
-  ~ regarding copyright ownership.  The ASF licenses this file
-  ~ to you under the Apache License, Version 2.0 (the
-  ~ "License"); you may not use this file except in compliance
-  ~
-  ~   http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing,
-  ~ software distributed under the License is distributed on an
-  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  ~ KIND, either express or implied.  See the License for the
-  ~ specific language governing permissions and limitations
-  ~ under the License.
-  -->
-
-<xs:schema version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
-
-    <xs:element name="id" type="xs:string"/>
-    <xs:element name="actor" type="objectType"/>
-    <xs:element name="verb" type="verbType"/>
-    <xs:element name="object" type="objectType"/>
-    <xs:element name="target" type="objectType"/>
-    <xs:element name="object-type" type="xs:string"/>
-    <xs:element name="published" type="xs:dateTime"/>
-    <xs:element name="updated" type="xs:dateTime"/>
-    <xs:element name="provider" type="objectType"/>
-    <xs:element name="title" type="xs:string"/>
-    <xs:element name="content" type="xs:string"/>
-    <xs:element name="url" type="xs:string"/>
-
-    <xs:simpleType name="verbType">
-        <xs:restriction base="xs:string">
-            <xs:enumeration value="favorite"/>
-            <xs:enumeration value="follow"/>
-            <xs:enumeration value="join"/>
-            <xs:enumeration value="like"/>
-            <xs:enumeration value="make-friend"/>
-            <xs:enumeration value="play"/>
-            <xs:enumeration value="post"/>
-            <xs:enumeration value="rsvp-yes"/>
-            <xs:enumeration value="rsvp-no"/>
-            <xs:enumeration value="rsvp-maybe"/>
-            <xs:enumeration value="save"/>
-            <xs:enumeration value="share"/>
-            <xs:enumeration value="tag"/>
-            <xs:enumeration value="update"/>
-        </xs:restriction>
-    </xs:simpleType>
-
-    <xs:complexType name="objectType">
-        <xs:sequence>
-            <xs:element name="id" type="xs:string"/>
-            <xs:element name="image" type="mediaLink"/>
-            <xs:element name="displayName" type="xs:string"/>
-            <xs:element name="summary" type="xs:string"/>
-            <xs:element name="content" type="xs:string"/>
-            <xs:element name="url" type="xs:string"/>
-            <xs:element name="published" type="xs:string"/>
-            <xs:element name="updated" type="xs:string"/>
-            <xs:element name="object-type" >
-                <xs:simpleType>
-                    <xs:restriction base="xs:string">
-                        <xs:enumeration value="article"/>
-                        <xs:enumeration value="audio"/>
-                        <xs:enumeration value="badge"/>
-                        <xs:enumeration value="collection"/>
-                        <xs:enumeration value="comment"/>
-                        <xs:enumeration value="course"/>
-                        <xs:enumeration value="file"/>
-                        <xs:enumeration value="image"/>
-                        <xs:enumeration value="person"/>
-                        <xs:enumeration value="review"/>
-                        <xs:enumeration value="service"/>
-                    </xs:restriction>
-                </xs:simpleType>
-            </xs:element>
-        </xs:sequence>
-
-    </xs:complexType>
-
-    <xs:complexType name="mediaLink">
-        <xs:sequence>
-            <xs:element name="duration" type="xs:positiveInteger"/>
-            <xs:element name="height" type="xs:positiveInteger"/>
-            <xs:element name="width" type="xs:positiveInteger"/>
-            <xs:element name="url" type="xs:string"/>
-        </xs:sequence>
-    </xs:complexType>
-
-</xs:schema>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/collection.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/collection.json b/streams-schemas/src/site/resources/collection.json
deleted file mode 100644
index 8173b75..0000000
--- a/streams-schemas/src/site/resources/collection.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "collection",
-    "javaInterfaces": ["java.io.Serializable"],
-    "description": "A collection is a generic list of Objects of any object type. The objectType of each item in the collection MAY be omitted if the type of object can be established through context. The collection is used primarily as the root of an Activity Streams document, but can be used as the value of extension properties in a variety of situations. ",
-    "properties": {
-        "url": {
-            "type": "string",
-            "description": "An IRI [RFC3987] referencing a JSON document containing the full listing of objects in the collection."
-        },
-        "totalItems": {
-            "type": "integer",
-            "description": "Non-negative integer specifying the total number of activities within the stream. The Stream serialization MAY contain a count property."
-        },
-        "items": {
-            "type": "array",
-            "required": true,
-            "description": "An array containing a listing of Objects of any object type. If used in combination with the url property, the items array can be used to provide a subset of the objects that may be found in the resource identified by the url.",
-            "items": {
-                "type": "object",
-                "extends": {
-                    "$ref": "./object.json"
-                }
-            }
-        },
-        "links": {
-            "type": "array",
-            "optional": true,
-            "description": "Links between an this object and other resources as defined in Web Linking",
-            "extends": {
-                "$ref": "http://json-schema.org/links#properties"
-            }
-        }
-    },
-    "links": [
-        {
-            "rel": "describedby",
-            "href": "http://json-schema.org/schema"
-        }
-    ]
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/media_link.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/media_link.json b/streams-schemas/src/site/resources/media_link.json
deleted file mode 100644
index fa55b2f..0000000
--- a/streams-schemas/src/site/resources/media_link.json
+++ /dev/null
@@ -1,34 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "media_link",
-    "javaInterfaces": ["java.io.Serializable"],
-    "description": "Visual representation of an object in the form of an image, video or embedded HTML fragments",
-    "properties": {
-        "duration": {
-            "title": "duration",
-            "type": "number",
-            "description": "A hint to the consumer about the length, in seconds, of the media resource identified by the url property. A media link MAY contain a \"duration\" property when the target resource is a time-based media item such as an audio or video."
-        },
-        "height": {
-            "title": "height",
-            "type": "integer",
-            "description": "A hint to the consumer about the height, in pixels, of the media resource identified by the url property. A media link MAY contain a height property when the target resource is a visual media item such as an image, video or embeddable HTML page."
-        },
-        "width": {
-            "title": "width",
-            "type": "integer",
-            "description": "A hint to the consumer about the width, in pixels, of the media resource identified by the url property. A media link MAY contain a width property when the target resource is a visual media item such as an image, video or embeddable HTML page."
-        },
-        "url": {
-            "type": "string",
-            "required": true,
-            "description": "The IRI of the media resource being linked. A media link MUST have a url property."
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/object.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/object.json b/streams-schemas/src/site/resources/object.json
deleted file mode 100644
index 97adc3c..0000000
--- a/streams-schemas/src/site/resources/object.json
+++ /dev/null
@@ -1,98 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "object",
-    "javaInterfaces": ["java.io.Serializable"],
-    "description": "Basic object on the web. The only required property is the id",
-    "properties": {
-        "id": {
-            "type": "string",
-            "description": "Provides a permanent, universally unique identifier for the object in the form of an absolute IRI [RFC3987]. An object SHOULD contain a single id property. If an object does not contain an id property, consumers MAY use the value of the url property as a less-reliable, non-unique identifier.",
-            "required": true
-        },
-        "image": {
-            "format": "image",
-            "type": "object",
-            "extends": {
-                "$ref": "./media_link.json"
-            },
-            "description": "Description of a resource providing a visual representation of the object, intended for human consumption. An object MAY contain an image property whose value is a Media Link."
-        },
-        "displayName": {
-            "type": "string",
-            "description": "A natural-language, human-readable and plain-text name for the object. HTML markup MUST NOT be included. An object MAY contain a displayName property. If the object does not specify an objectType property, the object SHOULD specify a displayName"
-        },
-        "summary": {
-            "type": "string",
-            "description": "Natural-language summary of the object encoded as a single JSON String containing HTML markup. Visual elements such as thumbnail images MAY be included. An activity MAY contain a summary property"
-        },
-        "content": {
-            "type": "string",
-            "description": "Natural-language description of the object encoded as a single JSON String containing HTML markup. Visual elements such as thumbnail images MAY be included. An object MAY contain a content property"
-        },
-        "url": {
-            "type": "string",
-            "format": "url",
-            "description": "An IRI [RFC3987] identifying a resource providing an HTML representation of the object. An object MAY contain a url property"
-        },
-        "objectType": {
-            "type": "string",
-            "description": "Identifies the type of object. An object MAY contain an objectType property whose value is a JSON String that is non-empty and matches either the \"isegment-nz-nc\" or the \"IRI\" production in [RFC3987]. Note that the use of a relative reference other than a simple name is not allowed. If no objectType property is contained, the object has no specific type."
-        },
-        "author": {
-            "type": "object",
-            "description": "Describes the entity that created or authored the object. An object MAY contain a single author property whose value is an Object of any type. Note that the author field identifies the entity that created the object and does not necessarily identify the entity that published the object. For instance, it may be the case that an object created by one person is posted and published to a system by an entirely different entity",
-            "javaInterfaces": ["java.io.Serializable"],
-            "extends": {
-                "$ref": "./object.json"
-            }
-        },
-        "published": {
-            "type": "string",
-            "description": "[RFC3339] date-time. The date and time at which the object was published. An object MAY contain a published property",
-            "format": "date-time"
-        },
-        "updated": {
-            "type": "string",
-            "description": "[RFC3339] date-time. The date and time at which a previously published object has been modified. An Object MAY contain an updated property.",
-            "format": "date-time"
-        },
-        "attachments": {
-            "title": "Related objects",
-            "description": "A collection of one or more additional, associated objects, similar to the concept of attached files in an email message. An object MAY have an attachedObjects property whose value is a JSON Array of Objects.",
-            "type": "array",
-            "items": {
-                "type": "object",
-                "javaType": "org.apache.streams.pojo.json.Attachment",
-                "javaInterfaces": ["java.io.Serializable"],
-                "$ref": "./object.json"
-            }
-        },
-        "upstreamDuplicates": {
-            "type": "array",
-            "description": "A JSON Array of one or more absolute IRI's [RFC3987] identifying objects that duplicate this object's content. An object SHOULD contain an upstreamDuplicates property when a publisher is knowingly duplicating with a new ID the content from another object. This MAY be used as a hint for consumers to use when resolving duplicates between objects received from different sources",
-            "items": {
-                "type": "string"
-            }
-        },
-        "downstreamDuplicates": {
-            "type": "array",
-            "description": "A JSON Array of one or more absolute IRI's [RFC3987] identifying objects that duplicate this object's content. An object SHOULD contain a downstreamDuplicates property when there are known objects, possibly in a different system, that duplicate the content in this object. This MAY be used as a hint for consumers to use when resolving duplicates between objects received from different sources.",
-            "items": {
-                "type": "string"
-            }
-        }
-    },
-    "additionalProperties": true,
-    "links": [
-        {
-            "rel": "describedby",
-            "href": "./objectType/{objectType}.json"
-        }
-    ]
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/alert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/alert.json b/streams-schemas/src/site/resources/objectTypes/alert.json
deleted file mode 100644
index 0ace5de..0000000
--- a/streams-schemas/src/site/resources/objectTypes/alert.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "alert",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "alert"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/application.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/application.json b/streams-schemas/src/site/resources/objectTypes/application.json
deleted file mode 100644
index ceb1208..0000000
--- a/streams-schemas/src/site/resources/objectTypes/application.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "application",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "application"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/article.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/article.json b/streams-schemas/src/site/resources/objectTypes/article.json
deleted file mode 100644
index 8abc7f7..0000000
--- a/streams-schemas/src/site/resources/objectTypes/article.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "article",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "article"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/audio.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/audio.json b/streams-schemas/src/site/resources/objectTypes/audio.json
deleted file mode 100644
index 92cef7f..0000000
--- a/streams-schemas/src/site/resources/objectTypes/audio.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "audio",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "audio"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/badge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/badge.json b/streams-schemas/src/site/resources/objectTypes/badge.json
deleted file mode 100644
index b743236..0000000
--- a/streams-schemas/src/site/resources/objectTypes/badge.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "badge",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "badge"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/binary.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/binary.json b/streams-schemas/src/site/resources/objectTypes/binary.json
deleted file mode 100644
index 8915633..0000000
--- a/streams-schemas/src/site/resources/objectTypes/binary.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "binary",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "binary"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/bookmark.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/bookmark.json b/streams-schemas/src/site/resources/objectTypes/bookmark.json
deleted file mode 100644
index 3d3e3f1..0000000
--- a/streams-schemas/src/site/resources/objectTypes/bookmark.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "bookmark",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "bookmark"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/comment.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/comment.json b/streams-schemas/src/site/resources/objectTypes/comment.json
deleted file mode 100644
index 90249c4..0000000
--- a/streams-schemas/src/site/resources/objectTypes/comment.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "comment",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "comment"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/device.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/device.json b/streams-schemas/src/site/resources/objectTypes/device.json
deleted file mode 100644
index faea368..0000000
--- a/streams-schemas/src/site/resources/objectTypes/device.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "device",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "device"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/event.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/event.json b/streams-schemas/src/site/resources/objectTypes/event.json
deleted file mode 100644
index 479213f..0000000
--- a/streams-schemas/src/site/resources/objectTypes/event.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "event",
-    "description": "xCal fromat for vevent",
-    "extends": [
-        {
-            "$ref": "../object.json"
-        },
-        {
-            "$ref": "http://www.json-schema.org/calendar"
-        }
-    ],
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "event"
-        },
-        "attendedBy": {
-            "type": "../collection.json"
-        },
-        "attending": {
-          "type": "../collection.json"
-        },
-        "endTime": {
-          "type": "string",
-          "format": "date-time"
-        },
-        "invited": {
-          "type": "../collection.json"
-        },
-        "maybeAttending": {
-          "type": "../collection.json"
-        },
-        "notAttendedBy": {
-          "type": "../collection.json"
-        },
-        "notAttending": {
-          "type": "../collection.json"
-        },
-        "startTime": {
-          "type": "string",
-          "format": "date-time"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/file.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/file.json b/streams-schemas/src/site/resources/objectTypes/file.json
deleted file mode 100644
index 695ef98..0000000
--- a/streams-schemas/src/site/resources/objectTypes/file.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "file",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "file"
-        },
-        "fileUrl": {
-          "type": "string"
-        },
-        "mimeType": {
-          "type": "string"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/folder.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/folder.json b/streams-schemas/src/site/resources/objectTypes/folder.json
deleted file mode 100644
index a319efe..0000000
--- a/streams-schemas/src/site/resources/objectTypes/folder.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "folder",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "folder"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/game.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/game.json b/streams-schemas/src/site/resources/objectTypes/game.json
deleted file mode 100644
index 5f13dfc..0000000
--- a/streams-schemas/src/site/resources/objectTypes/game.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "game",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "game"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/group.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/group.json b/streams-schemas/src/site/resources/objectTypes/group.json
deleted file mode 100644
index b67d88d..0000000
--- a/streams-schemas/src/site/resources/objectTypes/group.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "group",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "group"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/image.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/image.json b/streams-schemas/src/site/resources/objectTypes/image.json
deleted file mode 100644
index 8a19fd1..0000000
--- a/streams-schemas/src/site/resources/objectTypes/image.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "image",
-    "extends": {
-        "$ref": "../media_link.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "image"
-        },
-        "fullImage": {
-          "type": "string"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/issue.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/issue.json b/streams-schemas/src/site/resources/objectTypes/issue.json
deleted file mode 100644
index 29bfe44..0000000
--- a/streams-schemas/src/site/resources/objectTypes/issue.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "issue",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "issue"
-        },
-        "types": {
-          "type": "array",
-          "items": {
-            "type": "string"
-          }
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/job.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/job.json b/streams-schemas/src/site/resources/objectTypes/job.json
deleted file mode 100644
index 2d82975..0000000
--- a/streams-schemas/src/site/resources/objectTypes/job.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "job",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "job"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-schemas/src/site/resources/objectTypes/list.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/list.json b/streams-schemas/src/site/resources/objectTypes/list.json
deleted file mode 100644
index d7c164a..0000000
--- a/streams-schemas/src/site/resources/objectTypes/list.json
+++ /dev/null
@@ -1,28 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "#",
-    "type": "object",
-    "title": "list",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "list"
-        },
-        "items": {
-            "type": "array",
-            "items": {
-                "type": "object",
-                "properties": {
-                    "$ref": "../object.json"
-                }
-            }
-        }
-    }
-}



[32/53] [abbrv] incubator-streams git commit: resolves STREAMS-405

Posted by mf...@apache.org.
resolves STREAMS-405


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/51961a01
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/51961a01
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/51961a01

Branch: refs/heads/invalid_headers
Commit: 51961a01ded3072e2a2c1a66a46d22ed5dd64813
Parents: a726b3c
Author: charlesmims <ch...@gmail.com>
Authored: Tue Oct 11 13:53:53 2016 -0500
Committer: charlesmims <ch...@gmail.com>
Committed: Tue Oct 11 13:53:53 2016 -0500

----------------------------------------------------------------------
 README.md | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/51961a01/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index 92d2627..4ab85cb 100644
--- a/README.md
+++ b/README.md
@@ -2,6 +2,17 @@ Apache Streams (incubating)
 Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
 --------------------------------------------------------------------------------
 
-[README.md](src/site/markdown/index.md "README")
+## Overview
+Apache Streams (incubating) unifies a diverse world of digital profiles and online activities into common formats and vocabularies, and makes these datasets accessible across a variety of databases, devices, and platforms for streaming, browsing, search, sharing, and analytics use-cases.
 
+### What is Streams?
+Apache Streams contains JRE-based modules that developers can use to easily integrate with online data sources and build polyglot indexes of activities, entities, and relationships - all based on public standards such as [Activity Streams](http://activitystrea.ms/), or other published organizational standards.
 
+### Why use Streams?
+Streams contains libraries and patterns for specifying, publishing, and inter-linking schemas, and assists with conversion of activities (posts, shares, likes, follows, etc.) and objects (profiles, pages, photos, videos, etc.) between the representation, format, and encoding preferred by supported data providers (Twitter, Instagram, etc.), and storage services (Cassandra, Elasticsearch, HBase, HDFS, Neo4J, etc.)
+
+### Why is Streams important?
+The project aims to provide simple two-way data interchange with all popular REST APIs in activity streams formats using a universal protocol.  No other active open-source project has this ambitious goal, as well as production-worthy implementations for >10 services.  Streams compatibility with multiple storage back-ends and ability to be embedded within any java-based real-time or batch data processing platform ensures that its interoperability features come with little technical baggage.
+
+### Disclaimer
+Apache Streams is an effort undergoing incubation at [The Apache Software Foundation (ASF)](http://apache.org) sponsored by the [Apache Incubator PMC](http://incubator.apache.org). Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.


[22/53] [abbrv] incubator-streams git commit: refactoring, testing, documentation, CLI modes

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/save.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/save.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/save.json
new file mode 100644
index 0000000..06ec16f
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/save.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/save.json#",
+    "type": "object",
+    "title": "Save",
+    "description": "Indicates that the actor has called out the object as being of interest primarily to him- or herself. Though this action MAY be shared publicly, the implication is that the object has been saved primarily for the actor's own benefit rather than to show it to others as would be indicated by the \"share\" verb.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "save"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} saved {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/schedule.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/schedule.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/schedule.json
new file mode 100644
index 0000000..a42d955
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/schedule.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/schedule.json#",
+    "type": "object",
+    "title": "Schedule",
+    "description": "Indicates that the actor has scheduled the object. For instance, scheduling a meeting.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "schedule"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} scheduled {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/search.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/search.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/search.json
new file mode 100644
index 0000000..1cb8572
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/search.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/search.json#",
+    "type": "object",
+    "title": "Search",
+    "description": "Indicates that the actor is or has searched for the object. If a target is specified, it indicates the context within which the search is or has been conducted.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "search"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} search for {object.displayName} in {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/sell.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/sell.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/sell.json
new file mode 100644
index 0000000..4ec46b6
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/sell.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/sell.json#",
+    "type": "object",
+    "title": "Sell",
+    "description": "Indicates that the actor has sold the object. If a target is specified, it indicates the entity to which the object was sold.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "sell"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} sold {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/send.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/send.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/send.json
new file mode 100644
index 0000000..69f565c
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/send.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/send.json#",
+    "type": "object",
+    "title": "Send",
+    "description": "Indicates that the actor has sent the object to the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "send"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} sent {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/share.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/share.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/share.json
new file mode 100644
index 0000000..576f5fb
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/share.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/share.json#",
+    "type": "object",
+    "title": "Share",
+    "description": "To share an object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "share"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} shared {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/sponsor.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/sponsor.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/sponsor.json
new file mode 100644
index 0000000..55445b7
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/sponsor.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/sponsor.json#",
+    "type": "object",
+    "title": "Sponsor",
+    "description": "Indicates that the actor has sponsored the object. If a target is specified, it indicates the context within which the sponsorship is offered. For instance, a company can sponsor an event; or an individual can sponsor a project; etc.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "sponsor"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} sponsored {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/start.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/start.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/start.json
new file mode 100644
index 0000000..3e52c12
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/start.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/start.json#",
+    "type": "object",
+    "title": "Start",
+    "description": "Indicates that the actor has started the object. For instance, when a person starts a project.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "start"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} started {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/stop-following.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/stop-following.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/stop-following.json
new file mode 100644
index 0000000..cd7c521
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/stop-following.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/stop-following.json#",
+    "type": "object",
+    "title": "UnFollow",
+    "description": "Indicates that the actor has stopped following the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "stop-following"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} stopped following {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/submit.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/submit.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/submit.json
new file mode 100644
index 0000000..58582ee
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/submit.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/submit.json#",
+    "type": "object",
+    "title": "Submit",
+    "description": "Indicates that the actor has submitted the object. If a target is specified, it indicates the entity to which the object was submitted.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "submit"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} submitted {object.displayName} to {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/tag.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/tag.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/tag.json
new file mode 100644
index 0000000..6ed1632
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/tag.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/tag.json#",
+    "type": "object",
+    "title": "Tag",
+    "description": "Indicates that the actor has associated the object with the target. For example, if the actor specifies that a particular user appears in a photo. the object is the user and the target is the photo.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "tag"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} tagged {object.displayName} as {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/terminate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/terminate.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/terminate.json
new file mode 100644
index 0000000..9a4d94c
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/terminate.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/terminate.json#",
+    "type": "object",
+    "title": "Terminate",
+    "description": "Indicates that the actor has terminated the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "terminate"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} terminated {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/tie.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/tie.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/tie.json
new file mode 100644
index 0000000..6637fb9
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/tie.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/tie.json#",
+    "type": "object",
+    "title": "Tie",
+    "description": "Indicates that the actor has neither won or lost the object. This verb is generally only applicable when the object represents some form of competition, such as a game.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "tie"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} tied at {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unfavorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unfavorite.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unfavorite.json
new file mode 100644
index 0000000..2b642b4
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unfavorite.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/unfavorite.json#",
+    "type": "object",
+    "title": "UnFavorite",
+    "description": "Indicates that the actor has removed the object from the collection of favorited items.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unfavorite"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} removed {object.displayName} as a favorite"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unlike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unlike.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unlike.json
new file mode 100644
index 0000000..db0b7bc
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unlike.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/unlike.json#",
+    "type": "object",
+    "title": "UnLike",
+    "description": "Indicates that the actor has removed the object from the collection of liked items.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unlike"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} no longer likes {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unsatisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unsatisfy.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unsatisfy.json
new file mode 100644
index 0000000..381818a
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unsatisfy.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/unsatisfy.json#",
+    "type": "object",
+    "title": "UnSatisfy",
+    "description": "Indicates that the actor has not satisfied the object. If a target is specified, it indicates the context within which the object was not satisfied. For instance, if a person fails to satisfy the requirements of some particular challenge, the person is the actor; the requirement is the object and the challenge is the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unsatisfy"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} has not satisfied {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unsave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unsave.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unsave.json
new file mode 100644
index 0000000..09f7123
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unsave.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/unsave.json#",
+    "type": "object",
+    "title": "UnSave",
+    "description": "Indicates that the actor has removed the object from the collection of saved items.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unsave"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} unsaved {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unshare.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unshare.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unshare.json
new file mode 100644
index 0000000..9aceb25
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/unshare.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/unshare.json#",
+    "type": "object",
+    "title": "UnSave",
+    "description": "Indicates that the actor is no longer sharing the object. If a target is specified, it indicates the entity with whom the object is no longer being shared.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unshare"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} is no longer sharing {object.displayName} with {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/update.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/update.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/update.json
new file mode 100644
index 0000000..4272bb4
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/update.json
@@ -0,0 +1,34 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/update.json#",
+    "type": "object",
+    "title": "Update",
+    "description": "The \"update\" verb indicates that the actor has modified the object. Use of the \"update\" verb is generally reserved to indicate modifications to existing objects or data such as changing an existing user's profile information.",
+    "notes": "The new property value can be a scalar value or an object. See the property object type",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "update"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} updated {target.displayName}'s {object.displayName} to {object.value}"
+        },
+        "object": {
+            "type": "object",
+            "$ref": "../object.json"
+        },
+        "target": {
+            "type": "object",
+            "optional": true,
+            "$ref": "../object.json"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/use.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/use.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/use.json
new file mode 100644
index 0000000..26c69a6
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/use.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/use.json#",
+    "type": "object",
+    "title": "Use",
+    "description": "Indicates that the actor has used the object in some manner.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "use"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} used {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/watch.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/watch.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/watch.json
new file mode 100644
index 0000000..08d7eb0
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/watch.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/watch.json#",
+    "type": "object",
+    "title": "Watch",
+    "description": "Indicates that the actor has watched the object. This verb is typically applicable only when the object represents dynamic, visible content such as a movie, a television show or a public performance.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "watch"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} watched {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/win.json
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/win.json b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/win.json
new file mode 100644
index 0000000..baedbaa
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/jsonschema/verbs/win.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema",
+    "$license": [
+        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
+        "http://www.apache.org/licenses/LICENSE-2.0"
+    ],
+    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/win.json#",
+    "type": "object",
+    "title": "Win",
+    "description": "Indicates that the actor has won the object.  For instance, if a person wins a game.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "win"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} won {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/streams-schema-activitystreams/src/main/xmlschema/activity.xsd
----------------------------------------------------------------------
diff --git a/streams-schemas/streams-schema-activitystreams/src/main/xmlschema/activity.xsd b/streams-schemas/streams-schema-activitystreams/src/main/xmlschema/activity.xsd
new file mode 100644
index 0000000..1d81b44
--- /dev/null
+++ b/streams-schemas/streams-schema-activitystreams/src/main/xmlschema/activity.xsd
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
+<xs:schema version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+
+    <xs:element name="id" type="xs:string"/>
+    <xs:element name="actor" type="objectType"/>
+    <xs:element name="verb" type="verbType"/>
+    <xs:element name="object" type="objectType"/>
+    <xs:element name="target" type="objectType"/>
+    <xs:element name="object-type" type="xs:string"/>
+    <xs:element name="published" type="xs:dateTime"/>
+    <xs:element name="updated" type="xs:dateTime"/>
+    <xs:element name="provider" type="objectType"/>
+    <xs:element name="title" type="xs:string"/>
+    <xs:element name="content" type="xs:string"/>
+    <xs:element name="url" type="xs:string"/>
+
+    <xs:simpleType name="verbType">
+        <xs:restriction base="xs:string">
+            <xs:enumeration value="favorite"/>
+            <xs:enumeration value="follow"/>
+            <xs:enumeration value="join"/>
+            <xs:enumeration value="like"/>
+            <xs:enumeration value="make-friend"/>
+            <xs:enumeration value="play"/>
+            <xs:enumeration value="post"/>
+            <xs:enumeration value="rsvp-yes"/>
+            <xs:enumeration value="rsvp-no"/>
+            <xs:enumeration value="rsvp-maybe"/>
+            <xs:enumeration value="save"/>
+            <xs:enumeration value="share"/>
+            <xs:enumeration value="tag"/>
+            <xs:enumeration value="update"/>
+        </xs:restriction>
+    </xs:simpleType>
+
+    <xs:complexType name="objectType">
+        <xs:sequence>
+            <xs:element name="id" type="xs:string"/>
+            <xs:element name="image" type="mediaLink"/>
+            <xs:element name="displayName" type="xs:string"/>
+            <xs:element name="summary" type="xs:string"/>
+            <xs:element name="content" type="xs:string"/>
+            <xs:element name="url" type="xs:string"/>
+            <xs:element name="published" type="xs:string"/>
+            <xs:element name="updated" type="xs:string"/>
+            <xs:element name="object-type" >
+                <xs:simpleType>
+                    <xs:restriction base="xs:string">
+                        <xs:enumeration value="article"/>
+                        <xs:enumeration value="audio"/>
+                        <xs:enumeration value="badge"/>
+                        <xs:enumeration value="collection"/>
+                        <xs:enumeration value="comment"/>
+                        <xs:enumeration value="course"/>
+                        <xs:enumeration value="file"/>
+                        <xs:enumeration value="image"/>
+                        <xs:enumeration value="person"/>
+                        <xs:enumeration value="review"/>
+                        <xs:enumeration value="service"/>
+                    </xs:restriction>
+                </xs:simpleType>
+            </xs:element>
+        </xs:sequence>
+
+    </xs:complexType>
+
+    <xs:complexType name="mediaLink">
+        <xs:sequence>
+            <xs:element name="duration" type="xs:positiveInteger"/>
+            <xs:element name="height" type="xs:positiveInteger"/>
+            <xs:element name="width" type="xs:positiveInteger"/>
+            <xs:element name="url" type="xs:string"/>
+        </xs:sequence>
+    </xs:complexType>
+
+</xs:schema>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/pom.xml
----------------------------------------------------------------------
diff --git a/streams-util/pom.xml b/streams-util/pom.xml
index e71bce0..ca6b928 100644
--- a/streams-util/pom.xml
+++ b/streams-util/pom.xml
@@ -34,28 +34,53 @@
 
     <dependencies>
         <dependency>
+            <groupId>commons-io</groupId>
+            <artifactId>commons-io</artifactId>
+        </dependency>
+        <dependency>
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-lang3</artifactId>
         </dependency>
         <dependency>
-            <groupId>commons-io</groupId>
-            <artifactId>commons-io</artifactId>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-core</artifactId>
         </dependency>
         <dependency>
-            <groupId>com.google.guava</groupId>
-            <artifactId>guava</artifactId>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-databind</artifactId>
         </dependency>
         <dependency>
             <groupId>joda-time</groupId>
             <artifactId>joda-time</artifactId>
         </dependency>
         <dependency>
+            <groupId>org.jsonschema2pojo</groupId>
+            <artifactId>jsonschema2pojo-core</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>commons-logging</groupId>
+                    <artifactId>commons-logging</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>com.google.guava</groupId>
+            <artifactId>guava</artifactId>
+        </dependency>
+        <dependency>
             <groupId>com.carrotsearch.randomizedtesting</groupId>
             <artifactId>randomizedtesting-runner</artifactId>
             <version>2.1.2</version>
         </dependency>
         <dependency>
             <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schema-activitystreams</artifactId>
+            <version>${project.version}</version>
+            <scope>test</scope>
+            <type>test-jar</type>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
             <artifactId>streams-testing</artifactId>
             <version>${project.version}</version>
             <scope>test</scope>
@@ -63,8 +88,43 @@
         </dependency>
     </dependencies>
     <build>
+        <sourceDirectory>src/main/java</sourceDirectory>
+        <testSourceDirectory>src/test/java</testSourceDirectory>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+            </resource>
+        </resources>
+        <testResources>
+            <testResource>
+                <directory>src/test/resources</directory>
+            </testResource>
+        </testResources>
         <plugins>
             <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>build-helper-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>add-source</id>
+                        <phase>generate-sources</phase>
+                        <goals>
+                            <goal>add-resource</goal>
+                        </goals>
+                        <configuration>
+                            <resources>
+                                <resource>
+                                    <directory>${project.basedir}/src/main/jsonschema</directory>
+                                </resource>
+                                <resource>
+                                    <directory>src/main/xmlschema</directory>
+                                </resource>
+                            </resources>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-jar-plugin</artifactId>
                 <executions>
@@ -75,6 +135,27 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>2.10</version>
+                <configuration>
+                    <includes>**/*.json</includes>
+                    <outputDirectory>${project.build.directory}/test-classes</outputDirectory>
+                    <includeGroupIds>org.apache.streams</includeGroupIds>
+                    <includeArtifactIds>streams-schema-activitystreams</includeArtifactIds>
+                    <includeTypes>jar,test-jar</includeTypes>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>unpack-schemas</id>
+                        <phase>process-resources</phase>
+                        <goals>
+                            <goal>unpack-dependencies</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 </project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/main/java/org/apache/streams/util/GuidUtils.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/GuidUtils.java b/streams-util/src/main/java/org/apache/streams/util/GuidUtils.java
index ee2c18c..1972bc7 100644
--- a/streams-util/src/main/java/org/apache/streams/util/GuidUtils.java
+++ b/streams-util/src/main/java/org/apache/streams/util/GuidUtils.java
@@ -25,7 +25,7 @@ import com.google.common.hash.Hashing;
 import java.nio.charset.Charset;
 
 /**
- * Created by sblackmon on 12/13/13.
+ * GuidUtils contains methods for generating guids from identifiers.
  */
 public class GuidUtils {
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/main/java/org/apache/streams/util/RegexUtils.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/RegexUtils.java b/streams-util/src/main/java/org/apache/streams/util/RegexUtils.java
index c32ed5f..2831df5 100644
--- a/streams-util/src/main/java/org/apache/streams/util/RegexUtils.java
+++ b/streams-util/src/main/java/org/apache/streams/util/RegexUtils.java
@@ -27,6 +27,9 @@ import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.tuple.ImmutablePair;
 import org.apache.commons.lang3.tuple.Pair;
 
+/**
+ * RegexUtils contains methods for applying regular expressions to strings.
+ */
 public class RegexUtils {
 
     public static boolean matches(String line, String regEx) {

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/main/java/org/apache/streams/util/SerializationUtil.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/SerializationUtil.java b/streams-util/src/main/java/org/apache/streams/util/SerializationUtil.java
index 81af5f4..de324d2 100644
--- a/streams-util/src/main/java/org/apache/streams/util/SerializationUtil.java
+++ b/streams-util/src/main/java/org/apache/streams/util/SerializationUtil.java
@@ -23,7 +23,8 @@ import org.apache.commons.io.input.ClassLoaderObjectInputStream;
 import java.io.*;
 
 /**
- * Created by rebanks on 2/18/14.
+ * SerializationUtil contains methods for serializing, deserializing, and cloning
+ * documents and tasks.
  */
 public class SerializationUtil {
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/main/java/org/apache/streams/util/schema/FieldType.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/FieldType.java b/streams-util/src/main/java/org/apache/streams/util/schema/FieldType.java
new file mode 100644
index 0000000..6a2290c
--- /dev/null
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/FieldType.java
@@ -0,0 +1,14 @@
+package org.apache.streams.util.schema;
+
+/**
+ * FieldType defines xsd types that streams schema processing libraries should
+ * be able to translate.
+ */
+public enum FieldType {
+    STRING,
+    INTEGER,
+    NUMBER,
+    BOOLEAN,
+    OBJECT,
+    ARRAY
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/main/java/org/apache/streams/util/schema/FieldUtil.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/FieldUtil.java b/streams-util/src/main/java/org/apache/streams/util/schema/FieldUtil.java
new file mode 100644
index 0000000..20435c9
--- /dev/null
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/FieldUtil.java
@@ -0,0 +1,34 @@
+package org.apache.streams.util.schema;
+
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.node.JsonNodeFactory;
+import com.fasterxml.jackson.databind.node.ObjectNode;
+
+/**
+ * FieldUtil contains methods to assist in understanding fields defined within schemas.
+ */
+public class FieldUtil {
+
+    public static FieldType determineFieldType(ObjectNode fieldNode) {
+        String typeSchemaField = "type";
+        if( !fieldNode.has(typeSchemaField))
+            return null;
+        String typeSchemaFieldValue = fieldNode.get(typeSchemaField).asText();
+        if( typeSchemaFieldValue.equals("string")) {
+            return FieldType.STRING;
+        } else if( typeSchemaFieldValue.equals("integer")) {
+            return FieldType.INTEGER;
+        } else if( typeSchemaFieldValue.equals("number")) {
+            return FieldType.NUMBER;
+        } else if( typeSchemaFieldValue.equals("object")) {
+            return FieldType.OBJECT;
+        } else if( typeSchemaFieldValue.equals("boolean")) {
+            return FieldType.BOOLEAN;
+        } else if( typeSchemaFieldValue.equals("array")) {
+            return FieldType.ARRAY;
+        }
+        else return null;
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/main/java/org/apache/streams/util/schema/FileUtil.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/FileUtil.java b/streams-util/src/main/java/org/apache/streams/util/schema/FileUtil.java
new file mode 100644
index 0000000..c025513
--- /dev/null
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/FileUtil.java
@@ -0,0 +1,77 @@
+package org.apache.streams.util.schema;
+
+import com.google.common.base.Preconditions;
+import com.google.common.base.Strings;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.nio.file.StandardOpenOption;
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * FileUtil contains methods to assist in working with local schema files during
+ * source or resource generation.
+ */
+public class FileUtil {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(FileUtil.class);
+
+    public static String dropSourcePathPrefix(String inputFile, String sourceDirectory) {
+        if(Strings.isNullOrEmpty(sourceDirectory))
+            return inputFile;
+        else {
+            try {
+                if( inputFile.contains(sourceDirectory) && inputFile.indexOf(sourceDirectory) > 0) {
+                    return inputFile.substring(inputFile.indexOf(sourceDirectory)+sourceDirectory.length()+1);
+                }
+            } catch( Throwable e ) {
+                return inputFile;
+            }
+        }
+        return inputFile;
+    }
+
+    public static String swapExtension(String inputFile, String originalExtension, String newExtension) {
+        if(inputFile.endsWith("."+originalExtension))
+            return inputFile.replace("."+originalExtension, "."+newExtension);
+        else return inputFile;
+    }
+
+    public static String dropExtension(String inputFile) {
+        if(inputFile.contains("."))
+            return inputFile.substring(0, inputFile.lastIndexOf("."));
+        else return inputFile;
+    }
+
+    public static void writeFile(String resourceFile, String resourceContent) {
+        try {
+            File path = new File(resourceFile);
+            File dir = path.getParentFile();
+            if( !dir.exists() )
+                dir.mkdirs();
+            Files.write(Paths.get(resourceFile), resourceContent.getBytes(), StandardOpenOption.CREATE_NEW);
+        } catch (Exception e) {
+            LOGGER.error("Write Exception: {}", e);
+        }
+    }
+
+    public static void resolveRecursive(GenerationConfig config, List<File> schemaFiles) {
+
+        Preconditions.checkArgument(schemaFiles.size() > 0);
+        int i = 0;
+        while( schemaFiles.size() > i) {
+            File child = schemaFiles.get(i);
+            if (child.isDirectory()) {
+                schemaFiles.addAll(Arrays.asList(child.listFiles(config.getFileFilter())));
+                schemaFiles.remove(child);
+            } else {
+                i += 1;
+            }
+        }
+
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/main/java/org/apache/streams/util/schema/GenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/GenerationConfig.java b/streams-util/src/main/java/org/apache/streams/util/schema/GenerationConfig.java
new file mode 100644
index 0000000..d4b2c3f
--- /dev/null
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/GenerationConfig.java
@@ -0,0 +1,116 @@
+package org.apache.streams.util.schema;
+
+import java.io.File;
+import java.io.FileFilter;
+import java.net.URL;
+import java.util.Iterator;
+
+/**
+ * GenerationConfig represents the common fields and field accessors for
+ * streams modules that transform schemas into generated-sources or generated-resources
+ */
+public interface GenerationConfig {
+
+    /**
+     * Gets the 'source' configuration option.
+     *
+     * @return The source file(s) or directory(ies) from which JSON Schema will
+     *         be read.
+     */
+    Iterator<URL> getSource();
+
+    /**
+     * Gets the 'targetDirectory' configuration option.
+     *
+     * @return The target directory into which generated types will be written
+     *         (may or may not exist before types are written)
+     */
+    File getTargetDirectory();
+
+    /**
+     * Gets the 'outputEncoding' configuration option.
+     *
+     * @return The character encoding that should be used when writing output files.
+     */
+    String getOutputEncoding();
+
+    /**
+     * Gets the file filter used to isolate the schema mapping files in the
+     * source directories.
+     *
+     * @return the file filter use when scanning for schema files.
+     */
+    FileFilter getFileFilter();
+
+    /**
+     * Gets the 'includeAdditionalProperties' configuration option.
+     *
+     * @return Whether to allow 'additional properties' support in objects.
+     *         Setting this to false will disable additional properties support,
+     *         regardless of the input schema(s).
+     */
+//    boolean isIncludeAdditionalProperties();
+
+    /**
+     * Gets the 'targetVersion' configuration option.
+     *
+     *  @return The target version for generated source files.
+     */
+//    String getTargetVersion();
+
+//    /**
+//     * Gets the `includeDynamicAccessors` configuraiton option.
+//     *
+//     * @return Whether to include dynamic getters, setters, and builders
+//     *         or to omit these methods.
+//     */
+//    boolean isIncludeDynamicAccessors();
+
+//    /**
+//     * Gets the `dateTimeType` configuration option.
+//     *         <p>
+//     *         Example values:
+//     *         <ul>
+//     *         <li><code>org.joda.time.LocalDateTime</code> (Joda)</li>
+//     *         <li><code>java.time.LocalDateTime</code> (JSR310)</li>
+//     *         <li><code>null</code> (default behavior)</li>
+//     *         </ul>
+//     *
+//     * @return The java type to use instead of {@link java.util.Date}
+//     *         when adding date type fields to generate Java types.
+//     */
+//    String getDateTimeType();
+//
+//    /**
+//     * Gets the `dateType` configuration option.
+//     *         <p>
+//     *         Example values:
+//     *         <ul>
+//     *         <li><code>org.joda.time.LocalDate</code> (Joda)</li>
+//     *         <li><code>java.time.LocalDate</code> (JSR310)</li>
+//     *         <li><code>null</code> (default behavior)</li>
+//     *         </ul>
+//     *
+//     * @return The java type to use instead of string
+//     *         when adding string type fields with a format of date (not
+//     *         date-time) to generated Java types.
+//     */
+//    String getDateType();
+//
+//    /**
+//     * Gets the `timeType` configuration option.
+//     *         <p>
+//     *         Example values:
+//     *         <ul>
+//     *         <li><code>org.joda.time.LocalTime</code> (Joda)</li>
+//     *         <li><code>java.time.LocalTime</code> (JSR310)</li>
+//     *         <li><code>null</code> (default behavior)</li>
+//     *         </ul>
+//     *
+//     * @return The java type to use instead of string
+//     *         when adding string type fields with a format of time (not
+//     *         date-time) to generated Java types.
+//     */
+//    String getTimeType();
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/main/java/org/apache/streams/util/schema/Schema.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/Schema.java b/streams-util/src/main/java/org/apache/streams/util/schema/Schema.java
new file mode 100644
index 0000000..fc0a3f2
--- /dev/null
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/Schema.java
@@ -0,0 +1,57 @@
+package org.apache.streams.util.schema;
+
+import com.fasterxml.jackson.databind.JsonNode;
+
+import java.net.URI;
+
+/**
+ * A JSON Schema document.
+ */
+public class Schema {
+
+    private final URI id;
+    private final URI uri;
+    private final JsonNode content;
+    private final Schema parent;
+    private final boolean generate;
+
+    public Schema(URI uri, JsonNode content, Schema parent, boolean generate) {
+        this.uri = uri;
+        this.content = content;
+        this.parent = parent;
+        this.generate = generate;
+        this.id = content.has("id") ? URI.create(content.get("id").asText()) : null;
+    }
+
+    public URI getId() {
+        return id;
+    }
+
+    public URI getURI() {
+        return uri;
+    }
+
+    public JsonNode getContent() {
+        return content;
+    }
+
+    public JsonNode getParentContent() {
+        if( parent != null )
+            return parent.getContent();
+        else return null;
+    }
+
+    public URI getParentURI() {
+        if( parent != null ) return parent.getURI();
+        else return null;
+    }
+
+    public boolean isGenerated() {
+        return generate;
+    }
+
+    public Schema getParent() {
+        return parent;
+    }
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStore.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStore.java b/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStore.java
new file mode 100644
index 0000000..07e9bef
--- /dev/null
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStore.java
@@ -0,0 +1,42 @@
+package org.apache.streams.util.schema;
+
+import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.google.common.base.Optional;
+
+import java.net.URI;
+import java.util.Comparator;
+import java.util.Iterator;
+
+/**
+ * A SchemaStore resolves and indexes json schemas and makes their properties available.
+ *
+ * Implementations include
+ * - SchemaStoreImpl
+ */
+public interface SchemaStore extends Comparator<Schema> {
+    
+    Schema create(URI uri);
+
+    Schema create(Schema parent, String path);
+
+    void clearCache();
+
+    Integer getSize();
+
+    Optional<Schema> getById(URI id);
+
+    Optional<Schema> getByUri(URI uri);
+
+    Integer getFileUriCount();
+
+    Integer getHttpUriCount();
+
+    Iterator<Schema> getSchemaIterator();
+
+    ObjectNode resolveProperties(Schema schema, ObjectNode fieldNode, String resourceId);
+
+    ObjectNode resolveItems(Schema schema, ObjectNode fieldNode, String resourceId);
+
+    @Override
+    int compare(Schema left, Schema right);
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStoreImpl.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStoreImpl.java b/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStoreImpl.java
new file mode 100644
index 0000000..9585742
--- /dev/null
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/SchemaStoreImpl.java
@@ -0,0 +1,347 @@
+package org.apache.streams.util.schema;
+
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.node.JsonNodeFactory;
+import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.google.common.base.Optional;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Ordering;
+import org.apache.commons.lang3.StringUtils;
+import org.jsonschema2pojo.ContentResolver;
+import org.jsonschema2pojo.FragmentResolver;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.net.URI;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+import static org.apache.streams.util.schema.URIUtil.safeResolve;
+
+/**
+ * Created by steve on 4/30/16.
+ */
+public class SchemaStoreImpl extends Ordering<Schema> implements SchemaStore {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(SchemaStore.class);
+    private final static JsonNodeFactory NODE_FACTORY = JsonNodeFactory.instance;
+
+    protected Map<URI, Schema> schemas = new HashMap();
+    protected FragmentResolver fragmentResolver = new FragmentResolver();
+    protected ContentResolver contentResolver = new ContentResolver();
+
+    public SchemaStoreImpl() {
+    }
+
+    @Override
+    public synchronized Schema create(URI uri) {
+        if(!getByUri(uri).isPresent()) {
+            URI baseURI = URIUtil.removeFragment(uri);
+            JsonNode baseNode = this.contentResolver.resolve(baseURI);
+            if(uri.toString().contains("#") && !uri.toString().endsWith("#")) {
+                Schema newSchema = new Schema(baseURI, baseNode, null, true);
+                this.schemas.put(baseURI, newSchema);
+                JsonNode childContent = this.fragmentResolver.resolve(baseNode, '#' + StringUtils.substringAfter(uri.toString(), "#"));
+                this.schemas.put(uri, new Schema(uri, childContent, newSchema, false));
+            } else {
+                if( baseNode.has("extends") && baseNode.get("extends").isObject()) {
+                    URI ref = URI.create(((ObjectNode)baseNode.get("extends")).get("$ref").asText());
+                    URI absoluteURI;
+                    if( ref.isAbsolute())
+                        absoluteURI = ref;
+                    else
+                        absoluteURI = baseURI.resolve(ref);
+                    JsonNode parentNode = this.contentResolver.resolve(absoluteURI);
+                    Schema parentSchema = null;
+                    if( this.schemas.get(absoluteURI) != null ) {
+                        parentSchema = this.schemas.get(absoluteURI);
+                    } else {
+                        parentSchema = create(absoluteURI);
+                    }
+                    this.schemas.put(uri, new Schema(uri, baseNode, parentSchema, true));
+                } else {
+                    this.schemas.put(uri, new Schema(uri, baseNode, null, true));
+                }
+            }
+            List<JsonNode> refs = baseNode.findValues("$ref");
+            for( JsonNode ref : refs ) {
+                if( ref.isValueNode() ) {
+                    String refVal = ref.asText();
+                    URI refURI = null;
+                    try {
+                        refURI = URI.create(refVal);
+                    } catch( Exception e ) {
+                        LOGGER.info("Exception: {}", e.getMessage());
+                    }
+                    if (refURI != null && !getByUri(refURI).isPresent()) {
+                        if (refURI.isAbsolute())
+                            create(refURI);
+                        else
+                            create(baseURI.resolve(refURI));
+                    }
+                }
+            }
+        }
+
+        return this.schemas.get(uri);
+    }
+
+    @Override
+    public Schema create(Schema parent, String path) {
+        if(path.equals("#")) {
+            return parent;
+        } else {
+            path = StringUtils.stripEnd(path, "#?&/");
+            URI id = parent != null && parent.getId() != null?parent.getId().resolve(path):URI.create(path);
+            if(this.selfReferenceWithoutParentFile(parent, path)) {
+                this.schemas.put(id, new Schema(id, this.fragmentResolver.resolve(parent.getParentContent(), path), parent, false));
+                return this.schemas.get(id);
+            } else {
+                return this.create(id);
+            }
+        }
+    }
+
+    protected boolean selfReferenceWithoutParentFile(Schema parent, String path) {
+        return parent != null && (parent.getId() == null || parent.getId().toString().startsWith("#/")) && path.startsWith("#/");
+    }
+
+    @Override
+    public synchronized void clearCache() {
+        this.schemas.clear();
+    }
+
+    @Override
+    public Integer getSize() {
+        return schemas.size();
+    }
+
+    @Override
+    public Optional<Schema> getById(URI id) {
+        for( Schema schema : schemas.values() ) {
+            if( schema.getId() != null && schema.getId().equals(id) )
+                return Optional.of(schema);
+        }
+        return Optional.absent();
+    }
+
+    @Override
+    public Optional<Schema> getByUri(URI uri) {
+        for( Schema schema : schemas.values() ) {
+            if( schema.getURI().equals(uri) )
+                return Optional.of(schema);
+        }
+        return Optional.absent();
+    }
+
+    @Override
+    public Integer getFileUriCount() {
+        int count = 0;
+        for( Schema schema : schemas.values() ) {
+            if( schema.getURI().getScheme().equals("file") )
+                count++;
+        }
+        return count;
+    }
+
+    @Override
+    public Integer getHttpUriCount() {
+        int count = 0;
+        for( Schema schema : schemas.values() ) {
+            if( schema.getURI().getScheme().equals("http") )
+                count++;
+        }
+        return count;
+    }
+
+    @Override
+    public Iterator<Schema> getSchemaIterator() {
+        List<Schema> schemaList = Lists.newArrayList(schemas.values());
+        Collections.sort(schemaList, this);
+        return schemaList.iterator();
+    }
+
+    @Override
+    public ObjectNode resolveProperties(Schema schema, ObjectNode fieldNode, String resourceId) {
+        // this should return something more suitable like:
+        //   Map<String, Pair<Schema, ObjectNode>>
+        ObjectNode schemaProperties = NODE_FACTORY.objectNode();
+        ObjectNode parentProperties = NODE_FACTORY.objectNode();
+        if (fieldNode == null) {
+            ObjectNode schemaContent = (ObjectNode) schema.getContent();
+            if( schemaContent.has("properties") ) {
+                schemaProperties = (ObjectNode) schemaContent.get("properties");
+                if (schema.getParentContent() != null) {
+                    ObjectNode parentContent = (ObjectNode) schema.getParentContent();
+                    if (parentContent.has("properties")) {
+                        parentProperties = (ObjectNode) parentContent.get("properties");
+                    }
+                }
+            }
+        } else if (fieldNode != null && fieldNode.size() > 0) {
+            if( fieldNode.has("properties") && fieldNode.get("properties").isObject() && fieldNode.get("properties").size() > 0 )
+                schemaProperties = (ObjectNode) fieldNode.get("properties");
+            URI parentURI = null;
+            if( fieldNode.has("$ref") || fieldNode.has("extends") ) {
+                JsonNode refNode = fieldNode.get("$ref");
+                JsonNode extendsNode = fieldNode.get("extends");
+                if (refNode != null && refNode.isValueNode())
+                    parentURI = URI.create(refNode.asText());
+                else if (extendsNode != null && extendsNode.isObject())
+                    parentURI = URI.create(extendsNode.get("$ref").asText());
+                ObjectNode parentContent = null;
+                URI absoluteURI;
+                if (parentURI.isAbsolute())
+                    absoluteURI = parentURI;
+                else {
+                    absoluteURI = schema.getURI().resolve(parentURI);
+                    if (!absoluteURI.isAbsolute() || (absoluteURI.isAbsolute() && !getByUri(absoluteURI).isPresent() ))
+                        absoluteURI = schema.getParentURI().resolve(parentURI);
+                }
+                if (absoluteURI != null && absoluteURI.isAbsolute()) {
+                    if (getByUri(absoluteURI).isPresent())
+                        parentContent = (ObjectNode) getByUri(absoluteURI).get().getContent();
+                    if (parentContent != null && parentContent.isObject() && parentContent.has("properties")) {
+                        parentProperties = (ObjectNode) parentContent.get("properties");
+                    } else if (absoluteURI.getPath().endsWith("#properties")) {
+                        absoluteURI = URI.create(absoluteURI.toString().replace("#properties", ""));
+                        parentProperties = (ObjectNode) getByUri(absoluteURI).get().getContent().get("properties");
+                    }
+                }
+            }
+
+
+        }
+
+        ObjectNode resolvedProperties = NODE_FACTORY.objectNode();
+        if (parentProperties != null && parentProperties.size() > 0)
+            resolvedProperties = SchemaUtil.mergeProperties(schemaProperties, parentProperties);
+        else resolvedProperties = schemaProperties.deepCopy();
+
+        return resolvedProperties;
+    }
+
+    public ObjectNode resolveItems(Schema schema, ObjectNode fieldNode, String resourceId) {
+        ObjectNode schemaItems = NODE_FACTORY.objectNode();
+        ObjectNode parentItems = NODE_FACTORY.objectNode();
+        if (fieldNode == null) {
+            ObjectNode schemaContent = (ObjectNode) schema.getContent();
+            if( schemaContent.has("items") ) {
+                schemaItems = (ObjectNode) schemaContent.get("items");
+                if (schema.getParentContent() != null) {
+                    ObjectNode parentContent = (ObjectNode) schema.getParentContent();
+                    if (parentContent.has("items")) {
+                        parentItems = (ObjectNode) parentContent.get("items");
+                    }
+                }
+            }
+        } else if (fieldNode != null && fieldNode.size() > 0) {
+            if (fieldNode.has("items") && fieldNode.get("items").isObject() && fieldNode.get("items").size() > 0)
+                schemaItems = (ObjectNode) fieldNode.get("items");
+            URI parentURI = null;
+            if( fieldNode.has("$ref") || fieldNode.has("extends") ) {
+                JsonNode refNode = fieldNode.get("$ref");
+                JsonNode extendsNode = fieldNode.get("extends");
+                if (refNode != null && refNode.isValueNode())
+                    parentURI = URI.create(refNode.asText());
+                else if (extendsNode != null && extendsNode.isObject())
+                    parentURI = URI.create(extendsNode.get("$ref").asText());
+                ObjectNode parentContent = null;
+                URI absoluteURI;
+                if (parentURI.isAbsolute())
+                    absoluteURI = parentURI;
+                else {
+                    absoluteURI = schema.getURI().resolve(parentURI);
+                    if (!absoluteURI.isAbsolute() || (absoluteURI.isAbsolute() && !getByUri(absoluteURI).isPresent() ))
+                        absoluteURI = schema.getParentURI().resolve(parentURI);
+                }
+                if (absoluteURI != null && absoluteURI.isAbsolute()) {
+                    if (getByUri(absoluteURI).isPresent())
+                        parentContent = (ObjectNode) getByUri(absoluteURI).get().getContent();
+                    if (parentContent != null && parentContent.isObject() && parentContent.has("items")) {
+                        parentItems = (ObjectNode) parentContent.get("items");
+                    } else if (absoluteURI.getPath().endsWith("#items")) {
+                        absoluteURI = URI.create(absoluteURI.toString().replace("#items", ""));
+                        parentItems = (ObjectNode) getByUri(absoluteURI).get().getContent().get("items");
+                    }
+                }
+            }
+        }
+
+        ObjectNode resolvedItems = NODE_FACTORY.objectNode();
+        if (parentItems != null && parentItems.size() > 0)
+            resolvedItems = SchemaUtil.mergeProperties(schemaItems, parentItems);
+        else resolvedItems = schemaItems.deepCopy();
+
+        return resolvedItems;
+    }
+
+    @Override
+    public int compare(Schema left, Schema right) {
+        // are they the same?
+        if( left.equals(right)) return 0;
+        // is one an ancestor of the other
+        Schema candidateAncestor = left;
+        while( candidateAncestor.getParent() != null ) {
+            candidateAncestor = candidateAncestor.getParent();
+            if( candidateAncestor.equals(right))
+                return 1;
+        }
+        candidateAncestor = right;
+        while( candidateAncestor.getParent() != null ) {
+            candidateAncestor = candidateAncestor.getParent();
+            if( candidateAncestor.equals(left))
+                return -1;
+        }
+        // does one have a field that reference the other?
+        for( JsonNode refNode : left.getContent().findValues("$ref") ) {
+            String refText = refNode.asText();
+            Optional<URI> resolvedURI = safeResolve(left.getURI(), refText);
+            if( resolvedURI.isPresent() && resolvedURI.get().equals(right.getURI()))
+                return 1;
+        }
+        for( JsonNode refNode : right.getContent().findValues("$ref") ) {
+            String refText = refNode.asText();
+            Optional<URI> resolvedURI = safeResolve(right.getURI(), refText);
+            if( resolvedURI.isPresent() && resolvedURI.get().equals(left.getURI()))
+                return -1;
+        }
+        // does one have a field that reference a third schema that references the other?
+        for( JsonNode refNode : left.getContent().findValues("$ref") ) {
+            String refText = refNode.asText();
+            Optional<URI> possibleConnectorURI = safeResolve(left.getURI(), refText);
+            if( possibleConnectorURI.isPresent()) {
+                Optional<Schema> possibleConnector = getByUri(possibleConnectorURI.get());
+                if (possibleConnector.isPresent()) {
+                    for (JsonNode connectorRefNode : possibleConnector.get().getContent().findValues("$ref")) {
+                        String connectorRefText = connectorRefNode.asText();
+                        Optional<URI> resolvedURI = safeResolve(possibleConnector.get().getURI(), connectorRefText);
+                        if (resolvedURI.isPresent() && resolvedURI.get().equals(right.getURI()))
+                            return 1;
+                    }
+                }
+            }
+        }
+        for( JsonNode refNode : right.getContent().findValues("$ref") ) {
+            String refText = refNode.asText();
+            Optional<URI> possibleConnectorURI = safeResolve(right.getURI(), refText);
+            if( possibleConnectorURI.isPresent()) {
+                Optional<Schema> possibleConnector = getByUri(possibleConnectorURI.get());
+                if (possibleConnector.isPresent()) {
+                    for (JsonNode connectorRefNode : possibleConnector.get().getContent().findValues("$ref")) {
+                        String connectorRefText = connectorRefNode.asText();
+                        Optional<URI> resolvedURI = safeResolve(possibleConnector.get().getURI(), connectorRefText);
+                        if (resolvedURI.isPresent() && resolvedURI.get().equals(left.getURI()))
+                            return -1;
+                    }
+                }
+            }
+        }
+        return 0;
+    }
+
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/main/java/org/apache/streams/util/schema/SchemaUtil.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/SchemaUtil.java b/streams-util/src/main/java/org/apache/streams/util/schema/SchemaUtil.java
new file mode 100644
index 0000000..f8b0070
--- /dev/null
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/SchemaUtil.java
@@ -0,0 +1,49 @@
+package org.apache.streams.util.schema;
+
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.node.JsonNodeFactory;
+import com.fasterxml.jackson.databind.node.ObjectNode;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.net.URL;
+import java.util.Iterator;
+import java.util.Map;
+
+import static org.apache.commons.lang3.StringUtils.isEmpty;
+
+/**
+ * SchemaUtil contains methods to assist in resolving schemas and schema fragments.
+ */
+public class SchemaUtil {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(SchemaUtil.class);
+    private static final JsonNodeFactory NODE_FACTORY = JsonNodeFactory.instance;
+    public static final String ILLEGAL_CHARACTER_REGEX = "[^0-9a-zA-Z_$]";
+
+    public static String childQualifiedName(String parentQualifiedName, String childSimpleName) {
+        String safeChildName = childSimpleName.replaceAll(ILLEGAL_CHARACTER_REGEX, "_");
+        return isEmpty(parentQualifiedName) ? safeChildName : parentQualifiedName + "." + safeChildName;
+    }
+
+    public static ObjectNode readSchema(URL schemaUrl) {
+
+        ObjectNode schemaNode = NODE_FACTORY.objectNode();
+        schemaNode.put("$ref", schemaUrl.toString());
+        return schemaNode;
+
+    }
+
+    public static ObjectNode mergeProperties(ObjectNode content, ObjectNode parent) {
+
+        ObjectNode merged = parent.deepCopy();
+        Iterator<Map.Entry<String, JsonNode>> fields = content.fields();
+        for( ; fields.hasNext(); ) {
+            Map.Entry<String, JsonNode> field = fields.next();
+            String fieldId = field.getKey();
+            merged.put(fieldId, field.getValue().deepCopy());
+        }
+        return merged;
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/main/java/org/apache/streams/util/schema/URIUtil.java
----------------------------------------------------------------------
diff --git a/streams-util/src/main/java/org/apache/streams/util/schema/URIUtil.java b/streams-util/src/main/java/org/apache/streams/util/schema/URIUtil.java
new file mode 100644
index 0000000..af468e3
--- /dev/null
+++ b/streams-util/src/main/java/org/apache/streams/util/schema/URIUtil.java
@@ -0,0 +1,30 @@
+package org.apache.streams.util.schema;
+
+import com.google.common.base.Optional;
+import org.apache.commons.lang3.StringUtils;
+
+import java.net.URI;
+
+/**
+ * URIUtil contains methods to assist in resolving URIs and URI fragments.
+ */
+public class URIUtil {
+
+    public static URI removeFragment(URI id) {
+        return URI.create(StringUtils.substringBefore(id.toString(), "#"));
+    }
+
+    public static URI removeFile(URI id) {
+        return URI.create(StringUtils.substringBeforeLast(id.toString(), "/"));
+    }
+
+    public static Optional<URI> safeResolve(URI absolute, String relativePart) {
+        if( !absolute.isAbsolute()) return Optional.absent();
+        try {
+            return Optional.of(absolute.resolve(relativePart));
+        } catch( IllegalArgumentException e ) {
+            return Optional.absent();
+        }
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaOrderingTest.java
----------------------------------------------------------------------
diff --git a/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaOrderingTest.java b/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaOrderingTest.java
new file mode 100644
index 0000000..6deaa98
--- /dev/null
+++ b/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaOrderingTest.java
@@ -0,0 +1,150 @@
+package org.apache.streams.util.schema.test;
+
+import com.google.common.base.Optional;
+import com.google.common.base.Predicate;
+import com.google.common.collect.Iterators;
+import com.google.common.collect.Lists;
+import org.apache.streams.util.schema.Schema;
+import org.apache.streams.util.schema.SchemaStore;
+import org.apache.streams.util.schema.SchemaStoreImpl;
+import org.junit.Test;
+
+import java.io.File;
+import java.util.Iterator;
+import java.util.List;
+
+/**
+ * Created by sblackmon on 5/3/16.
+ */
+public class SchemaOrderingTest {
+
+    @Test
+    public void compareVerbParent() {
+        SchemaStore schemaStore = new SchemaStoreImpl();
+        File update = new File("target/test-classes/verbs/update.json");
+        schemaStore.create(update.toURI());
+        File activity = new File("target/test-classes/activity.json");
+        schemaStore.create(activity.toURI());
+        assert( schemaStore.compare( schemaStore.getByUri(update.toURI()).get(), schemaStore.getByUri(activity.toURI()).get()) == 1);
+        Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator();
+        assertContainsItemsEndingWithInOrder(
+                schemaIterator,
+                Lists.newArrayList(
+                        "activity.json",
+                        "update.json"
+                )
+        );
+    }
+
+    @Test
+    public void compareObjectTypeParent() {
+        SchemaStore schemaStore = new SchemaStoreImpl();
+        File alert = new File("target/test-classes/objectTypes/alert.json");
+        schemaStore.create(alert.toURI());
+        File object = new File("target/test-classes/object.json");
+        schemaStore.create(object.toURI());
+        assert( schemaStore.compare( schemaStore.getByUri(object.toURI()).get(), schemaStore.getByUri(alert.toURI()).get()) == -1);
+        Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator();
+        assertContainsItemsEndingWithInOrder(
+                schemaIterator,
+                Lists.newArrayList(
+                        "object.json",
+                        "alert.json"
+                )
+        );
+    }
+
+    @Test
+    public void compareUnrelated() {
+        SchemaStore schemaStore = new SchemaStoreImpl();
+        File alert = new File("target/test-classes/objectTypes/alert.json");
+        schemaStore.create(alert.toURI());
+        File update = new File("target/test-classes/verbs/update.json");
+        schemaStore.create(update.toURI());
+        assert( schemaStore.compare( schemaStore.getByUri(alert.toURI()).get(), schemaStore.getByUri(update.toURI()).get()) == 0);
+    }
+
+    @Test
+    public void compareVerbFieldRef() {
+        SchemaStore schemaStore = new SchemaStoreImpl();
+        File update = new File("target/test-classes/verbs/update.json");
+        schemaStore.create(update.toURI());
+        File object = new File("target/test-classes/object.json");
+        schemaStore.create(object.toURI());
+        assert( schemaStore.compare( schemaStore.getByUri(update.toURI()).get(), schemaStore.getByUri(object.toURI()).get()) == 1);
+        Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator();
+        assertContainsItemsEndingWithInOrder(
+                schemaIterator,
+                Lists.newArrayList(
+                        "object.json",
+                        "update.json"
+                )
+        );
+    }
+
+    @Test
+    public void compareObjectTypeFieldRef() {
+        SchemaStore schemaStore = new SchemaStoreImpl();
+        File alert = new File("target/test-classes/objectTypes/alert.json");
+        schemaStore.create(alert.toURI());
+        File media_link = new File("target/test-classes/media_link.json");
+        schemaStore.create(media_link.toURI());
+        assert( schemaStore.compare( schemaStore.getByUri(media_link.toURI()).get(), schemaStore.getByUri(alert.toURI()).get()) == -1);
+        Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator();
+        assertContainsItemsEndingWithInOrder(
+                schemaIterator,
+                Lists.newArrayList(
+                        "media_link.json",
+                        "object.json",
+                        "alert.json"
+                )
+        );
+    }
+
+    @Test
+    public void compareVerbAncestorIndirect() {
+        SchemaStore schemaStore = new SchemaStoreImpl();
+        File update = new File("target/test-classes/verbs/update.json");
+        schemaStore.create(update.toURI());
+        File media_link = new File("target/test-classes/media_link.json");
+        schemaStore.create(media_link.toURI());
+        assert( schemaStore.getByUri(media_link.toURI()).isPresent());
+        assert( schemaStore.getByUri(update.toURI()).isPresent());
+        assert( schemaStore.compare( schemaStore.getByUri(media_link.toURI()).get(), schemaStore.getByUri(update.toURI()).get()) == -1);
+        Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator();
+        assertContainsItemsEndingWithInOrder(
+                schemaIterator,
+                Lists.newArrayList(
+                        "media_link.json",
+                        "update.json"
+                )
+        );
+    }
+
+
+    public void assertContainsItemsEndingWithInOrder(Iterator<Schema> iterator, List<String> items) {
+        for( String item : items ) {
+            Optional<Schema> tryFind = Iterators.tryFind( iterator, new SchemaUriEndsWithPredicate(item) );
+            assert( tryFind.isPresent() );
+        }
+    }
+
+    public class SchemaUriEndsWithPredicate implements Predicate<Schema> {
+
+        private String endsWith;
+
+        public SchemaUriEndsWithPredicate(String endsWith) {
+            this.endsWith = endsWith;
+        }
+
+        @Override
+        public boolean apply(Schema input) {
+            return input.getURI().getPath().endsWith(endsWith);
+        }
+
+        @Override
+        public boolean equals(Object object) {
+            return false;
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaStoreTest.java
----------------------------------------------------------------------
diff --git a/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaStoreTest.java b/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaStoreTest.java
new file mode 100644
index 0000000..9aa7661
--- /dev/null
+++ b/streams-util/src/test/java/org/apache/streams/util/schema/test/SchemaStoreTest.java
@@ -0,0 +1,71 @@
+package org.apache.streams.util.schema.test;
+
+import org.apache.streams.util.schema.Schema;
+import org.apache.streams.util.schema.SchemaStore;
+import org.apache.streams.util.schema.SchemaStoreImpl;
+import org.junit.Test;
+
+import java.io.File;
+import java.net.URI;
+
+/**
+ * Created by sblackmon on 5/2/16.
+ */
+public class SchemaStoreTest {
+
+    @Test
+    public void indexMediaLink() {
+        SchemaStore schemaStore = new SchemaStoreImpl();
+        File file = new File("target/test-classes/media_link.json");
+        schemaStore.create(file.toURI());
+        assert( schemaStore.getFileUriCount() == 1);
+        assert( schemaStore.getByUri(file.toURI()).isPresent());
+        assert( schemaStore.getById(schemaStore.getByUri(file.toURI()).get().getId()).isPresent());
+    }
+
+    @Test
+    public void indexApprove() {
+        SchemaStore schemaStore = new SchemaStoreImpl();
+        File file = new File("target/test-classes/verbs/approve.json");
+        schemaStore.create(file.toURI());
+        assert( schemaStore.getFileUriCount() == 4);
+        assert( schemaStore.getByUri(file.toURI()).isPresent());
+        assert( schemaStore.getById(schemaStore.getByUri(file.toURI()).get().getId()).isPresent());
+    }
+
+    @Test
+    public void indexCollection() {
+        SchemaStore schemaStore = new SchemaStoreImpl();
+        File file = new File("target/test-classes/collection.json");
+        schemaStore.create(file.toURI());
+        assert( schemaStore.getFileUriCount() == 3);
+        assert( schemaStore.getByUri(file.toURI()).isPresent());
+        assert( schemaStore.getById(schemaStore.getByUri(file.toURI()).get().getId()).isPresent());
+        Schema collection = schemaStore.getByUri(file.toURI()).get();
+        assert( collection.getParent() == null );
+        assert( schemaStore.getById(
+                URI.create("http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/object.json#"
+                )).isPresent());
+    }
+
+    @Test
+    public void indexUpdate() {
+        SchemaStore schemaStore = new SchemaStoreImpl();
+        File file = new File("target/test-classes/verbs/update.json");
+        schemaStore.create(file.toURI());
+        assert( schemaStore.getFileUriCount() == 4);
+        assert( schemaStore.getByUri(file.toURI()).isPresent());
+        assert( schemaStore.getById(schemaStore.getByUri(file.toURI()).get().getId()).isPresent());
+        Schema update = schemaStore.getByUri(file.toURI()).get();
+        assert( update.getParent() != null );
+        assert( update.getParent().getId().getScheme().equals("http"));
+        assert( update.getParent().getId().getHost().equals("streams.incubator.apache.org"));
+        assert( update.getParent().getId().getPath().startsWith("/site/0.3-incubating-SNAPSHOT/streams-schemas"));
+        assert( update.getParent().getId().getPath().endsWith("activity.json"));
+    }
+
+    // test create from messed up URI
+
+    // test create from URI with messed up reference
+
+}



[20/53] [abbrv] incubator-streams git commit: WIP for apachecon

Posted by mf...@apache.org.
WIP for apachecon


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/1bc84dbc
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/1bc84dbc
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/1bc84dbc

Branch: refs/heads/invalid_headers
Commit: 1bc84dbc614cc0537e3238a6786a005f609b429c
Parents: 114c1c5
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Fri May 6 19:45:12 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Jun 1 12:51:43 2016 -0500

----------------------------------------------------------------------
 pom.xml                                         |  10 -
 streams-config/pom.xml                          |   2 +-
 .../spring/streams-cassandra-context.xml        |  25 ++
 .../src/main/jsonschema/com/twitter/tweet.json  |   6 +-
 streams-plugins/pom.xml                         |   4 +
 .../streams-plugin-cassandra/pom.xml            | 244 ++++++++++++
 .../StreamsCassandraGenerationConfig.java       |  81 ++++
 .../StreamsCassandraResourceGenerator.java      | 376 +++++++++++++++++++
 .../StreamsCassandraResourceGeneratorMojo.java  |  93 +++++
 .../src/site/markdown/index.md                  |  22 ++
 ...treamsCassandraResourceGeneratorCLITest.java |  50 +++
 ...reamsCassandraResourceGeneratorMojoTest.java |  75 ++++
 .../StreamsCassandraResourceGeneratorTest.java  | 124 ++++++
 .../resources/streams-plugin-cassandra/pom.xml  |  75 ++++
 .../streams-plugin-elasticsearch/pom.xml        | 245 ++++++++++++
 .../StreamsElasticsearchGenerationConfig.java   |  81 ++++
 .../StreamsElasticsearchResourceGenerator.java  | 373 ++++++++++++++++++
 ...reamsElasticsearchResourceGeneratorMojo.java |  93 +++++
 .../src/site/markdown/index.md                  |  22 ++
 ...sElasticsearchResourceGeneratorMojoTest.java |  50 +++
 ...reamsElasticsearchResourceGeneratorTest.java | 139 +++++++
 .../streams-plugin-elasticsearch/pom.xml        |  75 ++++
 streams-plugins/streams-plugin-hbase/pom.xml    | 244 ++++++++++++
 .../hbase/StreamsHbaseGenerationConfig.java     |  90 +++++
 .../hbase/StreamsHbaseResourceGenerator.java    | 204 ++++++++++
 .../StreamsHbaseResourceGeneratorMojo.java      |  93 +++++
 .../src/site/markdown/index.md                  |  22 ++
 .../StreamsHbaseResourceGeneratorCLITest.java   |  41 ++
 .../StreamsHbaseResourceGeneratorMojoTest.java  |  65 ++++
 .../test/StreamsHbaseResourceGeneratorTest.java | 125 ++++++
 .../test/resources/streams-plugin-hbase/pom.xml |  76 ++++
 streams-plugins/streams-plugin-hive/pom.xml     |   6 +
 .../hive/StreamsHiveResourceGenerator.java      |   7 +-
 .../hive/StreamsHiveResourceGeneratorMojo.java  |  33 +-
 .../src/site/markdown/index.md                  |  22 ++
 .../StreamsHiveResourceGeneratorCLITest.java    |  41 ++
 .../StreamsHiveResourceGeneratorMojoTest.java   |  64 ++++
 .../test/StreamsHiveResourceGeneratorTest.java  |  21 +-
 .../test/resources/streams-plugin-hive/pom.xml  |  41 +-
 streams-plugins/streams-plugin-pig/pom.xml      | 244 ++++++++++++
 .../plugins/pig/StreamsPigGenerationConfig.java |  84 +++++
 .../pig/StreamsPigResourceGenerator.java        | 317 ++++++++++++++++
 .../pig/StreamsPigResourceGeneratorMojo.java    |  93 +++++
 .../src/site/markdown/index.md                  |  22 ++
 .../StreamsPigResourceGeneratorCLITest.java     |  39 ++
 .../StreamsPigResourceGeneratorMojoTest.java    |  64 ++++
 .../test/StreamsPigResourceGeneratorTest.java   | 122 ++++++
 .../src/test/resources/expected/media_link.pig  |   1 +
 .../resources/expected/objectTypes/file.pig     |   1 +
 .../expected/objectTypes/photo-album.pig        |   1 +
 .../test/resources/streams-plugin-pig/pom.xml   |  75 ++++
 streams-plugins/streams-plugin-pojo/pom.xml     |   7 -
 .../plugins/StreamsPojoSourceGenerator.java     |  16 +-
 .../plugins/StreamsPojoSourceGeneratorMojo.java |  43 +--
 .../src/site/markdown/index.md                  |  22 ++
 .../test/StreamsPojoSourceGeneratorCLITest.java |  43 +++
 .../StreamsPojoSourceGeneratorMojoTest.java     |  68 +---
 .../test/StreamsPojoSourceGeneratorTest.java    |  28 +-
 .../test/resources/streams-plugin-pojo/pom.xml  |   1 +
 .../org/apache/streams/schema/FieldUtil.java    |  30 ++
 .../org/apache/streams/schema/FileUtil.java     |  13 +-
 .../apache/streams/schema/GenerationConfig.java |   4 +-
 .../org/apache/streams/schema/SchemaUtil.java   |   4 +-
 .../src/main/jsonschema/activity.json           |  10 +-
 .../src/main/jsonschema/collection.json         |   2 +-
 .../src/main/jsonschema/media_link.json         |   2 +-
 streams-schemas/src/main/jsonschema/object.json |   6 +-
 .../src/main/jsonschema/objectTypes/alert.json  |   2 +-
 .../jsonschema/objectTypes/application.json     |   2 +-
 .../main/jsonschema/objectTypes/article.json    |   2 +-
 .../src/main/jsonschema/objectTypes/audio.json  |   2 +-
 .../src/main/jsonschema/objectTypes/badge.json  |   2 +-
 .../src/main/jsonschema/objectTypes/binary.json |   2 +-
 .../main/jsonschema/objectTypes/bookmark.json   |   2 +-
 .../main/jsonschema/objectTypes/comment.json    |   2 +-
 .../src/main/jsonschema/objectTypes/device.json |   2 +-
 .../src/main/jsonschema/objectTypes/event.json  |   2 +-
 .../src/main/jsonschema/objectTypes/file.json   |   2 +-
 .../src/main/jsonschema/objectTypes/folder.json |   2 +-
 .../src/main/jsonschema/objectTypes/game.json   |   2 +-
 .../src/main/jsonschema/objectTypes/group.json  |   2 +-
 .../src/main/jsonschema/objectTypes/image.json  |   2 +-
 .../src/main/jsonschema/objectTypes/issue.json  |   2 +-
 .../src/main/jsonschema/objectTypes/job.json    |   2 +-
 .../src/main/jsonschema/objectTypes/list.json   |   2 +-
 .../src/main/jsonschema/objectTypes/note.json   |   2 +-
 .../src/main/jsonschema/objectTypes/offer.json  |   2 +-
 .../jsonschema/objectTypes/organization.json    |   2 +-
 .../src/main/jsonschema/objectTypes/page.json   |   2 +-
 .../main/jsonschema/objectTypes/permission.json |   2 +-
 .../src/main/jsonschema/objectTypes/person.json |   2 +-
 .../jsonschema/objectTypes/photo-album.json     |   2 +-
 .../src/main/jsonschema/objectTypes/photo.json  |   2 +-
 .../src/main/jsonschema/objectTypes/place.json  |  18 +-
 .../main/jsonschema/objectTypes/playlist.json   |   2 +-
 .../main/jsonschema/objectTypes/process.json    |   2 +-
 .../main/jsonschema/objectTypes/product.json    |   2 +-
 .../main/jsonschema/objectTypes/property.json   |   2 +-
 .../main/jsonschema/objectTypes/question.json   |   2 +-
 .../src/main/jsonschema/objectTypes/review.json |   2 +-
 .../src/main/jsonschema/objectTypes/role.json   |   2 +-
 .../main/jsonschema/objectTypes/service.json    |   2 +-
 .../src/main/jsonschema/objectTypes/song.json   |   2 +-
 .../src/main/jsonschema/objectTypes/status.json |   2 +-
 .../src/main/jsonschema/objectTypes/task.json   |   2 +-
 .../src/main/jsonschema/objectTypes/team.json   |   2 +-
 .../src/main/jsonschema/objectTypes/video.json  |   2 +-
 .../src/main/jsonschema/verbs/accept.json       |   2 +-
 .../src/main/jsonschema/verbs/access.json       |   2 +-
 .../src/main/jsonschema/verbs/acknowledge.json  |   2 +-
 .../src/main/jsonschema/verbs/add.json          |   2 +-
 .../src/main/jsonschema/verbs/agree.json        |   2 +-
 .../src/main/jsonschema/verbs/append.json       |   2 +-
 .../src/main/jsonschema/verbs/approve.json      |   2 +-
 .../src/main/jsonschema/verbs/archive.json      |   2 +-
 .../src/main/jsonschema/verbs/assign.json       |   2 +-
 .../src/main/jsonschema/verbs/at.json           |   2 +-
 .../src/main/jsonschema/verbs/attach.json       |   2 +-
 .../src/main/jsonschema/verbs/attend.json       |   2 +-
 .../src/main/jsonschema/verbs/author.json       |   2 +-
 .../src/main/jsonschema/verbs/authorize.json    |   2 +-
 .../src/main/jsonschema/verbs/borrow.json       |   2 +-
 .../src/main/jsonschema/verbs/build.json        |   2 +-
 .../src/main/jsonschema/verbs/cancel.json       |   2 +-
 .../src/main/jsonschema/verbs/checkin.json      |   2 +-
 .../src/main/jsonschema/verbs/close.json        |   2 +-
 .../src/main/jsonschema/verbs/complete.json     |   2 +-
 .../src/main/jsonschema/verbs/confirm.json      |   2 +-
 .../src/main/jsonschema/verbs/consume.json      |   2 +-
 .../src/main/jsonschema/verbs/create.json       |   2 +-
 .../src/main/jsonschema/verbs/delete.json       |   2 +-
 .../src/main/jsonschema/verbs/deliver.json      |   2 +-
 .../src/main/jsonschema/verbs/deny.json         |   2 +-
 .../src/main/jsonschema/verbs/disagree.json     |   2 +-
 .../src/main/jsonschema/verbs/dislike.json      |   2 +-
 .../src/main/jsonschema/verbs/experience.json   |   2 +-
 .../src/main/jsonschema/verbs/favorite.json     |   2 +-
 .../src/main/jsonschema/verbs/find.json         |   2 +-
 .../jsonschema/verbs/flag-as-inappropriate.json |   2 +-
 .../src/main/jsonschema/verbs/follow.json       |   2 +-
 .../src/main/jsonschema/verbs/give.json         |   2 +-
 .../src/main/jsonschema/verbs/host.json         |   2 +-
 .../src/main/jsonschema/verbs/ignore.json       |   2 +-
 .../src/main/jsonschema/verbs/insert.json       |   2 +-
 .../src/main/jsonschema/verbs/install.json      |   2 +-
 .../src/main/jsonschema/verbs/interact.json     |   2 +-
 .../src/main/jsonschema/verbs/invite.json       |   2 +-
 .../src/main/jsonschema/verbs/join.json         |   2 +-
 .../src/main/jsonschema/verbs/leave.json        |   2 +-
 .../src/main/jsonschema/verbs/like.json         |   2 +-
 .../src/main/jsonschema/verbs/listen.json       |   2 +-
 .../src/main/jsonschema/verbs/lose.json         |   2 +-
 .../src/main/jsonschema/verbs/make-friend.json  |   2 +-
 .../src/main/jsonschema/verbs/open.json         |   2 +-
 .../src/main/jsonschema/verbs/play.json         |   2 +-
 .../src/main/jsonschema/verbs/post.json         |   2 +-
 .../src/main/jsonschema/verbs/present.json      |   2 +-
 .../src/main/jsonschema/verbs/purchase.json     |   2 +-
 .../src/main/jsonschema/verbs/qualify.json      |   2 +-
 .../src/main/jsonschema/verbs/read.json         |   2 +-
 .../src/main/jsonschema/verbs/receive.json      |   2 +-
 .../src/main/jsonschema/verbs/reject.json       |   2 +-
 .../main/jsonschema/verbs/remove-friend.json    |   2 +-
 .../src/main/jsonschema/verbs/remove.json       |   2 +-
 .../src/main/jsonschema/verbs/replace.json      |   2 +-
 .../main/jsonschema/verbs/request-friend.json   |   2 +-
 .../src/main/jsonschema/verbs/request.json      |   2 +-
 .../src/main/jsonschema/verbs/resolve.json      |   2 +-
 .../src/main/jsonschema/verbs/retract.json      |   2 +-
 .../src/main/jsonschema/verbs/return.json       |   2 +-
 .../src/main/jsonschema/verbs/rsvp-maybe.json   |   2 +-
 .../src/main/jsonschema/verbs/rsvp-no.json      |   2 +-
 .../src/main/jsonschema/verbs/rsvp-yes.json     |   2 +-
 .../src/main/jsonschema/verbs/satisfy.json      |   2 +-
 .../src/main/jsonschema/verbs/save.json         |   2 +-
 .../src/main/jsonschema/verbs/schedule.json     |   2 +-
 .../src/main/jsonschema/verbs/search.json       |   4 +-
 .../src/main/jsonschema/verbs/sell.json         |   2 +-
 .../src/main/jsonschema/verbs/send.json         |  10 +-
 .../src/main/jsonschema/verbs/share.json        |   2 +-
 .../src/main/jsonschema/verbs/sponsor.json      |   2 +-
 .../src/main/jsonschema/verbs/start.json        |   2 +-
 .../main/jsonschema/verbs/stop-following.json   |   4 +-
 .../src/main/jsonschema/verbs/submit.json       |   2 +-
 .../src/main/jsonschema/verbs/tag.json          |   2 +-
 .../src/main/jsonschema/verbs/terminate.json    |   2 +-
 .../src/main/jsonschema/verbs/tie.json          |   2 +-
 .../src/main/jsonschema/verbs/unfavorite.json   |   2 +-
 .../src/main/jsonschema/verbs/unlike.json       |   2 +-
 .../src/main/jsonschema/verbs/unsatisfy.json    |   2 +-
 .../src/main/jsonschema/verbs/unsave.json       |   2 +-
 .../src/main/jsonschema/verbs/unshare.json      |   2 +-
 .../src/main/jsonschema/verbs/update.json       |   2 +-
 .../src/main/jsonschema/verbs/use.json          |   2 +-
 .../src/main/jsonschema/verbs/watch.json        |   2 +-
 .../src/main/jsonschema/verbs/win.json          |   2 +-
 .../src/site/resources/activity.json            | 108 ------
 streams-schemas/src/site/resources/activity.xsd |  94 -----
 .../src/site/resources/collection.json          |  47 ---
 .../src/site/resources/media_link.json          |  34 --
 streams-schemas/src/site/resources/object.json  |  98 -----
 .../src/site/resources/objectTypes/alert.json   |  19 -
 .../site/resources/objectTypes/application.json |  19 -
 .../src/site/resources/objectTypes/article.json |  19 -
 .../src/site/resources/objectTypes/audio.json   |  19 -
 .../src/site/resources/objectTypes/badge.json   |  19 -
 .../src/site/resources/objectTypes/binary.json  |  19 -
 .../site/resources/objectTypes/bookmark.json    |  19 -
 .../src/site/resources/objectTypes/comment.json |  19 -
 .../src/site/resources/objectTypes/device.json  |  19 -
 .../src/site/resources/objectTypes/event.json   |  51 ---
 .../src/site/resources/objectTypes/file.json    |  25 --
 .../src/site/resources/objectTypes/folder.json  |  19 -
 .../src/site/resources/objectTypes/game.json    |  19 -
 .../src/site/resources/objectTypes/group.json   |  19 -
 .../src/site/resources/objectTypes/image.json   |  22 --
 .../src/site/resources/objectTypes/issue.json   |  25 --
 .../src/site/resources/objectTypes/job.json     |  19 -
 .../src/site/resources/objectTypes/list.json    |  28 --
 .../src/site/resources/objectTypes/note.json    |  19 -
 .../src/site/resources/objectTypes/offer.json   |  19 -
 .../resources/objectTypes/organization.json     |  19 -
 .../src/site/resources/objectTypes/page.json    |  19 -
 .../site/resources/objectTypes/permission.json  |  36 --
 .../src/site/resources/objectTypes/person.json  |  25 --
 .../site/resources/objectTypes/photo-album.json |  19 -
 .../src/site/resources/objectTypes/photo.json   |  23 --
 .../src/site/resources/objectTypes/place.json   |  43 ---
 .../site/resources/objectTypes/playlist.json    |  19 -
 .../src/site/resources/objectTypes/process.json |  19 -
 .../src/site/resources/objectTypes/product.json |  25 --
 .../site/resources/objectTypes/property.json    |  48 ---
 .../site/resources/objectTypes/question.json    |  28 --
 .../src/site/resources/objectTypes/review.json  |  22 --
 .../src/site/resources/objectTypes/role.json    |  25 --
 .../src/site/resources/objectTypes/service.json |  19 -
 .../src/site/resources/objectTypes/song.json    |  19 -
 .../src/site/resources/objectTypes/status.json  |  19 -
 .../src/site/resources/objectTypes/task.json    |  40 --
 .../src/site/resources/objectTypes/team.json    |  19 -
 .../src/site/resources/objectTypes/video.json   |  19 -
 .../src/site/resources/verbs/accept.json        |  24 --
 .../src/site/resources/verbs/access.json        |  24 --
 .../src/site/resources/verbs/acknowledge.json   |  24 --
 .../src/site/resources/verbs/add.json           |  24 --
 .../src/site/resources/verbs/agree.json         |  24 --
 .../src/site/resources/verbs/append.json        |  24 --
 .../src/site/resources/verbs/approve.json       |  24 --
 .../src/site/resources/verbs/archive.json       |  24 --
 .../src/site/resources/verbs/assign.json        |  24 --
 .../src/site/resources/verbs/at.json            |  24 --
 .../src/site/resources/verbs/attach.json        |  24 --
 .../src/site/resources/verbs/attend.json        |  24 --
 .../src/site/resources/verbs/author.json        |  24 --
 .../src/site/resources/verbs/authorize.json     |  24 --
 .../src/site/resources/verbs/borrow.json        |  24 --
 .../src/site/resources/verbs/build.json         |  24 --
 .../src/site/resources/verbs/cancel.json        |  24 --
 .../src/site/resources/verbs/checkin.json       |  24 --
 .../src/site/resources/verbs/close.json         |  24 --
 .../src/site/resources/verbs/complete.json      |  24 --
 .../src/site/resources/verbs/confirm.json       |  24 --
 .../src/site/resources/verbs/consume.json       |  24 --
 .../src/site/resources/verbs/create.json        |  24 --
 .../src/site/resources/verbs/delete.json        |  24 --
 .../src/site/resources/verbs/deliver.json       |  24 --
 .../src/site/resources/verbs/deny.json          |  24 --
 .../src/site/resources/verbs/disagree.json      |  24 --
 .../src/site/resources/verbs/dislike.json       |  24 --
 .../src/site/resources/verbs/experience.json    |  24 --
 .../src/site/resources/verbs/favorite.json      |  24 --
 .../src/site/resources/verbs/find.json          |  24 --
 .../resources/verbs/flag-as-inappropriate.json  |  24 --
 .../src/site/resources/verbs/follow.json        |  24 --
 .../src/site/resources/verbs/give.json          |  24 --
 .../src/site/resources/verbs/host.json          |  24 --
 .../src/site/resources/verbs/ignore.json        |  24 --
 .../src/site/resources/verbs/insert.json        |  24 --
 .../src/site/resources/verbs/install.json       |  24 --
 .../src/site/resources/verbs/interact.json      |  24 --
 .../src/site/resources/verbs/invite.json        |  24 --
 .../src/site/resources/verbs/join.json          |  24 --
 .../src/site/resources/verbs/leave.json         |  24 --
 .../src/site/resources/verbs/like.json          |  24 --
 .../src/site/resources/verbs/listen.json        |  24 --
 .../src/site/resources/verbs/lose.json          |  24 --
 .../src/site/resources/verbs/make-friend.json   |  24 --
 .../src/site/resources/verbs/open.json          |  24 --
 .../src/site/resources/verbs/play.json          |  24 --
 .../src/site/resources/verbs/post.json          |  24 --
 .../src/site/resources/verbs/present.json       |  24 --
 .../src/site/resources/verbs/purchase.json      |  24 --
 .../src/site/resources/verbs/qualify.json       |  24 --
 .../src/site/resources/verbs/read.json          |  24 --
 .../src/site/resources/verbs/receive.json       |  24 --
 .../src/site/resources/verbs/reject.json        |  24 --
 .../src/site/resources/verbs/remove-friend.json |  24 --
 .../src/site/resources/verbs/remove.json        |  24 --
 .../src/site/resources/verbs/replace.json       |  24 --
 .../site/resources/verbs/request-friend.json    |  24 --
 .../src/site/resources/verbs/request.json       |  24 --
 .../src/site/resources/verbs/resolve.json       |  24 --
 .../src/site/resources/verbs/retract.json       |  24 --
 .../src/site/resources/verbs/return.json        |  24 --
 .../src/site/resources/verbs/rsvp-maybe.json    |  24 --
 .../src/site/resources/verbs/rsvp-no.json       |  24 --
 .../src/site/resources/verbs/rsvp-yes.json      |  24 --
 .../src/site/resources/verbs/satisfy.json       |  24 --
 .../src/site/resources/verbs/save.json          |  24 --
 .../src/site/resources/verbs/schedule.json      |  24 --
 .../src/site/resources/verbs/search.json        |  24 --
 .../src/site/resources/verbs/sell.json          |  24 --
 .../src/site/resources/verbs/send.json          |  24 --
 .../src/site/resources/verbs/share.json         |  24 --
 .../src/site/resources/verbs/sponsor.json       |  24 --
 .../src/site/resources/verbs/start.json         |  24 --
 .../site/resources/verbs/stop-following.json    |  24 --
 .../src/site/resources/verbs/submit.json        |  24 --
 .../src/site/resources/verbs/tag.json           |  24 --
 .../src/site/resources/verbs/terminate.json     |  24 --
 .../src/site/resources/verbs/tie.json           |  24 --
 .../src/site/resources/verbs/unfavorite.json    |  24 --
 .../src/site/resources/verbs/unlike.json        |  24 --
 .../src/site/resources/verbs/unsatisfy.json     |  24 --
 .../src/site/resources/verbs/unsave.json        |  24 --
 .../src/site/resources/verbs/unshare.json       |  24 --
 .../src/site/resources/verbs/update.json        |  34 --
 .../src/site/resources/verbs/use.json           |  24 --
 .../src/site/resources/verbs/watch.json         |  24 --
 .../src/site/resources/verbs/win.json           |  24 --
 .../schema/test/SchemaOrderingTests.java        | 146 +++++++
 .../streams/schema/test/SchemaStoreTests.java   |  76 ++++
 .../src/test/resources/activities/accept.json   |  16 +
 .../src/test/resources/activities/access.json   |  17 +
 .../test/resources/activities/acknowledge.json  |  16 +
 .../src/test/resources/activities/add.json      |  21 ++
 .../src/test/resources/activities/agree.json    |  15 +
 .../src/test/resources/activities/append.json   |  16 +
 .../src/test/resources/activities/approve.json  |  20 +
 .../src/test/resources/activities/archive.json  |  15 +
 .../src/test/resources/activities/assign.json   |  20 +
 .../src/test/resources/activities/at.json       |  15 +
 .../src/test/resources/activities/attach.json   |  20 +
 .../src/test/resources/activities/attend.json   |  15 +
 .../src/test/resources/activities/author.json   |  15 +
 .../test/resources/activities/authorize.json    |  23 ++
 .../src/test/resources/activities/borrow.json   |  21 ++
 .../src/test/resources/activities/build.json    |  16 +
 .../src/test/resources/activities/cancel.json   |  16 +
 .../src/test/resources/activities/checkin.json  |  16 +
 .../src/test/resources/activities/close.json    |  16 +
 .../src/test/resources/activities/complete.json |  16 +
 .../src/test/resources/activities/confirm.json  |  17 +
 .../src/test/resources/activities/consume.json  |  16 +
 .../src/test/resources/activities/create.json   |  15 +
 .../src/test/resources/activities/delete.json   |  16 +
 .../src/test/resources/activities/deliver.json  |  20 +
 .../src/test/resources/activities/deny.json     |  23 ++
 .../src/test/resources/activities/disagree.json |  30 ++
 .../src/test/resources/activities/dislike.json  |  15 +
 .../test/resources/activities/experience.json   |  16 +
 .../src/test/resources/activities/favorite.json |  15 +
 .../src/test/resources/activities/find.json     |  19 +
 .../activities/flag-as-inappropriate.json       |  24 ++
 .../src/test/resources/activities/follow.json   |  15 +
 .../src/test/resources/activities/give.json     |  28 ++
 .../src/test/resources/activities/host.json     |  15 +
 .../src/test/resources/activities/ignore.json   |  15 +
 .../src/test/resources/activities/insert.json   |  19 +
 .../src/test/resources/activities/install.json  |  18 +
 .../src/test/resources/activities/interact.json |  16 +
 .../src/test/resources/activities/invite.json   |  19 +
 .../src/test/resources/activities/join.json     |  15 +
 .../src/test/resources/activities/leave.json    |  15 +
 .../src/test/resources/activities/like.json     |  22 ++
 .../src/test/resources/activities/listen.json   |  15 +
 .../src/test/resources/activities/lose.json     |  15 +
 .../test/resources/activities/make-friend.json  |  15 +
 .../src/test/resources/activities/open.json     |  15 +
 .../src/test/resources/activities/play.json     |  15 +
 .../src/test/resources/activities/post.json     |  25 ++
 .../src/test/resources/activities/present.json  |  15 +
 .../src/test/resources/activities/purchase.json |  16 +
 .../src/test/resources/activities/qualify.json  |  15 +
 .../src/test/resources/activities/read.json     |  16 +
 .../src/test/resources/activities/receive.json  |  16 +
 .../src/test/resources/activities/reject.json   |  15 +
 .../resources/activities/remove-friend.json     |  15 +
 .../src/test/resources/activities/remove.json   |  23 ++
 .../src/test/resources/activities/replace.json  |  19 +
 .../resources/activities/request-friend.json    |  16 +
 .../src/test/resources/activities/request.json  |  23 ++
 .../src/test/resources/activities/resolve.json  |  15 +
 .../src/test/resources/activities/retract.json  |  26 ++
 .../src/test/resources/activities/return.json   |  19 +
 .../test/resources/activities/rsvp-maybe.json   |  16 +
 .../src/test/resources/activities/rsvp-no.json  |  16 +
 .../src/test/resources/activities/rsvp-yes.json |  16 +
 .../src/test/resources/activities/satisfy.json  |  21 ++
 .../src/test/resources/activities/save.json     |  20 +
 .../src/test/resources/activities/schedule.json |  15 +
 .../src/test/resources/activities/search.json   |  21 ++
 .../src/test/resources/activities/sell.json     |  19 +
 .../src/test/resources/activities/send.json     |  19 +
 .../src/test/resources/activities/share.json    |  16 +
 .../src/test/resources/activities/sponsor.json  |  17 +
 .../src/test/resources/activities/start.json    |  15 +
 .../resources/activities/stop-following.json    |  15 +
 .../src/test/resources/activities/submit.json   |  15 +
 .../src/test/resources/activities/tag.json      |  19 +
 .../test/resources/activities/terminate.json    |  15 +
 .../src/test/resources/activities/tie.json      |  24 ++
 .../test/resources/activities/unfavorite.json   |  15 +
 .../src/test/resources/activities/unlike.json   |  15 +
 .../test/resources/activities/unsatisfy.json    |  20 +
 .../src/test/resources/activities/unsave.json   |  15 +
 .../src/test/resources/activities/unshare.json  |  15 +
 .../src/test/resources/activities/update.json   |  15 +
 .../src/test/resources/activities/use.json      |  15 +
 .../src/test/resources/activities/watch.json    |  16 +
 .../src/test/resources/activities/win.json      |  15 +
 .../src/test/resources/media_link.json          |   7 +
 .../src/test/resources/objects/event.json       |  18 +
 .../src/test/resources/objects/group.json       |  16 +
 .../src/test/resources/objects/issue.json       |   9 +
 .../src/test/resources/objects/note.json        |  12 +
 .../src/test/resources/objects/permission.json  |   9 +
 .../src/test/resources/objects/place.json       |   9 +
 .../src/test/resources/objects/task.json        |  16 +
 .../src/test/resources/objects/video.json       |   8 +
 430 files changed, 6688 insertions(+), 3771 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 6010572..08058ab 100644
--- a/pom.xml
+++ b/pom.xml
@@ -81,12 +81,6 @@
             <subscribe>dev-subscribe@streams.incubator.apache.org</subscribe>
             <unsubscribe>dev-unsubscribe@streams.incubator.apache.org</unsubscribe>
         </mailingList>
-        <mailingList>
-            <name>User Mailing List</name>
-            <post>user@streams.incubator.apache.org</post>
-            <subscribe>user-subscribe@streams.incubator.apache.org</subscribe>
-            <unsubscribe>user-unsubscribe@streams.incubator.apache.org</unsubscribe>
-        </mailingList>
     </mailingLists>
 
     <repositories>
@@ -185,10 +179,6 @@
 
     <packaging>pom</packaging>
 
-    <properties>
-        <jsonschema2pojo.version>0.4.22</jsonschema2pojo.version>
-    </properties>
-
     <build>
         <plugins>
             <plugin>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-config/pom.xml
----------------------------------------------------------------------
diff --git a/streams-config/pom.xml b/streams-config/pom.xml
index 38d5554..f4a8ebc 100644
--- a/streams-config/pom.xml
+++ b/streams-config/pom.xml
@@ -111,7 +111,7 @@
                         </goals>
                         <configuration>
                             <sources>
-                                <source>target/generated-sources/jsonschema2pojo</source>
+                                <source>${project.basedir}/target/generated-sources/jsonschema2pojo</source>
                             </sources>
                         </configuration>
                     </execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-contrib/streams-persist-cassandra/src/site/resources/META_INF/spring/streams-cassandra-context.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-persist-cassandra/src/site/resources/META_INF/spring/streams-cassandra-context.xml b/streams-contrib/streams-persist-cassandra/src/site/resources/META_INF/spring/streams-cassandra-context.xml
new file mode 100644
index 0000000..842c918
--- /dev/null
+++ b/streams-contrib/streams-persist-cassandra/src/site/resources/META_INF/spring/streams-cassandra-context.xml
@@ -0,0 +1,25 @@
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+<beans
+        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xmlns="http://www.springframework.org/schema/beans"
+        xmlns:context="http://www.springframework.org/schema/context"
+        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
+        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
+
+</beans>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-contrib/streams-provider-twitter/src/main/jsonschema/com/twitter/tweet.json
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-twitter/src/main/jsonschema/com/twitter/tweet.json b/streams-contrib/streams-provider-twitter/src/main/jsonschema/com/twitter/tweet.json
index 34ca3fa..bdd2201 100644
--- a/streams-contrib/streams-provider-twitter/src/main/jsonschema/com/twitter/tweet.json
+++ b/streams-contrib/streams-provider-twitter/src/main/jsonschema/com/twitter/tweet.json
@@ -97,9 +97,9 @@
                              },
                              "indices": {
                                  "type": "array",
-                                 "items": [{
-                                         "type": "integer"
-                                 }]
+                                 "items": {
+                                     "type": "integer"
+                                 }
                              }
                           }
                     }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/pom.xml b/streams-plugins/pom.xml
index b90e2d5..5d403ac 100644
--- a/streams-plugins/pom.xml
+++ b/streams-plugins/pom.xml
@@ -36,7 +36,11 @@
     </properties>
 
     <modules>
+        <module>streams-plugin-cassandra</module>
+        <module>streams-plugin-elasticsearch</module>
+        <module>streams-plugin-hbase</module>
         <module>streams-plugin-hive</module>
+        <module>streams-plugin-pig</module>
         <module>streams-plugin-pojo</module>
  	</modules>
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-cassandra/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/pom.xml b/streams-plugins/streams-plugin-cassandra/pom.xml
new file mode 100644
index 0000000..b2dbf36
--- /dev/null
+++ b/streams-plugins/streams-plugin-cassandra/pom.xml
@@ -0,0 +1,244 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.streams.plugins</groupId>
+    <artifactId>streams-plugin-cassandra</artifactId>
+    <version>0.3-incubating-SNAPSHOT</version>
+    <packaging>maven-plugin</packaging>
+
+    <parent>
+        <groupId>org.apache.streams</groupId>
+        <artifactId>streams-plugins</artifactId>
+        <version>0.3-incubating-SNAPSHOT</version>
+        <relativePath>..</relativePath>
+    </parent>
+
+    <properties>
+        <cassandra.version>3.0.0</cassandra.version>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-config</artifactId>
+            <version>${project.version}</version>
+            <exclusions>
+                <exclusion>
+                    <artifactId>commons-logging</artifactId>
+                    <groupId>commons-logging</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-core</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schemas</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.google.guava</groupId>
+            <artifactId>guava</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.reflections</groupId>
+            <artifactId>reflections</artifactId>
+            <version>0.9.9</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-aether-provider</artifactId>
+            <version>3.3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-artifact</artifactId>
+            <version>3.3.3</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-compat</artifactId>
+            <version>3.3.3</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-core</artifactId>
+            <version>3.3.3</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.sonatype.aether</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven</groupId>
+            <artifactId>maven-plugin-api</artifactId>
+            <version>3.3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-resources-plugin</artifactId>
+            <version>2.7</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.maven</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.shared</groupId>
+            <artifactId>maven-verifier</artifactId>
+            <version>1.6</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.codehaus.plexus</groupId>
+            <artifactId>plexus-utils</artifactId>
+            <version>3.0.15</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-plugin-plugin</artifactId>
+            <version>3.4</version>
+            <exclusions>
+                <exclusion>
+                    <artifactId>commons-logging</artifactId>
+                    <groupId>commons-logging</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-tools-api</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-annotations</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-tools</groupId>
+            <artifactId>maven-plugin-tools-generators</artifactId>
+            <version>3.3</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.maven.plugin-testing</groupId>
+            <artifactId>maven-plugin-testing-harness</artifactId>
+            <version>3.3.0</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-lang</groupId>
+            <artifactId>commons-lang</artifactId>
+            <version>2.6</version>
+        </dependency>
+        <dependency>
+            <groupId>joda-time</groupId>
+            <artifactId>joda-time</artifactId>
+            <version>2.2</version>
+        </dependency>
+        <dependency>
+            <groupId>org.joda</groupId>
+            <artifactId>joda-convert</artifactId>
+            <version>1.8.1</version>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <sourceDirectory>src/main/java</sourceDirectory>
+        <testSourceDirectory>src/test/java</testSourceDirectory>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+            </resource>
+        </resources>
+        <testResources>
+            <testResource>
+                <directory>src/test/resources</directory>
+            </testResource>
+        </testResources>
+        <plugins>
+            <plugin>
+                <artifactId>maven-plugin-plugin</artifactId>
+                <version>3.4</version>
+                <configuration>
+                    <skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>mojo-descriptor</id>
+                        <phase>process-classes</phase>
+                        <goals>
+                            <goal>descriptor</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.reflections</groupId>
+                <artifactId>reflections-maven</artifactId>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>reflections</goal>
+                        </goals>
+                        <phase>process-classes</phase>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>2.4</version>
+                <executions>
+                    <execution>
+                        <id>resource-dependencies</id>
+                        <phase>process-test-resources</phase>
+                        <goals>
+                            <goal>unpack-dependencies</goal>
+                        </goals>
+                        <configuration>
+                            <includeGroupIds>org.apache.streams</includeGroupIds>
+                            <includeArtifactIds>streams-schemas</includeArtifactIds>
+                            <includes>**/*.json</includes>
+                            <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+
+        </plugins>
+    </build>
+
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java
new file mode 100644
index 0000000..28e20e4
--- /dev/null
+++ b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java
@@ -0,0 +1,81 @@
+package org.apache.streams.plugins.cassandra;
+
+import org.apache.streams.schema.GenerationConfig;
+import org.jsonschema2pojo.DefaultGenerationConfig;
+import org.jsonschema2pojo.util.URLUtil;
+
+import java.io.File;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+/**
+ * Configures StreamsHiveResourceGenerator
+ *
+ *
+ */
+public class StreamsCassandraGenerationConfig extends DefaultGenerationConfig implements GenerationConfig {
+
+    public String getSourceDirectory() {
+        return sourceDirectory;
+    }
+
+    public List<String> getSourcePaths() {
+        return sourcePaths;
+    }
+
+    private String sourceDirectory;
+    private List<String> sourcePaths = new ArrayList<String>();
+    private String targetDirectory;
+    private int maxDepth = 1;
+
+    public Set<String> getExclusions() {
+        return exclusions;
+    }
+
+    public void setExclusions(Set<String> exclusions) {
+        this.exclusions = exclusions;
+    }
+
+    private Set<String> exclusions = new HashSet<String>();
+
+    public int getMaxDepth() {
+        return maxDepth;
+    }
+
+    public void setSourceDirectory(String sourceDirectory) {
+        this.sourceDirectory = sourceDirectory;
+    }
+
+    public void setSourcePaths(List<String> sourcePaths) {
+        this.sourcePaths = sourcePaths;
+    }
+
+    public void setTargetDirectory(String targetDirectory) {
+        this.targetDirectory = targetDirectory;
+    }
+
+    public File getTargetDirectory() {
+        return new File(targetDirectory);
+    }
+
+    public Iterator<URL> getSource() {
+        if (null != sourceDirectory) {
+            return Collections.singleton(URLUtil.parseURL(sourceDirectory)).iterator();
+        }
+        List<URL> sourceURLs = new ArrayList<URL>();
+        if( sourcePaths != null && sourcePaths.size() > 0)
+            for (String source : sourcePaths) {
+                sourceURLs.add(URLUtil.parseURL(source));
+            }
+        return sourceURLs.iterator();
+    }
+
+    public void setMaxDepth(int maxDepth) {
+        this.maxDepth = maxDepth;
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java
new file mode 100644
index 0000000..787ae02
--- /dev/null
+++ b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java
@@ -0,0 +1,376 @@
+package org.apache.streams.plugins.cassandra;
+
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.google.common.base.Joiner;
+import com.google.common.base.Optional;
+import com.google.common.base.Preconditions;
+import com.google.common.base.Strings;
+import com.google.common.collect.Lists;
+import org.apache.streams.schema.FieldType;
+import org.apache.streams.schema.FieldUtil;
+import org.apache.streams.schema.GenerationConfig;
+import org.apache.streams.schema.Schema;
+import org.apache.streams.schema.SchemaStore;
+import org.apache.streams.schema.URIUtil;
+import org.jsonschema2pojo.util.URLUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URL;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+
+import static com.google.common.base.Preconditions.checkNotNull;
+import static org.apache.commons.lang3.StringUtils.defaultString;
+import static org.apache.streams.schema.FileUtil.dropExtension;
+import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
+import static org.apache.streams.schema.FileUtil.resolveRecursive;
+import static org.apache.streams.schema.FileUtil.swapExtension;
+import static org.apache.streams.schema.FileUtil.writeFile;
+
+/**
+ * Created by sblackmon on 5/3/16.
+ */
+public class StreamsCassandraResourceGenerator implements Runnable {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsCassandraResourceGenerator.class);
+
+    private final static String LS = System.getProperty("line.separator");
+
+    private StreamsCassandraGenerationConfig config;
+
+    private SchemaStore schemaStore = new SchemaStore();
+
+    private int currentDepth = 0;
+
+    public static void main(String[] args) {
+        StreamsCassandraGenerationConfig config = new StreamsCassandraGenerationConfig();
+
+        String sourceDirectory = "./target/test-classes/activities";
+        String targetDirectory = "./target/generated-resources/cassandra";
+
+        if( args.length > 0 )
+            sourceDirectory = args[0];
+        if( args.length > 1 )
+            targetDirectory = args[1];
+
+        config.setSourceDirectory(sourceDirectory);
+        config.setTargetDirectory(targetDirectory);
+
+        StreamsCassandraResourceGenerator streamsCassandraResourceGenerator = new StreamsCassandraResourceGenerator(config);
+        Thread thread = new Thread(streamsCassandraResourceGenerator);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+        return;
+    }
+
+    public StreamsCassandraResourceGenerator(StreamsCassandraGenerationConfig config) {
+        this.config = config;
+    }
+
+    public void run() {
+
+        checkNotNull(config);
+
+        generate(config);
+
+    }
+
+    public void generate(StreamsCassandraGenerationConfig config) {
+
+        LinkedList<File> sourceFiles = new LinkedList<File>();
+
+        for (Iterator<URL> sources = config.getSource(); sources.hasNext();) {
+            URL source = sources.next();
+            sourceFiles.add(URLUtil.getFileFromURL(source));
+        }
+
+        LOGGER.info("Seeded with {} source paths:", sourceFiles.size());
+
+        resolveRecursive((GenerationConfig)config, sourceFiles);
+
+        LOGGER.info("Resolved {} schema files:", sourceFiles.size());
+
+        for (Iterator<File> iterator = sourceFiles.iterator(); iterator.hasNext();) {
+            File item = iterator.next();
+            schemaStore.create(item.toURI());
+        }
+
+        LOGGER.info("Identified {} objects:", schemaStore.getSize());
+
+        String outputFile = config.getTargetDirectory() + "/" + "types.cql";
+        StringBuilder typesContent = new StringBuilder();
+
+        for (Iterator<Schema> schemaIterator = schemaStore.getSchemaIterator(); schemaIterator.hasNext(); ) {
+            Schema schema = schemaIterator.next();
+            currentDepth = 0;
+            if( schema.getURI().getScheme().equals("file")) {
+                String inputFile = schema.getURI().getPath();
+                String resourcePath = dropSourcePathPrefix(inputFile, config.getSourceDirectory());
+                for (String sourcePath : config.getSourcePaths()) {
+                    resourcePath = dropSourcePathPrefix(resourcePath, sourcePath);
+                }
+
+                LOGGER.info("Processing {}:", resourcePath);
+
+                String resourceId = schemaSymbol(schema);
+
+                String resourceContent = generateResource(schema, resourceId);
+
+                typesContent.append(resourceContent);
+
+                LOGGER.info("Added {}:", resourceId);
+            }
+        }
+
+        writeFile(outputFile, typesContent.toString());
+
+    }
+
+    public String generateResource(Schema schema, String resourceId) {
+        StringBuilder resourceBuilder = new StringBuilder();
+        resourceBuilder.append("CREATE TYPE ");
+        resourceBuilder.append(resourceId);
+        resourceBuilder.append(" IF NOT EXISTS (");
+        resourceBuilder.append(LS);
+        resourceBuilder = appendRootObject(resourceBuilder, schema, resourceId, ' ');
+        resourceBuilder.append(");");
+        resourceBuilder.append(LS);
+        return resourceBuilder.toString();
+    }
+
+    public StringBuilder appendRootObject(StringBuilder builder, Schema schema, String resourceId, Character seperator) {
+        ObjectNode propertiesNode = schemaStore.resolveProperties(schema, null, resourceId);
+        if( propertiesNode.get("id") != null ) {
+            builder.append("id text PRIMARY KEY,");
+            builder.append(LS);
+            propertiesNode.remove("id");
+        }
+        if( propertiesNode != null && propertiesNode.isObject() && propertiesNode.size() > 0) {
+            builder = appendPropertiesNode(builder, schema, propertiesNode, seperator);
+        }
+        return builder;
+    }
+
+    private StringBuilder appendValueField(StringBuilder builder, Schema schema, String fieldId, FieldType fieldType, Character seperator) {
+        // safe to append nothing
+        checkNotNull(builder);
+        builder.append(cqlEscape(fieldId));
+        builder.append(seperator);
+        builder.append(cqlType(fieldType));
+        return builder;
+    }
+
+    public StringBuilder appendArrayItems(StringBuilder builder, Schema schema, String fieldId, ObjectNode itemsNode, Character seperator) {
+        // not safe to append nothing
+        checkNotNull(builder);
+        if( itemsNode == null ) return builder;
+        if( itemsNode.has("type")) {
+            try {
+                FieldType itemType = FieldUtil.determineFieldType(itemsNode);
+                switch( itemType ) {
+                    case OBJECT:
+                        Schema objectSchema = null;
+                        URI parentURI = null;
+                        if( itemsNode.has("$ref") || itemsNode.has("extends") ) {
+                            JsonNode refNode = itemsNode.get("$ref");
+                            JsonNode extendsNode = itemsNode.get("extends");
+                            if (refNode != null && refNode.isValueNode())
+                                parentURI = URI.create(refNode.asText());
+                            else if (extendsNode != null && extendsNode.isObject())
+                                parentURI = URI.create(extendsNode.get("$ref").asText());
+                            URI absoluteURI;
+                            if (parentURI.isAbsolute())
+                                absoluteURI = parentURI;
+                            else {
+                                absoluteURI = schema.getURI().resolve(parentURI);
+                                if (!absoluteURI.isAbsolute() || (absoluteURI.isAbsolute() && !schemaStore.getByUri(absoluteURI).isPresent() ))
+                                    absoluteURI = schema.getParentURI().resolve(parentURI);
+                            }
+                            if (absoluteURI != null && absoluteURI.isAbsolute()) {
+                                Optional<Schema> schemaLookup = schemaStore.getByUri(absoluteURI);
+                                if (schemaLookup.isPresent()) {
+                                    objectSchema = schemaLookup.get();
+                                }
+                            }
+                        }
+                        // have to resolve schema here
+
+                        builder = appendArrayObject(builder, objectSchema, fieldId, seperator);
+                        break;
+                    case ARRAY:
+                        ObjectNode subArrayItems = (ObjectNode) itemsNode.get("items");
+                        builder = appendArrayItems(builder, schema, fieldId, subArrayItems, seperator);
+                        break;
+                    default:
+                        builder = appendArrayField(builder, schema, fieldId, itemType, seperator);
+                }
+            } catch (Exception e) {
+                LOGGER.warn("No item type resolvable for {}", fieldId);
+            }
+        }
+        checkNotNull(builder);
+        return builder;
+    }
+
+    private StringBuilder appendArrayField(StringBuilder builder, Schema schema, String fieldId, FieldType fieldType, Character seperator) {
+        // safe to append nothing
+        checkNotNull(builder);
+        checkNotNull(fieldId);
+        builder.append(cqlEscape(fieldId));
+        builder.append(seperator);
+        builder.append("list<"+cqlType(fieldType)+">");
+        checkNotNull(builder);
+        return builder;
+    }
+
+    private StringBuilder appendArrayObject(StringBuilder builder, Schema schema, String fieldId, Character seperator) {
+        // safe to append nothing
+        checkNotNull(builder);
+        String schemaSymbol = schemaSymbol(schema);
+        if( !Strings.isNullOrEmpty(fieldId) && schemaSymbol != null ) {
+            builder.append(cqlEscape(fieldId));
+            builder.append(seperator);
+            builder.append("list<" + schemaSymbol + ">");
+            builder.append(LS);
+        }
+        checkNotNull(builder);
+        return builder;
+    }
+
+    private StringBuilder appendSchemaField(StringBuilder builder, Schema schema, String fieldId, Character seperator) {
+        // safe to append nothing
+        checkNotNull(builder);
+        String schemaSymbol = schemaSymbol(schema);
+        if( !Strings.isNullOrEmpty(fieldId) && schemaSymbol != null ) {
+            builder.append(cqlEscape(fieldId));
+            builder.append(seperator);
+            builder.append(schemaSymbol);
+        }
+        checkNotNull(builder);
+        return builder;
+    }
+
+    /*
+     can this be moved to streams-schemas if schemastore available in scope?
+     maybe an interface?
+     lot of boilerplate / reuse between plugins
+     however treatment is way different when resolving a type symbol vs resolving and listing fields .
+     */
+    private StringBuilder appendPropertiesNode(StringBuilder builder, Schema schema, ObjectNode propertiesNode, Character seperator) {
+        checkNotNull(builder);
+        checkNotNull(propertiesNode);
+        Iterator<Map.Entry<String, JsonNode>> fields = propertiesNode.fields();
+        Joiner joiner = Joiner.on(","+LS).skipNulls();
+        List<String> fieldStrings = Lists.newArrayList();
+        for( ; fields.hasNext(); ) {
+            Map.Entry<String, JsonNode> field = fields.next();
+            String fieldId = field.getKey();
+            if( !config.getExclusions().contains(fieldId) && field.getValue().isObject()) {
+                ObjectNode fieldNode = (ObjectNode) field.getValue();
+                FieldType fieldType = FieldUtil.determineFieldType(fieldNode);
+                if (fieldType != null ) {
+                    switch (fieldType) {
+                        case ARRAY:
+                            ObjectNode itemsNode = (ObjectNode) fieldNode.get("items");
+                            if( currentDepth <= config.getMaxDepth()) {
+                                StringBuilder arrayItemsBuilder = appendArrayItems(new StringBuilder(), schema, fieldId, itemsNode, seperator);
+                                if( !Strings.isNullOrEmpty(arrayItemsBuilder.toString())) {
+                                    fieldStrings.add(arrayItemsBuilder.toString());
+                                }
+                            }
+                            break;
+                        case OBJECT:
+                            Schema objectSchema = null;
+                            URI parentURI = null;
+                            if( fieldNode.has("$ref") || fieldNode.has("extends") ) {
+                                JsonNode refNode = fieldNode.get("$ref");
+                                JsonNode extendsNode = fieldNode.get("extends");
+                                if (refNode != null && refNode.isValueNode())
+                                    parentURI = URI.create(refNode.asText());
+                                else if (extendsNode != null && extendsNode.isObject())
+                                    parentURI = URI.create(extendsNode.get("$ref").asText());
+                                URI absoluteURI;
+                                if (parentURI.isAbsolute())
+                                    absoluteURI = parentURI;
+                                else {
+                                    absoluteURI = schema.getURI().resolve(parentURI);
+                                    if (!absoluteURI.isAbsolute() || (absoluteURI.isAbsolute() && !schemaStore.getByUri(absoluteURI).isPresent() ))
+                                        absoluteURI = schema.getParentURI().resolve(parentURI);
+                                }
+                                if (absoluteURI != null && absoluteURI.isAbsolute()) {
+                                    Optional<Schema> schemaLookup = schemaStore.getByUri(absoluteURI);
+                                    if (schemaLookup.isPresent()) {
+                                        objectSchema = schemaLookup.get();
+                                    }
+                                }
+                            }
+                            //ObjectNode childProperties = schemaStore.resolveProperties(schema, fieldNode, fieldId);
+                            if( currentDepth < config.getMaxDepth()) {
+                                StringBuilder structFieldBuilder = appendSchemaField(new StringBuilder(), objectSchema, fieldId, seperator);
+                                if( !Strings.isNullOrEmpty(structFieldBuilder.toString())) {
+                                    fieldStrings.add(structFieldBuilder.toString());
+                                }
+                            }
+                            break;
+                        default:
+                            StringBuilder valueFieldBuilder = appendValueField(new StringBuilder(), schema, fieldId, fieldType, seperator);
+                            if( !Strings.isNullOrEmpty(valueFieldBuilder.toString())) {
+                                fieldStrings.add(valueFieldBuilder.toString());
+                            }
+                    }
+                }
+            }
+        }
+        builder.append(joiner.join(fieldStrings)).append(LS);
+        Preconditions.checkNotNull(builder);
+        return builder;
+    }
+
+    private static String cqlEscape( String fieldId ) {
+        return "`"+fieldId+"`";
+    }
+
+    private static String cqlType( FieldType fieldType ) {
+        switch( fieldType ) {
+            case STRING:
+                return "text";
+            case INTEGER:
+                return "int";
+            case NUMBER:
+                return "double";
+            case OBJECT:
+                return "tuple";
+            case ARRAY:
+                return "list";
+            default:
+                return fieldType.name().toUpperCase();
+        }
+    }
+
+    private String schemaSymbol( Schema schema ) {
+        if (schema == null) return null;
+        // this needs to return whatever
+        if (schema.getURI().getScheme().equals("file")) {
+            String inputFile = schema.getURI().getPath();
+            String resourcePath = dropSourcePathPrefix(inputFile, config.getSourceDirectory());
+            for (String sourcePath : config.getSourcePaths()) {
+                resourcePath = dropSourcePathPrefix(resourcePath, sourcePath);
+            }
+            return dropExtension(resourcePath).replace("/", "_");
+        } else {
+            return "IDK";
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java
new file mode 100644
index 0000000..2e9a37f
--- /dev/null
+++ b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java
@@ -0,0 +1,93 @@
+package org.apache.streams.plugins.cassandra;
+
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.MojoFailureException;
+import org.apache.maven.plugins.annotations.Component;
+import org.apache.maven.plugins.annotations.Execute;
+import org.apache.maven.plugins.annotations.LifecyclePhase;
+import org.apache.maven.plugins.annotations.Mojo;
+import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.project.MavenProject;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.util.List;
+
+@Mojo(  name = "cassandra",
+        defaultPhase = LifecyclePhase.GENERATE_RESOURCES
+)
+@Execute(   goal = "cassandra",
+            phase = LifecyclePhase.GENERATE_RESOURCES
+)
+public class StreamsCassandraResourceGeneratorMojo extends AbstractMojo {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsCassandraResourceGeneratorMojo.class);
+
+    private volatile MojoFailureException mojoFailureException;
+
+    @Component
+    private MavenProject project;
+
+//    @Component
+//    private Settings settings;
+//
+//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
+//    protected ArtifactRepository localRepository;
+//
+//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
+//    private PluginDescriptor plugin;
+//
+    @Parameter( defaultValue = "${project.basedir}", readonly = true )
+    private File basedir;
+
+    @Parameter( defaultValue = "src/main/jsonschema", readonly = true ) // Maven 3 only
+    public String sourceDirectory;
+
+    @Parameter( readonly = true ) // Maven 3 only
+    public List<String> sourcePaths;
+
+    @Parameter(defaultValue = "target/generated-resources/cassandra", readonly = true)
+    public String targetDirectory;
+
+    public void execute() throws MojoExecutionException, MojoFailureException {
+
+        //addProjectDependenciesToClasspath();
+
+        StreamsCassandraGenerationConfig config = new StreamsCassandraGenerationConfig();
+
+        if( sourcePaths != null && sourcePaths.size() > 0)
+            config.setSourcePaths(sourcePaths);
+        else
+            config.setSourceDirectory(sourceDirectory);
+        config.setTargetDirectory(targetDirectory);
+
+        StreamsCassandraResourceGenerator streamsCassandraResourceGenerator = new StreamsCassandraResourceGenerator(config);
+
+        Thread.UncaughtExceptionHandler h = new Thread.UncaughtExceptionHandler() {
+            public void uncaughtException(Thread th, Throwable ex) {
+                LOGGER.error("Exception", ex);
+                mojoFailureException = new MojoFailureException("Exception", ex);
+            }
+        };
+        Thread.setDefaultUncaughtExceptionHandler(h);
+        Thread thread = new Thread(streamsCassandraResourceGenerator);
+        thread.setUncaughtExceptionHandler(h);
+        try {
+            thread.start();
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+            mojoFailureException = new MojoFailureException("Exception", e);
+        }
+
+        if( mojoFailureException != null )
+            throw mojoFailureException;
+
+        return;
+    }
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-cassandra/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/site/markdown/index.md b/streams-plugins/streams-plugin-cassandra/src/site/markdown/index.md
new file mode 100644
index 0000000..d0c2129
--- /dev/null
+++ b/streams-plugins/streams-plugin-cassandra/src/site/markdown/index.md
@@ -0,0 +1,22 @@
+org.apache.streams.plugins:streams-plugin-cassandra
+===================================================
+
+streams-plugin-cassandra generates resources from json schemas to assist with indexing of json data using Apache Cassandra.
+
+#### Usage
+
+Run within a module containing a src/main/jsonschema directory
+
+    mvn org.apache.streams.plugins:streams-plugin-cassandra:0.3-incubating-SNAPSHOT:cassandra
+
+Output will be placed in target/generated-resources/cassandra by default
+
+#### Example
+
+[streams-plugin-cassandra/pom.xml](streams-plugin-cassandra/pom.xml "streams-plugin-cassandra/pom.xml")
+
+#### Documentation
+
+[JavaDocs](apidocs/index.html "JavaDocs")
+
+###### Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java
new file mode 100644
index 0000000..465a326
--- /dev/null
+++ b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java
@@ -0,0 +1,50 @@
+package org.apache.streams.plugins.cassandra.test;
+
+import com.google.common.collect.Lists;
+import com.google.common.io.Files;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.streams.plugins.cassandra.StreamsCassandraResourceGenerator;
+import org.junit.Test;
+
+import java.io.File;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.Collection;
+import java.util.List;
+
+import static org.apache.streams.plugins.cassandra.test.StreamsCassandraResourceGeneratorTest.cqlFilter;
+
+/**
+ * Created by sblackmon on 5/5/16.
+ */
+public class StreamsCassandraResourceGeneratorCLITest {
+
+    @Test
+    public void testStreamsHiveResourceGeneratorCLI() throws Exception {
+
+        String sourceDirectory = "target/test-classes/streams-schemas";
+        String targetDirectory = "target/generated-resources/cassandra-cli";
+
+        List<String> argsList = Lists.newArrayList(sourceDirectory, targetDirectory);
+        StreamsCassandraResourceGenerator.main(argsList.toArray(new String[0]));
+
+        File testOutput = new File( targetDirectory );
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(cqlFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() == 1 );
+
+        Path path = Paths.get("types.cql");
+
+        String typesCqlBytes = new String(
+                java.nio.file.Files.readAllBytes(path));
+
+        assert( StringUtils.countMatches(typesCqlBytes, "CREATE TYPE") == 133 );
+
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java
new file mode 100644
index 0000000..aad069f
--- /dev/null
+++ b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java
@@ -0,0 +1,75 @@
+package org.apache.streams.plugins.cassandra.test;
+
+import com.google.common.collect.Lists;
+import com.google.common.io.Files;
+import junit.framework.TestCase;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.maven.it.Verifier;
+import org.apache.maven.it.util.ResourceExtractor;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import static org.apache.streams.plugins.cassandra.test.StreamsCassandraResourceGeneratorTest.cqlFilter;
+
+/**
+ * Tests that streams-plugin-hive running via maven generates hql resources
+ */
+public class StreamsCassandraResourceGeneratorMojoTest extends TestCase {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsCassandraResourceGeneratorMojoTest.class);
+
+    protected void setUp() throws Exception
+    {
+        // required for mojo lookups to work
+        super.setUp();
+    }
+
+    @Test
+    public void testStreamsCassandraResourceGeneratorMojo() throws Exception {
+
+        File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/streams-plugin-cassandra" );
+
+        Verifier verifier;
+
+        verifier = new Verifier( testDir.getAbsolutePath() );
+
+        List cliOptions = new ArrayList();
+        cliOptions.add( "-N" );
+        verifier.executeGoals( Lists.<String>newArrayList(
+                "clean",
+                "dependency:unpack-dependencies",
+                "generate-resources"));
+
+        verifier.verifyErrorFreeLog();
+
+        verifier.resetStreams();
+
+        File testOutput = new File( "./target/generated-resources/test-mojo");
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(cqlFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() == 1 );
+
+        Path path = Paths.get("./target/generated-sources/test/types.cql");
+
+        String typesCqlBytes = new String(
+                java.nio.file.Files.readAllBytes(path));
+
+        assert( StringUtils.countMatches(typesCqlBytes, "CREATE TYPE") == 133 );
+
+        assert( !typesCqlBytes.contains("IDK"));
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java
new file mode 100644
index 0000000..d46eaa6
--- /dev/null
+++ b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java
@@ -0,0 +1,124 @@
+package org.apache.streams.plugins.cassandra.test;
+
+import com.google.common.base.Charsets;
+import com.google.common.base.Predicate;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Sets;
+import com.google.common.io.Files;
+import org.apache.commons.io.FileUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.streams.plugins.cassandra.StreamsCassandraGenerationConfig;
+import org.apache.streams.plugins.cassandra.StreamsCassandraResourceGenerator;
+import org.junit.Assert;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.annotation.Nullable;
+import java.io.File;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.List;
+
+import static org.apache.streams.schema.FileUtil.dropSourcePathPrefix;
+
+/**
+ * Test that cassandra resources are generated.
+ */
+public class StreamsCassandraResourceGeneratorTest {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsCassandraResourceGeneratorTest.class);
+
+    public static final Predicate<File> cqlFilter = new Predicate<File>() {
+        @Override
+        public boolean apply(@Nullable File file) {
+            if( file.getName().endsWith(".cql") )
+                return true;
+            else return false;
+        }
+    };
+
+    /**
+     * Test that cassandra resources are generated
+     *
+     * @throws Exception
+     */
+    @Test
+    public void StreamsCassandraResourceGenerator() throws Exception {
+
+        StreamsCassandraGenerationConfig config = new StreamsCassandraGenerationConfig();
+
+        String sourceDirectory = "target/test-classes/streams-schemas";
+
+        config.setSourceDirectory(sourceDirectory);
+
+        config.setTargetDirectory("target/generated-sources/test");
+
+        config.setExclusions(Sets.newHashSet("attachments"));
+
+        config.setMaxDepth(2);
+
+        StreamsCassandraResourceGenerator streamsCassandraResourceGenerator = new StreamsCassandraResourceGenerator(config);
+        Thread thread = new Thread(streamsCassandraResourceGenerator);
+        thread.start();
+        try {
+            thread.join();
+        } catch (InterruptedException e) {
+            LOGGER.error("InterruptedException", e);
+        } catch (Exception e) {
+            LOGGER.error("Exception", e);
+        }
+
+        File testOutput = new File( "./target/generated-sources/test");
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+
+        Iterable<File> outputIterator = Files.fileTreeTraverser().breadthFirstTraversal(testOutput)
+                .filter(cqlFilter);
+        Collection<File> outputCollection = Lists.newArrayList(outputIterator);
+        assert( outputCollection.size() == 1 );
+
+        Path path = Paths.get("./target/generated-sources/test/types.cql");
+
+        String typesCqlBytes = new String(
+                java.nio.file.Files.readAllBytes(path));
+
+        assert( StringUtils.countMatches(typesCqlBytes, "CREATE TYPE") == 133 );
+
+        assert( !typesCqlBytes.contains("IDK"));
+
+
+//        String expectedDirectory = "target/test-classes/expected";
+//        File testExpected = new File( expectedDirectory );
+//
+//        Iterable<File> expectedIterator = Files.fileTreeTraverser().breadthFirstTraversal(testExpected)
+//                .filter(cqlFilter);
+//        Collection<File> expectedCollection = Lists.newArrayList(expectedIterator);
+//
+//        int fails = 0;
+//
+//        Iterator<File> iterator = expectedCollection.iterator();
+//        while( iterator.hasNext() ) {
+//            File objectExpected = iterator.next();
+//            String expectedEnd = dropSourcePathPrefix(objectExpected.getAbsolutePath(),  expectedDirectory);
+//            File objectActual = new File(config.getTargetDirectory() + "/" + expectedEnd);
+//            LOGGER.info("Comparing: {} and {}", objectExpected.getAbsolutePath(), objectActual.getAbsolutePath());
+//            assert( objectActual.exists());
+//            if( FileUtils.contentEquals(objectActual, objectExpected) == true ) {
+//                LOGGER.info("Exact Match!");
+//            } else {
+//                LOGGER.info("No Match!");
+//                fails++;
+//            }
+//        }
+//        if( fails > 0 ) {
+//            LOGGER.info("Fails: {}", fails);
+//            Assert.fail();
+//        }
+
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/1bc84dbc/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml b/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
new file mode 100644
index 0000000..064ea52
--- /dev/null
+++ b/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
@@ -0,0 +1,75 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>org.apache.streams.plugins</groupId>
+    <artifactId>streams-plugin-cassandra-test</artifactId>
+    <version>0.3-incubating-SNAPSHOT</version>
+    <packaging>jar</packaging>
+    <name>Test StreamsCassandraResourceGeneratorMojo</name>
+
+    <dependencies>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>4.11</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schemas</artifactId>
+            <version>${project.version}</version>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.streams.plugins</groupId>
+                <artifactId>streams-plugin-cassandra</artifactId>
+                <version>0.3-incubating-SNAPSHOT</version>
+                <configuration>
+                    <sourcePaths>
+                        <sourcePath>target/test-classes/streams-schemas/activity.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/collection.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/media_link.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/object.json</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/objectTypes</sourcePath>
+                        <sourcePath>target/test-classes/streams-schemas/verbs</sourcePath>
+                    </sourcePaths>
+                    <targetDirectory>target/generated-resources/test-mojo</targetDirectory>
+                </configuration>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>cassandra</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <version>2.10</version>
+                <configuration>
+                    <includes>**/*.json</includes>
+                    <outputDirectory>${project.build.directory}/test-classes/streams-schemas</outputDirectory>
+                    <includeGroupIds>org.apache.streams</includeGroupIds>
+                    <includeArtifactIds>streams-schemas</includeArtifactIds>
+                    <includeTypes>jar,test-jar</includeTypes>
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>unpack-schemas</id>
+                        <phase>process-resources</phase>
+                        <goals>
+                            <goal>unpack-dependencies</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
\ No newline at end of file


[27/53] [abbrv] incubator-streams git commit: refactoring, testing, documentation, CLI modes

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/object.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/object.json b/streams-schemas/src/main/jsonschema/object.json
deleted file mode 100644
index 94f6719..0000000
--- a/streams-schemas/src/main/jsonschema/object.json
+++ /dev/null
@@ -1,98 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/object.json#",
-    "type": "object",
-    "title": "object",
-    "javaInterfaces": ["java.io.Serializable"],
-    "description": "Basic object on the web. The only required property is the id",
-    "properties": {
-        "id": {
-            "type": "string",
-            "description": "Provides a permanent, universally unique identifier for the object in the form of an absolute IRI [RFC3987]. An object SHOULD contain a single id property. If an object does not contain an id property, consumers MAY use the value of the url property as a less-reliable, non-unique identifier.",
-            "required": true
-        },
-        "image": {
-            "format": "image",
-            "type": "object",
-            "description": "Description of a resource providing a visual representation of the object, intended for human consumption. An object MAY contain an image property whose value is a Media Link.",
-            "extends": {
-                "$ref": "./media_link.json"
-            }
-        },
-        "displayName": {
-            "type": "string",
-            "description": "A natural-language, human-readable and plain-text name for the object. HTML markup MUST NOT be included. An object MAY contain a displayName property. If the object does not specify an objectType property, the object SHOULD specify a displayName"
-        },
-        "summary": {
-            "type": "string",
-            "description": "Natural-language summary of the object encoded as a single JSON String containing HTML markup. Visual elements such as thumbnail images MAY be included. An activity MAY contain a summary property"
-        },
-        "content": {
-            "type": "string",
-            "description": "Natural-language description of the object encoded as a single JSON String containing HTML markup. Visual elements such as thumbnail images MAY be included. An object MAY contain a content property"
-        },
-        "url": {
-            "type": "string",
-            "format": "url",
-            "description": "An IRI [RFC3987] identifying a resource providing an HTML representation of the object. An object MAY contain a url property"
-        },
-        "objectType": {
-            "type": "string",
-            "description": "Identifies the type of object. An object MAY contain an objectType property whose value is a JSON String that is non-empty and matches either the \"isegment-nz-nc\" or the \"IRI\" production in [RFC3987]. Note that the use of a relative reference other than a simple name is not allowed. If no objectType property is contained, the object has no specific type."
-        },
-        "author": {
-            "type": "object",
-            "description": "Describes the entity that created or authored the object. An object MAY contain a single author property whose value is an Object of any type. Note that the author field identifies the entity that created the object and does not necessarily identify the entity that published the object. For instance, it may be the case that an object created by one person is posted and published to a system by an entirely different entity",
-            "javaInterfaces": ["java.io.Serializable"],
-            "extends": {
-                "$ref": "./object.json"
-            }
-        },
-        "published": {
-            "type": "string",
-            "description": "[RFC3339] date-time. The date and time at which the object was published. An object MAY contain a published property",
-            "format": "date-time"
-        },
-        "updated": {
-            "type": "string",
-            "description": "[RFC3339] date-time. The date and time at which a previously published object has been modified. An Object MAY contain an updated property.",
-            "format": "date-time"
-        },
-        "attachments": {
-            "title": "Related objects",
-            "description": "A collection of one or more additional, associated objects, similar to the concept of attached files in an email message. An object MAY have an attachedObjects property whose value is a JSON Array of Objects.",
-            "type": "array",
-            "items": {
-                "type": "object",
-                "javaType": "org.apache.streams.pojo.json.Attachment",
-                "javaInterfaces": ["java.io.Serializable"],
-                "$ref": "./object.json"
-            }
-        },
-        "upstreamDuplicates": {
-            "type": "array",
-            "description": "A JSON Array of one or more absolute IRI's [RFC3987] identifying objects that duplicate this object's content. An object SHOULD contain an upstreamDuplicates property when a publisher is knowingly duplicating with a new ID the content from another object. This MAY be used as a hint for consumers to use when resolving duplicates between objects received from different sources",
-            "items": {
-                "type": "string"
-            }
-        },
-        "downstreamDuplicates": {
-            "type": "array",
-            "description": "A JSON Array of one or more absolute IRI's [RFC3987] identifying objects that duplicate this object's content. An object SHOULD contain a downstreamDuplicates property when there are known objects, possibly in a different system, that duplicate the content in this object. This MAY be used as a hint for consumers to use when resolving duplicates between objects received from different sources.",
-            "items": {
-                "type": "string"
-            }
-        }
-    },
-    "additionalProperties": true,
-    "links": [
-        {
-            "rel": "describedby",
-            "href": "./objectType/{objectType}.json"
-        }
-    ]
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/alert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/alert.json b/streams-schemas/src/main/jsonschema/objectTypes/alert.json
deleted file mode 100644
index 0fa4d60..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/alert.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/alert.json#",
-    "type": "object",
-    "title": "alert",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "alert"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/application.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/application.json b/streams-schemas/src/main/jsonschema/objectTypes/application.json
deleted file mode 100644
index ea3219d..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/application.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/application.json#",
-    "type": "object",
-    "title": "application",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "application"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/article.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/article.json b/streams-schemas/src/main/jsonschema/objectTypes/article.json
deleted file mode 100644
index 2260532..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/article.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/article.json#",
-    "type": "object",
-    "title": "article",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "article"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/audio.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/audio.json b/streams-schemas/src/main/jsonschema/objectTypes/audio.json
deleted file mode 100644
index 1e94405..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/audio.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/audio.json#",
-    "type": "object",
-    "title": "audio",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "audio"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/badge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/badge.json b/streams-schemas/src/main/jsonschema/objectTypes/badge.json
deleted file mode 100644
index 08af422..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/badge.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/badge.json#",
-    "type": "object",
-    "title": "badge",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "badge"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/binary.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/binary.json b/streams-schemas/src/main/jsonschema/objectTypes/binary.json
deleted file mode 100644
index 8723f51..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/binary.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/binary.json#",
-    "type": "object",
-    "title": "binary",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "binary"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json b/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json
deleted file mode 100644
index 808555f..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/badge.json#",
-    "type": "object",
-    "title": "bookmark",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "bookmark"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/comment.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/comment.json b/streams-schemas/src/main/jsonschema/objectTypes/comment.json
deleted file mode 100644
index 1ec2dc2..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/comment.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/comment.json#",
-    "type": "object",
-    "title": "comment",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "comment"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/device.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/device.json b/streams-schemas/src/main/jsonschema/objectTypes/device.json
deleted file mode 100644
index 74dfb39..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/device.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/device.json#",
-    "type": "object",
-    "title": "device",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "device"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/event.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/event.json b/streams-schemas/src/main/jsonschema/objectTypes/event.json
deleted file mode 100644
index f6e5fb6..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/event.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/event.json#",
-    "type": "object",
-    "title": "event",
-    "description": "xCal fromat for vevent",
-    "extends": [
-        {
-            "$ref": "../object.json"
-        },
-        {
-            "$ref": "http://www.json-schema.org/calendar"
-        }
-    ],
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "event"
-        },
-        "attendedBy": {
-            "type": "../collection.json"
-        },
-        "attending": {
-          "type": "../collection.json"
-        },
-        "endTime": {
-          "type": "string",
-          "format": "date-time"
-        },
-        "invited": {
-          "type": "../collection.json"
-        },
-        "maybeAttending": {
-          "type": "../collection.json"
-        },
-        "notAttendedBy": {
-          "type": "../collection.json"
-        },
-        "notAttending": {
-          "type": "../collection.json"
-        },
-        "startTime": {
-          "type": "string",
-          "format": "date-time"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/file.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/file.json b/streams-schemas/src/main/jsonschema/objectTypes/file.json
deleted file mode 100644
index 50ec239..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/file.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/file.json#",
-    "type": "object",
-    "title": "file",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "file"
-        },
-        "fileUrl": {
-          "type": "string"
-        },
-        "mimeType": {
-          "type": "string"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/folder.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/folder.json b/streams-schemas/src/main/jsonschema/objectTypes/folder.json
deleted file mode 100644
index 35592c1..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/folder.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/folder.json#",
-    "type": "object",
-    "title": "folder",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "folder"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/game.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/game.json b/streams-schemas/src/main/jsonschema/objectTypes/game.json
deleted file mode 100644
index ca761ed..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/game.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/game.json#",
-    "type": "object",
-    "title": "game",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "game"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/group.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/group.json b/streams-schemas/src/main/jsonschema/objectTypes/group.json
deleted file mode 100644
index 8623922..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/group.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/group.json#",
-    "type": "object",
-    "title": "group",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "group"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/image.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/image.json b/streams-schemas/src/main/jsonschema/objectTypes/image.json
deleted file mode 100644
index 7eca770..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/image.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/image.json#",
-    "type": "object",
-    "title": "image",
-    "extends": {
-        "$ref": "../media_link.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "image"
-        },
-        "fullImage": {
-          "type": "string"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/issue.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/issue.json b/streams-schemas/src/main/jsonschema/objectTypes/issue.json
deleted file mode 100644
index 29f2fad..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/issue.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/issue.json#",
-    "type": "object",
-    "title": "issue",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "issue"
-        },
-        "types": {
-          "type": "array",
-          "items": {
-            "type": "string"
-          }
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/job.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/job.json b/streams-schemas/src/main/jsonschema/objectTypes/job.json
deleted file mode 100644
index b832f16..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/job.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/job.json#",
-    "type": "object",
-    "title": "job",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "job"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/list.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/list.json b/streams-schemas/src/main/jsonschema/objectTypes/list.json
deleted file mode 100644
index c93a5e8..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/list.json
+++ /dev/null
@@ -1,28 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/list.json#",
-    "type": "object",
-    "title": "list",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "list"
-        },
-        "items": {
-            "type": "array",
-            "items": {
-                "type": "object",
-                "properties": {
-                    "$ref": "../object.json"
-                }
-            }
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/note.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/note.json b/streams-schemas/src/main/jsonschema/objectTypes/note.json
deleted file mode 100644
index 63445d5..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/note.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/note.json#",
-    "type": "object",
-    "title": "note",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "note"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/offer.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/offer.json b/streams-schemas/src/main/jsonschema/objectTypes/offer.json
deleted file mode 100644
index 6d4b5f2..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/offer.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/offer.json#",
-    "type": "object",
-    "title": "offer",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "offer"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/organization.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/organization.json b/streams-schemas/src/main/jsonschema/objectTypes/organization.json
deleted file mode 100644
index 7ee7513..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/organization.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/organization.json#",
-    "type": "object",
-    "title": "organization",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "organization"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/page.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/page.json b/streams-schemas/src/main/jsonschema/objectTypes/page.json
deleted file mode 100644
index 4f18fcf..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/page.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/page.json#",
-    "type": "object",
-    "title": "page",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "page"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/permission.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/permission.json b/streams-schemas/src/main/jsonschema/objectTypes/permission.json
deleted file mode 100644
index 2a156dc..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/permission.json
+++ /dev/null
@@ -1,36 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/permission.json#",
-    "type": "object",
-    "title": "permission",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "permission"
-        },
-        "scope": {
-            "type": "object",
-            "extends": {
-              "$ref": "../object.json"
-            }
-        },
-        "actions": {
-            "type": "array",
-            "items": {
-               "type": "string",
-               "enumeration": [
-                  "create",
-                  "delete",
-                  "modify"
-               ]
-            }
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/person.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/person.json b/streams-schemas/src/main/jsonschema/objectTypes/person.json
deleted file mode 100644
index 6855634..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/person.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/person.json#",
-    "type": "object",
-    "title": "person",
-    "description": "vCard Format. Does not match PoCO",
-    "extends": [
-        {
-            "$ref": "../object.json"
-        },
-        {
-            "$ref": "http://www.json-schema.org/card"
-        }
-    ],
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "person"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json b/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json
deleted file mode 100644
index 1ad4b18..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/photo-album.json#",
-    "type": "object",
-    "title": "article",
-    "extends": {
-        "$ref": "../objectTypes/list.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "photo-album"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/photo.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/photo.json b/streams-schemas/src/main/jsonschema/objectTypes/photo.json
deleted file mode 100644
index ab44aad..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/photo.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/photo.json#",
-    "type": "object",
-    "title": "photo",
-    "extends": {
-        "$ref": "../objectTypes/file.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "photo"
-        },
-        "displayName": {
-            "type": "string",
-            "default": "a photo"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/place.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/place.json b/streams-schemas/src/main/jsonschema/objectTypes/place.json
deleted file mode 100644
index 02d5fe4..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/place.json
+++ /dev/null
@@ -1,39 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/place.json#",
-    "type": "object",
-    "title": "place",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "place"
-        },
-        "address": {
-          "type": "object",
-          "extends": {
-            "$ref": "http://www.json-schema.org/address"
-          }
-        },
-        "position": {
-          "type": "object",
-          "properties": {
-            "altitude": {
-              "type": "number"
-            },
-            "latitude": {
-              "type": "number"
-            },
-            "longitude": {
-              "type": "number"
-            }
-          }
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/playlist.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/playlist.json b/streams-schemas/src/main/jsonschema/objectTypes/playlist.json
deleted file mode 100644
index d40b109..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/playlist.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/playlist.json#",
-    "type": "object",
-    "title": "playlist",
-    "extends": {
-        "$ref": "../objectTypes/list.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "playlist"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/process.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/process.json b/streams-schemas/src/main/jsonschema/objectTypes/process.json
deleted file mode 100644
index 343ff38..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/process.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/process.json#",
-    "type": "object",
-    "title": "process",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "process"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/product.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/product.json b/streams-schemas/src/main/jsonschema/objectTypes/product.json
deleted file mode 100644
index 7614cb9..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/product.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/product.json#",
-    "type": "object",
-    "title": "product",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "product"
-        },
-        "fullImage": {
-            "type": "object",
-            "extends": {
-              "$ref": "../media_link.json"
-            }
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/property.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/property.json b/streams-schemas/src/main/jsonschema/objectTypes/property.json
deleted file mode 100644
index ff2e73b..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/property.json
+++ /dev/null
@@ -1,48 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/property.json#",
-    "type": "object",
-    "title": "property",
-    "description": "A property describes name, path and value. Can be used with delete, update or post verbs",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "property"
-        },
-        "displayName": {
-            "type": "string",
-            "description": "The human readable name of the property in the appropriate language",
-            "optional": true
-        },
-        "path": {
-            "type": "string",
-            "description": "dot delimited path to the property in the target. Ex: streetAddress"
-        }
-    },
-    "example": {
-        "actor": {
-            "id": 1212,
-            "displayName": "Peter"
-        },
-        "verb": "update",
-        "time": "2010-08-02T15:29:00Z",
-        "object": {
-            "objectType": "property",
-            "displayName": "street address",
-            "path": "streetAddress",
-            "content": "234 Amazing St"
-        },
-        "target": {
-            "id": 12121,
-            "time": "2010-08-02T15:29:00Z",
-            "displayName": "Peter's House"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/question.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/question.json b/streams-schemas/src/main/jsonschema/objectTypes/question.json
deleted file mode 100644
index 9383caf..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/question.json
+++ /dev/null
@@ -1,28 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/question.json#",
-    "type": "object",
-    "title": "question",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "question"
-        },
-        "options": {
-            "type": "array",
-            "items": {
-               "type": "object",
-                "extends": {
-                  "$ref": "../object.json"
-                }
-            }
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/review.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/review.json b/streams-schemas/src/main/jsonschema/objectTypes/review.json
deleted file mode 100644
index 5b5ab58..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/review.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/review.json#",
-    "type": "object",
-    "title": "review",
-    "extends": {
-        "$ref": "../objectTypes/article.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "review"
-        },
-        "rating": {
-           "type": "number"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/role.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/role.json b/streams-schemas/src/main/jsonschema/objectTypes/role.json
deleted file mode 100644
index 0521f93..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/role.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/role.json#",
-    "type": "object",
-    "title": "role",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "role"
-        },
-        "members": {
-            "type": "object",
-            "extends": {
-              "$ref": "../collection.json"
-            }
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/service.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/service.json b/streams-schemas/src/main/jsonschema/objectTypes/service.json
deleted file mode 100644
index ff89fae..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/service.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/service.json#",
-    "type": "object",
-    "title": "service",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "service"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/song.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/song.json b/streams-schemas/src/main/jsonschema/objectTypes/song.json
deleted file mode 100644
index 2b89d4b..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/song.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/song.json#",
-    "type": "object",
-    "title": "song",
-    "extends": {
-        "$ref": "../objectTypes/audio.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "song"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/status.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/status.json b/streams-schemas/src/main/jsonschema/objectTypes/status.json
deleted file mode 100644
index ac7a844..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/status.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/status.json#",
-    "type": "object",
-    "title": "status",
-    "extends": {
-        "$ref": "../objectTypes/note.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "song"
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/task.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/task.json b/streams-schemas/src/main/jsonschema/objectTypes/task.json
deleted file mode 100644
index 2c8a3ea..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/task.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/task.json#",
-    "type": "object",
-    "title": "task",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "task"
-        },
-        "by": {
-          "type": "string",
-          "format": "date-time"
-        },
-        "prerequisites": {
-          "type": "array",
-          "items": {
-            "type": "object",
-            "$ref": "../activity.json"
-          }
-        },
-        "required": {
-          "type": "boolean"
-        },
-        "supersedes": {
-          "type": "array",
-          "items": {
-            "type": "object",
-            "$ref": "../activity.json"
-          }
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/team.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/team.json b/streams-schemas/src/main/jsonschema/objectTypes/team.json
deleted file mode 100644
index f4f7494..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/team.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/team.json#",
-    "type": "object",
-    "title": "team",
-    "extends": {
-        "$ref": "../object.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "team"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/objectTypes/video.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/video.json b/streams-schemas/src/main/jsonschema/objectTypes/video.json
deleted file mode 100644
index 88a528d..0000000
--- a/streams-schemas/src/main/jsonschema/objectTypes/video.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/objectTypes/video.json#",
-    "type": "object",
-    "title": "video",
-    "extends": {
-        "$ref": "../objectTypes/file.json"
-    },
-    "properties": {
-        "objectType": {
-            "type": "string",
-            "default": "video"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/accept.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/accept.json b/streams-schemas/src/main/jsonschema/verbs/accept.json
deleted file mode 100644
index 04efee5..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/accept.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/accept.json#",
-    "type": "object",
-    "title": "Accept",
-    "description": "Indicates that that the actor has accepted the object. For instance, a person accepting an award, or accepting an assignment.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "accept"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} accepted {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/access.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/access.json b/streams-schemas/src/main/jsonschema/verbs/access.json
deleted file mode 100644
index eb08184..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/access.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/access.json#",
-    "type": "object",
-    "title": "Access",
-    "description": "Indicates that the actor has accessed the object. For instance, a person accessing a room, or accessing a file.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "access"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} accessed {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/acknowledge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/acknowledge.json b/streams-schemas/src/main/jsonschema/verbs/acknowledge.json
deleted file mode 100644
index aae6209..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/acknowledge.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/acknowledge.json#",
-    "type": "object",
-    "title": "Acknowledge",
-    "description": "Indicates that the actor has acknowledged the object. This effectively signals that the actor is aware of the object's existence.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "acknowledge"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} acknowledge {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/add.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/add.json b/streams-schemas/src/main/jsonschema/verbs/add.json
deleted file mode 100644
index 4d99411..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/add.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/add.json#",
-    "type": "object",
-    "title": "Add",
-    "description": "Indicates that the actor has added the object to the target. For instance, adding a photo to an album.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "add"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} added {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/agree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/agree.json b/streams-schemas/src/main/jsonschema/verbs/agree.json
deleted file mode 100644
index 9e79c2a..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/agree.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/agree.json#",
-    "type": "object",
-    "title": "Agree",
-    "description": "Indicates that the actor agrees with the object. For example, a person agreeing with an argument, or expressing agreement with a particular issue.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "agree"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} agrees with {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/append.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/append.json b/streams-schemas/src/main/jsonschema/verbs/append.json
deleted file mode 100644
index 60e1a82..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/append.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/append.json#",
-    "type": "object",
-    "title": "Append",
-    "description": "Indicates that the actor has appended the object to the target. For instance, a person appending a new record to a database.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "append"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} append {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/approve.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/approve.json b/streams-schemas/src/main/jsonschema/verbs/approve.json
deleted file mode 100644
index 247871c..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/approve.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/approve.json#",
-    "type": "object",
-    "title": "Approve",
-    "description": "Indicates that the actor has approved the object. For instance, a manager might approve a travel request.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "approve"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} approved {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/archive.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/archive.json b/streams-schemas/src/main/jsonschema/verbs/archive.json
deleted file mode 100644
index 7ee2226..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/archive.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/archive.json#",
-    "type": "object",
-    "title": "Archive",
-    "description": "Indicates that the actor has archived the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "archive"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} archived {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/assign.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/assign.json b/streams-schemas/src/main/jsonschema/verbs/assign.json
deleted file mode 100644
index 1d43041..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/assign.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/assign.json#",
-    "type": "object",
-    "title": "Assign",
-    "description": "Indicates that the actor has assigned the object to the target.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "assign"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} assigned {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/at.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/at.json b/streams-schemas/src/main/jsonschema/verbs/at.json
deleted file mode 100644
index 34497e2..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/at.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/at.json#",
-    "type": "object",
-    "title": "At",
-    "description": "Indicates that the actor is currently located at the object. For instance, a person being at a specific physical location.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "assign"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} assigned {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/attach.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/attach.json b/streams-schemas/src/main/jsonschema/verbs/attach.json
deleted file mode 100644
index 76c5a4f..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/attach.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/attach.json#",
-    "type": "object",
-    "title": "Attach",
-    "description": "Indicates that the actor has attached the object to the target.For instance, a person attaching a file to a wiki page or an email.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "attach"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} attached {object.displayName} to {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/attend.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/attend.json b/streams-schemas/src/main/jsonschema/verbs/attend.json
deleted file mode 100644
index 6b02d07..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/attend.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/attend.json#",
-    "type": "object",
-    "title": "Attend",
-    "description": "Indicates that the actor has attended the object. For instance, a person attending a meeting.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "attend"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} attended {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/author.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/author.json b/streams-schemas/src/main/jsonschema/verbs/author.json
deleted file mode 100644
index 4898139..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/author.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/author.json#",
-    "type": "object",
-    "title": "Author",
-    "description": "Indicates that the actor has authored the object. Note that this is a more specific form of the verb \"create\".",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "author"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} authored {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/authorize.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/authorize.json b/streams-schemas/src/main/jsonschema/verbs/authorize.json
deleted file mode 100644
index 661e32c..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/authorize.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/authorize.json#",
-    "type": "object",
-    "title": "Authorize",
-    "description": "Indicates that the actor has authorized the object. If a target is specified, it means that the authorization is specifically in regards to the target. For instance, a service can authorize a person to access a given application; in which case the actor is the service, the object is the person, and the target is the application. In contrast, a person can authorize a request; in which case the actor is the person and the object is the request and there might be no explicit target.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "authorize"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} authorized {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/borrow.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/borrow.json b/streams-schemas/src/main/jsonschema/verbs/borrow.json
deleted file mode 100644
index 74eee36..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/borrow.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/borrow.json#",
-    "type": "object",
-    "title": "Borrow",
-    "description": "Indicates that the actor has borrowed the object. If a target is specified, it identifies the entity from which the object was borrowed. For instance, if a person borrows a book from a library, the person is the actor, the book is the object and the library is the target.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "borrow"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} borrow {object.displayName} from {target.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/build.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/build.json b/streams-schemas/src/main/jsonschema/verbs/build.json
deleted file mode 100644
index d8e7d25..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/build.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/build.json#",
-    "type": "object",
-    "title": "Build",
-    "description": "Indicates that the actor has built the object. For example, if a person builds a model or compiles code.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "build"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} built {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/cancel.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/cancel.json b/streams-schemas/src/main/jsonschema/verbs/cancel.json
deleted file mode 100644
index 0d82c8e..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/cancel.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/cancel.json#",
-    "type": "object",
-    "title": "Cancel",
-    "description": "Indicates that the actor has canceled the object. For instance, canceling a calendar event.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "cancel"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} cancelled {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/checkin.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/checkin.json b/streams-schemas/src/main/jsonschema/verbs/checkin.json
deleted file mode 100644
index 88a9c86..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/checkin.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/checkin.json#",
-    "type": "object",
-    "title": "checkin",
-    "description": "Indicates that the actor has checked-in to the object. For instance, a person checking-in to a Place.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "checkin"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} checked in at {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/close.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/close.json b/streams-schemas/src/main/jsonschema/verbs/close.json
deleted file mode 100644
index 88a31b6..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/close.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/close.json#",
-    "type": "object",
-    "title": "Close",
-    "description": "Indicates that the actor has closed the object. For instance, the object could represent a ticket being tracked in an issue management system.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "close"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} closed {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/complete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/complete.json b/streams-schemas/src/main/jsonschema/verbs/complete.json
deleted file mode 100644
index ddffd0e..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/complete.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/complete.json#",
-    "type": "object",
-    "title": "Complete",
-    "description": "Indicates that the actor has completed the object",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "complete"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} completed {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/confirm.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/confirm.json b/streams-schemas/src/main/jsonschema/verbs/confirm.json
deleted file mode 100644
index 5148c8c..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/confirm.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/confirm.json#",
-    "type": "object",
-    "title": "Confirm",
-    "description": "Indicates that the actor has confirmed or agrees with the object. For instance, a software developer might confirm an issue reported against a product.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "confirm"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} confirmed {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/consume.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/consume.json b/streams-schemas/src/main/jsonschema/verbs/consume.json
deleted file mode 100644
index 661b40b..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/consume.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/consume.json#",
-    "type": "object",
-    "title": "Consume",
-    "description": "Indicates that the actor has consumed the object. The specific meaning is dependent largely on the object's type. For instance, an actor may \"consume\" an audio object, indicating that the actor has listened to it; or an actor may \"consume\" a book, indicating that the book has been read. As such, the \"consume\" verb is a more generic form of other more specific verbs such as \"read\" and \"play\".",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "consume"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} consumed {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/create.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/create.json b/streams-schemas/src/main/jsonschema/verbs/create.json
deleted file mode 100644
index c5ad298..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/create.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/create.json#",
-    "type": "object",
-    "title": "Create",
-    "description": "Indicates that the actor has created the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "create"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} created {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/delete.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/delete.json b/streams-schemas/src/main/jsonschema/verbs/delete.json
deleted file mode 100644
index 544bf5d..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/delete.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/delete.json#",
-    "type": "object",
-    "title": "Delete",
-    "description": "Indicates that the actor has deleted the object.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "delete"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} deleted {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/deliver.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/deliver.json b/streams-schemas/src/main/jsonschema/verbs/deliver.json
deleted file mode 100644
index 4d3d2c1..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/deliver.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/deliver.json#",
-    "type": "object",
-    "title": "Deliver",
-    "description": "Indicates that the actor has delivered the object. For example, delivering a package.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "deliver"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} delivered {object.displayName}"
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/verbs/deny.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/deny.json b/streams-schemas/src/main/jsonschema/verbs/deny.json
deleted file mode 100644
index f880ad3..0000000
--- a/streams-schemas/src/main/jsonschema/verbs/deny.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/verbs/deny.json#",
-    "type": "object",
-    "title": "Deny",
-    "description": "Indicates that the actor has denied the object. For example, a manager may deny a travel request.",
-    "extends": {
-        "$ref": "../activity.json"
-    },
-    "properties": {
-        "verb": {
-            "type": "string",
-            "default": "deny"
-        },
-        "title": {
-            "type": "string",
-            "default": "{actor.displayName} denied {object.displayName}"
-        }
-    }
-}



[28/53] [abbrv] incubator-streams git commit: refactoring, testing, documentation, CLI modes

Posted by mf...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-scala/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/pom.xml b/streams-plugins/streams-plugin-scala/pom.xml
index f718260..3988142 100644
--- a/streams-plugins/streams-plugin-scala/pom.xml
+++ b/streams-plugins/streams-plugin-scala/pom.xml
@@ -42,6 +42,18 @@
             <version>${project.version}</version>
         </dependency>
         <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-util</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.streams</groupId>
+            <artifactId>streams-schema-activitystreams</artifactId>
+            <version>${project.version}</version>
+            <type>test-jar</type>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
             <groupId>org.jsonschema2pojo</groupId>
             <artifactId>jsonschema2pojo-core</artifactId>
         </dependency>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScala.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScala.java b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScala.java
deleted file mode 100644
index 1c3e317..0000000
--- a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScala.java
+++ /dev/null
@@ -1,371 +0,0 @@
-package org.apache.streams.plugins;
-
-import com.google.common.base.Strings;
-import com.google.common.collect.Iterables;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
-import com.google.common.collect.Sets;
-import org.apache.streams.data.DocumentClassifier;
-import org.reflections.ReflectionUtils;
-import org.reflections.Reflections;
-import org.reflections.scanners.SubTypesScanner;
-import org.reflections.scanners.TypeAnnotationsScanner;
-import org.reflections.util.ClasspathHelper;
-import org.reflections.util.ConfigurationBuilder;
-import org.reflections.ReflectionUtils.*;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import javax.annotation.Generated;
-import java.io.File;
-import java.io.IOException;
-import java.io.Serializable;
-import java.lang.reflect.Field;
-import java.nio.file.Files;
-import java.nio.file.OpenOption;
-import java.nio.file.Paths;
-import java.nio.file.StandardOpenOption;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.TreeSet;
-import java.util.concurrent.ConcurrentHashMap;
-
-/**
- * Created by sblackmon on 11/18/15.
- */
-public class StreamsPojoScala implements Runnable {
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoScala.class);
-
-    private final static String LS = System.getProperty("line.separator");
-
-    private StreamsPojoScalaMojo mojo;
-
-    String outDir = "./target/generated-sources/scala";
-    String packages = "org.apache.streams.pojo.json";
-
-    private final Reflections reflections = new Reflections(
-            new ConfigurationBuilder()
-                    // TODO
-                    .forPackages(packages)
-                    .setScanners(
-                            new SubTypesScanner(),
-                            new TypeAnnotationsScanner()));
-
-    public void main(String[] args) {
-        StreamsPojoScala streamsPojoScala = new StreamsPojoScala();
-        Thread thread = new Thread(streamsPojoScala);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
-        return;
-    }
-
-    public StreamsPojoScala(StreamsPojoScalaMojo mojo) {
-        this.mojo = mojo;
-        if (    mojo != null &&
-                mojo.getTarget() != null &&
-                !Strings.isNullOrEmpty(mojo.getTarget().getAbsolutePath())
-            )
-            outDir = mojo.getTarget().getAbsolutePath();
-
-        if (    mojo != null &&
-                mojo.getPackages() != null &&
-                !Strings.isNullOrEmpty(mojo.getPackages())
-            )
-            packages = mojo.getPackages();
-    }
-
-    public StreamsPojoScala() {
-    }
-
-    public void run() {
-
-        List<Class<?>> serializableClasses = detectSerializableClasses();
-
-        LOGGER.info("Detected {} serialiables:", serializableClasses.size());
-        for( Class clazz : serializableClasses )
-            LOGGER.debug(clazz.toString());
-
-        List<Class<?>> pojoClasses = detectPojoClasses(serializableClasses);
-
-        LOGGER.info("Detected {} pojos:", pojoClasses.size());
-        for( Class clazz : pojoClasses )
-            LOGGER.debug(clazz.toString());
-
-        List<Class<?>> traits = detectTraits(pojoClasses);
-
-        LOGGER.info("Detected {} traits:", traits.size());
-        for( Class clazz : traits )
-            LOGGER.debug(clazz.toString());
-
-        List<Class<?>> cases = detectCases(pojoClasses);
-
-        LOGGER.info("Detected {} cases:", cases.size());
-        for( Class clazz : cases )
-            LOGGER.debug(clazz.toString());
-
-
-        for( Class clazz : traits ) {
-            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".scala").replace(".","/")+"/traits/";
-            String pojoName = clazz.getSimpleName()+".scala";
-            String pojoScala = renderTrait(clazz);
-            writeFile(outDir+"/"+pojoPath+pojoName, pojoScala);
-        }
-
-        for( Class clazz : traits ) {
-            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".scala").replace(".","/")+"/";
-            String pojoName = clazz.getSimpleName()+".scala";
-            String pojoScala = renderClass(clazz);
-            writeFile(outDir+"/"+pojoPath+pojoName, pojoScala);
-        }
-
-        for( Class clazz : cases ) {
-            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".scala").replace(".","/")+"/";
-            String pojoName = clazz.getSimpleName()+".scala";
-            String pojoScala = renderCase(clazz);
-            writeFile(outDir+"/"+pojoPath+pojoName, pojoScala);
-        }
-
-    }
-
-    private void writeFile(String pojoFile, String pojoScala) {
-        try {
-            File path = new File(pojoFile);
-            File dir = path.getParentFile();
-            if( !dir.exists() )
-                dir.mkdirs();
-            Files.write(Paths.get(pojoFile), pojoScala.getBytes(), StandardOpenOption.CREATE_NEW);
-        } catch (Exception e) {
-            LOGGER.error("Write Exception: {}", e);
-        }
-    }
-
-    public List<Class<?>> detectSerializableClasses() {
-
-        Set<Class<? extends Serializable>> classes =
-                reflections.getSubTypesOf(java.io.Serializable.class);
-
-        List<Class<?>> result = Lists.newArrayList();
-
-        for( Class clazz : classes ) {
-            result.add(clazz);
-        }
-
-        return result;
-    }
-
-    public List<Class<?>> detectPojoClasses(List<Class<?>> classes) {
-
-        List<Class<?>> result = Lists.newArrayList();
-
-        for( Class clazz : classes ) {
-            try {
-                clazz.newInstance().toString();
-            } catch( Exception e) {}
-            // super-halfass way to know if this is a jsonschema2pojo
-            if( clazz.getAnnotations().length >= 1 )
-                result.add(clazz);
-        }
-
-        return result;
-    }
-
-    public List<Class<?>> detectTraits(List<Class<?>> classes) {
-
-        List<Class<?>> traits = Lists.newArrayList();
-
-        for( Class clazz : classes ) {
-            if (reflections.getSubTypesOf(clazz).size() > 0)
-                traits.add(clazz);
-        }
-
-        return traits;
-    }
-
-    public List<Class<?>> detectCases(List<Class<?>> classes) {
-
-        List<Class<?>> cases = Lists.newArrayList();
-
-        for( Class clazz : classes ) {
-            if (reflections.getSubTypesOf(clazz).size() == 0)
-                cases.add(clazz);
-        }
-
-        return cases;
-    }
-
-
-    public String renderTrait(Class<?> pojoClass) {
-        StringBuffer stringBuffer = new StringBuffer();
-        stringBuffer.append("package ");
-        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".scala"));
-        stringBuffer.append(".traits");
-        stringBuffer.append(LS);
-        stringBuffer.append("trait "+pojoClass.getSimpleName());
-        stringBuffer.append(" extends Serializable");
-        stringBuffer.append(" {");
-
-        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
-        appendFields(stringBuffer, fields, "def", ";");
-
-        stringBuffer.append("}");
-
-        return stringBuffer.toString();
-    }
-
-    public String renderClass(Class<?> pojoClass) {
-        StringBuffer stringBuffer = new StringBuffer();
-        stringBuffer.append("package ");
-        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".scala"));
-        stringBuffer.append(LS);
-        stringBuffer.append("import org.apache.commons.lang.builder.{HashCodeBuilder, EqualsBuilder, ToStringBuilder}");
-        stringBuffer.append(LS);
-        stringBuffer.append("class "+pojoClass.getSimpleName());
-        stringBuffer.append(" (");
-
-        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
-        appendFields(stringBuffer, fields, "var", ",");
-
-        stringBuffer.append(")");
-        stringBuffer.append(" extends "+pojoClass.getPackage().getName().replace(".pojo.json", ".scala")+".traits."+pojoClass.getSimpleName());
-        stringBuffer.append(" with Serializable ");
-        stringBuffer.append("{ ");
-        stringBuffer.append(LS);
-        stringBuffer.append("override def equals(obj: Any) = obj match { ");
-        stringBuffer.append(LS);
-        stringBuffer.append("  case other: ");
-        stringBuffer.append(pojoClass.getSimpleName());
-        stringBuffer.append(" => other.getClass == getClass && EqualsBuilder.reflectionEquals(this,obj)");
-        stringBuffer.append(LS);
-        stringBuffer.append("  case _ => false");
-        stringBuffer.append(LS);
-        stringBuffer.append("}");
-        stringBuffer.append(LS);
-        stringBuffer.append("override def hashCode = new HashCodeBuilder().hashCode");
-        stringBuffer.append(LS);
-        stringBuffer.append("}");
-
-        return stringBuffer.toString();
-    }
-
-    public String renderCase(Class<?> pojoClass) {
-        StringBuffer stringBuffer = new StringBuffer();
-        stringBuffer.append("package ");
-        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".scala"));
-        stringBuffer.append(LS);
-        stringBuffer.append("case class "+pojoClass.getSimpleName());
-        stringBuffer.append("(");
-        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
-        appendFields(stringBuffer, fields, "var", ",");
-        stringBuffer.append(")");
-        if( pojoClass.getSuperclass() != null && !pojoClass.getSuperclass().equals(java.lang.Object.class)) {
-            stringBuffer.append(" extends "+pojoClass.getSuperclass().getPackage().getName().replace(".pojo.json", ".scala")+".traits."+pojoClass.getSuperclass().getSimpleName());
-        }
-        stringBuffer.append(LS);
-
-        return stringBuffer.toString();
-    }
-
-    private void appendFields(StringBuffer stringBuffer, Set<Field> fields, String varDef, String fieldDelimiter) {
-        if( fields.size() > 0 ) {
-            stringBuffer.append(LS);
-            Map<String,Field> fieldsToAppend = uniqueFields(fields);
-            for( Iterator<Field> iter = fieldsToAppend.values().iterator(); iter.hasNext(); ) {
-                Field field = iter.next();
-                if( override( field ) )
-                    stringBuffer.append("override ");
-                stringBuffer.append(varDef);
-                stringBuffer.append(" ");
-                stringBuffer.append(name(field));
-                stringBuffer.append(": ");
-                if( option(field) ) {
-                    stringBuffer.append("scala.Option[");
-                    stringBuffer.append(type(field));
-                    stringBuffer.append("]");
-                } else {
-                    stringBuffer.append(type(field));
-                }
-                if( !fieldDelimiter.equals(";") && value(field) != null) {
-                    stringBuffer.append(" = ");
-                    if( option(field) ) {
-                        stringBuffer.append("scala.Some(");
-                        stringBuffer.append(value(field));
-                        stringBuffer.append(")");
-                    } else {
-                        stringBuffer.append(value(field));
-                    }
-                }
-                if( iter.hasNext()) stringBuffer.append(fieldDelimiter);
-                stringBuffer.append(LS);
-            }
-        } else {
-            stringBuffer.append(LS);
-        }
-    }
-
-    private boolean option(Field field) {
-        if( field.getName().equals("verb")) {
-            return false;
-        } else if( field.getType().equals(java.util.Map.class)) {
-            return false;
-        } else if( field.getType().equals(java.util.List.class)) {
-            return false;
-        } else return true;
-    }
-
-    private String value(Field field) {
-        if( field.getName().equals("verb")) {
-            return "\"post\"";
-        } else if( field.getName().equals("objectType")) {
-            return "\"application\"";
-        } else return null;
-    }
-
-    private String type(Field field) {
-        if( field.getType().equals(java.lang.String.class)) {
-            return "String";
-        } else if( field.getType().equals(java.util.Map.class)) {
-            return "scala.collection.mutable.Map[String,Any]";
-        } else if( field.getType().equals(java.util.List.class)) {
-            return "scala.collection.mutable.MutableList[Any]";
-        }
-        return field.getType().getCanonicalName().replace(".pojo.json", ".scala");
-    }
-
-    private Map<String,Field> uniqueFields(Set<Field> fieldset) {
-        Map<String,Field> fields = Maps.newTreeMap();
-        Field item = null;
-        for( Iterator<Field> it = fieldset.iterator(); it.hasNext(); item = it.next() ) {
-            if( item != null && item.getName() != null ) {
-                Field added = fields.put(item.getName(), item);
-            }
-            // ensure right class will get used
-        }
-        return fields;
-    }
-
-    private String name(Field field) {
-        if( field.getName().equals("object"))
-            return "obj";
-        else return field.getName();
-    }
-
-    private boolean override(Field field) {
-        try {
-            if( field.getDeclaringClass().getSuperclass().getField(field.getName()) != null )
-                return true;
-            else return false;
-        } catch( Exception e ) {
-            return false;
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScalaMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScalaMojo.java b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScalaMojo.java
deleted file mode 100644
index baa0f50..0000000
--- a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsPojoScalaMojo.java
+++ /dev/null
@@ -1,71 +0,0 @@
-package org.apache.streams.plugins;
-
-import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.plugin.AbstractMojo;
-import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.plugin.descriptor.PluginDescriptor;
-import org.apache.maven.plugins.annotations.Component;
-import org.apache.maven.plugins.annotations.Execute;
-import org.apache.maven.plugins.annotations.LifecyclePhase;
-import org.apache.maven.plugins.annotations.Mojo;
-import org.apache.maven.plugins.annotations.Parameter;
-import org.apache.maven.project.MavenProject;
-import org.apache.maven.settings.Settings;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.File;
-
-@Mojo(  name = "scala",
-        defaultPhase = LifecyclePhase.GENERATE_SOURCES
-)
-@Execute(   goal = "scala",
-            phase = LifecyclePhase.GENERATE_SOURCES
-)
-public class StreamsPojoScalaMojo extends AbstractMojo {
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoScalaMojo.class);
-
-    @Component
-    private MavenProject project;
-
-//    @Component
-//    private Settings settings;
-//
-//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
-//    protected ArtifactRepository localRepository;
-//
-//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
-//    private PluginDescriptor plugin;
-//
-    @Parameter( defaultValue = "${project.basedir}", readonly = true )
-    private File basedir;
-
-    @Parameter(defaultValue = "${project.build.directory}", readonly = true)
-    private File target;
-
-    @Parameter(defaultValue = "org.apache.streams.pojo.json", readonly = true)
-    private String packages;
-
-    public void execute() throws MojoExecutionException {
-        StreamsPojoScala streamsPojoScala = new StreamsPojoScala(this);
-        Thread thread = new Thread(streamsPojoScala);
-        thread.start();
-        try {
-            thread.join();
-        } catch (InterruptedException e) {
-            LOGGER.error("InterruptedException", e);
-        } catch (Exception e) {
-            LOGGER.error("Exception", e);
-        }
-        return;
-    }
-
-    public File getTarget() {
-        return target;
-    }
-
-    public String getPackages() {
-        return packages;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGenerator.java b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGenerator.java
new file mode 100644
index 0000000..7199be3
--- /dev/null
+++ b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGenerator.java
@@ -0,0 +1,351 @@
+package org.apache.streams.plugins;
+
+import com.google.common.base.Strings;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
+import org.reflections.ReflectionUtils;
+import org.reflections.Reflections;
+import org.reflections.scanners.SubTypesScanner;
+import org.reflections.scanners.TypeAnnotationsScanner;
+import org.reflections.util.ConfigurationBuilder;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.io.Serializable;
+import java.lang.reflect.Field;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.nio.file.StandardOpenOption;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * Created by sblackmon on 11/18/15.
+ */
+public class StreamsScalaSourceGenerator implements Runnable {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsScalaSourceGenerator.class);
+
+    private final static String LS = System.getProperty("line.separator");
+
+    private StreamsScalaSourceGeneratorMojo mojo;
+
+    String outDir = "./target/generated-sources/scala";
+    String packages = "org.apache.streams.pojo.json";
+
+    private final Reflections reflections = new Reflections(
+            new ConfigurationBuilder()
+                    // TODO
+                    .forPackages(packages)
+                    .setScanners(
+                            new SubTypesScanner(),
+                            new TypeAnnotationsScanner()));
+
+    public void main(String[] args) {
+        StreamsScalaSourceGenerator streamsScalaSourceGenerator = new StreamsScalaSourceGenerator();
+        streamsScalaSourceGenerator.run();
+    }
+
+    public StreamsScalaSourceGenerator(StreamsScalaSourceGeneratorMojo mojo) {
+        this.mojo = mojo;
+        if (    mojo != null &&
+                mojo.getTarget() != null &&
+                !Strings.isNullOrEmpty(mojo.getTarget().getAbsolutePath())
+            )
+            outDir = mojo.getTarget().getAbsolutePath();
+
+        if (    mojo != null &&
+                mojo.getPackages() != null &&
+                !Strings.isNullOrEmpty(mojo.getPackages())
+            )
+            packages = mojo.getPackages();
+    }
+
+    public StreamsScalaSourceGenerator() {
+    }
+
+    public void run() {
+
+        List<Class<?>> serializableClasses = detectSerializableClasses();
+
+        LOGGER.info("Detected {} serialiables:", serializableClasses.size());
+        for( Class clazz : serializableClasses )
+            LOGGER.debug(clazz.toString());
+
+        List<Class<?>> pojoClasses = detectPojoClasses(serializableClasses);
+
+        LOGGER.info("Detected {} pojos:", pojoClasses.size());
+        for( Class clazz : pojoClasses )
+            LOGGER.debug(clazz.toString());
+
+        List<Class<?>> traits = detectTraits(pojoClasses);
+
+        LOGGER.info("Detected {} traits:", traits.size());
+        for( Class clazz : traits )
+            LOGGER.debug(clazz.toString());
+
+        List<Class<?>> cases = detectCases(pojoClasses);
+
+        LOGGER.info("Detected {} cases:", cases.size());
+        for( Class clazz : cases )
+            LOGGER.debug(clazz.toString());
+
+
+        for( Class clazz : traits ) {
+            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".scala").replace(".","/")+"/traits/";
+            String pojoName = clazz.getSimpleName()+".scala";
+            String pojoScala = renderTrait(clazz);
+            writeFile(outDir+"/"+pojoPath+pojoName, pojoScala);
+        }
+
+        for( Class clazz : traits ) {
+            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".scala").replace(".","/")+"/";
+            String pojoName = clazz.getSimpleName()+".scala";
+            String pojoScala = renderClass(clazz);
+            writeFile(outDir+"/"+pojoPath+pojoName, pojoScala);
+        }
+
+        for( Class clazz : cases ) {
+            String pojoPath = clazz.getPackage().getName().replace(".pojo.json", ".scala").replace(".","/")+"/";
+            String pojoName = clazz.getSimpleName()+".scala";
+            String pojoScala = renderCase(clazz);
+            writeFile(outDir+"/"+pojoPath+pojoName, pojoScala);
+        }
+
+    }
+
+    private void writeFile(String pojoFile, String pojoScala) {
+        try {
+            File path = new File(pojoFile);
+            File dir = path.getParentFile();
+            if( !dir.exists() )
+                dir.mkdirs();
+            Files.write(Paths.get(pojoFile), pojoScala.getBytes(), StandardOpenOption.CREATE_NEW);
+        } catch (Exception e) {
+            LOGGER.error("Write Exception: {}", e);
+        }
+    }
+
+    public List<Class<?>> detectSerializableClasses() {
+
+        Set<Class<? extends Serializable>> classes =
+                reflections.getSubTypesOf(java.io.Serializable.class);
+
+        List<Class<?>> result = Lists.newArrayList();
+
+        for( Class clazz : classes ) {
+            result.add(clazz);
+        }
+
+        return result;
+    }
+
+    public List<Class<?>> detectPojoClasses(List<Class<?>> classes) {
+
+        List<Class<?>> result = Lists.newArrayList();
+
+        for( Class clazz : classes ) {
+            try {
+                clazz.newInstance().toString();
+            } catch( Exception e) {}
+            // super-halfass way to know if this is a jsonschema2pojo
+            if( clazz.getAnnotations().length >= 1 )
+                result.add(clazz);
+        }
+
+        return result;
+    }
+
+    public List<Class<?>> detectTraits(List<Class<?>> classes) {
+
+        List<Class<?>> traits = Lists.newArrayList();
+
+        for( Class clazz : classes ) {
+            if (reflections.getSubTypesOf(clazz).size() > 0)
+                traits.add(clazz);
+        }
+
+        return traits;
+    }
+
+    public List<Class<?>> detectCases(List<Class<?>> classes) {
+
+        List<Class<?>> cases = Lists.newArrayList();
+
+        for( Class clazz : classes ) {
+            if (reflections.getSubTypesOf(clazz).size() == 0)
+                cases.add(clazz);
+        }
+
+        return cases;
+    }
+
+
+    public String renderTrait(Class<?> pojoClass) {
+        StringBuffer stringBuffer = new StringBuffer();
+        stringBuffer.append("package ");
+        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".scala"));
+        stringBuffer.append(".traits");
+        stringBuffer.append(LS);
+        stringBuffer.append("trait "+pojoClass.getSimpleName());
+        stringBuffer.append(" extends Serializable");
+        stringBuffer.append(" {");
+
+        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
+        appendFields(stringBuffer, fields, "def", ";");
+
+        stringBuffer.append("}");
+
+        return stringBuffer.toString();
+    }
+
+    public String renderClass(Class<?> pojoClass) {
+        StringBuffer stringBuffer = new StringBuffer();
+        stringBuffer.append("package ");
+        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".scala"));
+        stringBuffer.append(LS);
+        stringBuffer.append("import org.apache.commons.lang.builder.{HashCodeBuilder, EqualsBuilder, ToStringBuilder}");
+        stringBuffer.append(LS);
+        stringBuffer.append("class "+pojoClass.getSimpleName());
+        stringBuffer.append(" (");
+
+        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
+        appendFields(stringBuffer, fields, "var", ",");
+
+        stringBuffer.append(")");
+        stringBuffer.append(" extends "+pojoClass.getPackage().getName().replace(".pojo.json", ".scala")+".traits."+pojoClass.getSimpleName());
+        stringBuffer.append(" with Serializable ");
+        stringBuffer.append("{ ");
+        stringBuffer.append(LS);
+        stringBuffer.append("override def equals(obj: Any) = obj match { ");
+        stringBuffer.append(LS);
+        stringBuffer.append("  case other: ");
+        stringBuffer.append(pojoClass.getSimpleName());
+        stringBuffer.append(" => other.getClass == getClass && EqualsBuilder.reflectionEquals(this,obj)");
+        stringBuffer.append(LS);
+        stringBuffer.append("  case _ => false");
+        stringBuffer.append(LS);
+        stringBuffer.append("}");
+        stringBuffer.append(LS);
+        stringBuffer.append("override def hashCode = new HashCodeBuilder().hashCode");
+        stringBuffer.append(LS);
+        stringBuffer.append("}");
+
+        return stringBuffer.toString();
+    }
+
+    public String renderCase(Class<?> pojoClass) {
+        StringBuffer stringBuffer = new StringBuffer();
+        stringBuffer.append("package ");
+        stringBuffer.append(pojoClass.getPackage().getName().replace(".pojo.json", ".scala"));
+        stringBuffer.append(LS);
+        stringBuffer.append("case class "+pojoClass.getSimpleName());
+        stringBuffer.append("(");
+        Set<Field> fields = ReflectionUtils.getAllFields(pojoClass);
+        appendFields(stringBuffer, fields, "var", ",");
+        stringBuffer.append(")");
+        if( pojoClass.getSuperclass() != null && !pojoClass.getSuperclass().equals(java.lang.Object.class)) {
+            stringBuffer.append(" extends "+pojoClass.getSuperclass().getPackage().getName().replace(".pojo.json", ".scala")+".traits."+pojoClass.getSuperclass().getSimpleName());
+        }
+        stringBuffer.append(LS);
+
+        return stringBuffer.toString();
+    }
+
+    private void appendFields(StringBuffer stringBuffer, Set<Field> fields, String varDef, String fieldDelimiter) {
+        if( fields.size() > 0 ) {
+            stringBuffer.append(LS);
+            Map<String,Field> fieldsToAppend = uniqueFields(fields);
+            for( Iterator<Field> iter = fieldsToAppend.values().iterator(); iter.hasNext(); ) {
+                Field field = iter.next();
+                if( override( field ) )
+                    stringBuffer.append("override ");
+                stringBuffer.append(varDef);
+                stringBuffer.append(" ");
+                stringBuffer.append(name(field));
+                stringBuffer.append(": ");
+                if( option(field) ) {
+                    stringBuffer.append("scala.Option[");
+                    stringBuffer.append(type(field));
+                    stringBuffer.append("]");
+                } else {
+                    stringBuffer.append(type(field));
+                }
+                if( !fieldDelimiter.equals(";") && value(field) != null) {
+                    stringBuffer.append(" = ");
+                    if( option(field) ) {
+                        stringBuffer.append("scala.Some(");
+                        stringBuffer.append(value(field));
+                        stringBuffer.append(")");
+                    } else {
+                        stringBuffer.append(value(field));
+                    }
+                }
+                if( iter.hasNext()) stringBuffer.append(fieldDelimiter);
+                stringBuffer.append(LS);
+            }
+        } else {
+            stringBuffer.append(LS);
+        }
+    }
+
+    private boolean option(Field field) {
+        if( field.getName().equals("verb")) {
+            return false;
+        } else if( field.getType().equals(java.util.Map.class)) {
+            return false;
+        } else if( field.getType().equals(java.util.List.class)) {
+            return false;
+        } else return true;
+    }
+
+    private String value(Field field) {
+        if( field.getName().equals("verb")) {
+            return "\"post\"";
+        } else if( field.getName().equals("objectType")) {
+            return "\"application\"";
+        } else return null;
+    }
+
+    private String type(Field field) {
+        if( field.getType().equals(java.lang.String.class)) {
+            return "String";
+        } else if( field.getType().equals(java.util.Map.class)) {
+            return "scala.collection.mutable.Map[String,Any]";
+        } else if( field.getType().equals(java.util.List.class)) {
+            return "scala.collection.mutable.MutableList[Any]";
+        }
+        return field.getType().getCanonicalName().replace(".pojo.json", ".scala");
+    }
+
+    private Map<String,Field> uniqueFields(Set<Field> fieldset) {
+        Map<String,Field> fields = Maps.newTreeMap();
+        Field item = null;
+        for( Iterator<Field> it = fieldset.iterator(); it.hasNext(); item = it.next() ) {
+            if( item != null && item.getName() != null ) {
+                Field added = fields.put(item.getName(), item);
+            }
+            // ensure right class will get used
+        }
+        return fields;
+    }
+
+    private String name(Field field) {
+        if( field.getName().equals("object"))
+            return "obj";
+        else return field.getName();
+    }
+
+    private boolean override(Field field) {
+        try {
+            if( field.getDeclaringClass().getSuperclass().getField(field.getName()) != null )
+                return true;
+            else return false;
+        } catch( Exception e ) {
+            return false;
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGeneratorMojo.java b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGeneratorMojo.java
new file mode 100644
index 0000000..8d85c90
--- /dev/null
+++ b/streams-plugins/streams-plugin-scala/src/main/java/org/apache/streams/plugins/StreamsScalaSourceGeneratorMojo.java
@@ -0,0 +1,59 @@
+package org.apache.streams.plugins;
+
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugins.annotations.Component;
+import org.apache.maven.plugins.annotations.Execute;
+import org.apache.maven.plugins.annotations.LifecyclePhase;
+import org.apache.maven.plugins.annotations.Mojo;
+import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.project.MavenProject;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+
+@Mojo(  name = "scala",
+        defaultPhase = LifecyclePhase.GENERATE_SOURCES
+)
+@Execute(   goal = "scala",
+            phase = LifecyclePhase.GENERATE_SOURCES
+)
+public class StreamsScalaSourceGeneratorMojo extends AbstractMojo {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsScalaSourceGeneratorMojo.class);
+
+    @Component
+    private MavenProject project;
+
+//    @Component
+//    private Settings settings;
+//
+//    @Parameter( defaultValue = "${localRepository}", readonly = true, required = true )
+//    protected ArtifactRepository localRepository;
+//
+//    @Parameter( defaultValue = "${plugin}", readonly = true ) // Maven 3 only
+//    private PluginDescriptor plugin;
+//
+    @Parameter( defaultValue = "${project.basedir}", readonly = true )
+    private File basedir;
+
+    @Parameter(defaultValue = "${project.build.directory}", readonly = true)
+    private File target;
+
+    @Parameter(defaultValue = "org.apache.streams.pojo.json", readonly = true)
+    private String packages;
+
+    public void execute() throws MojoExecutionException {
+        StreamsScalaSourceGenerator streamsScalaSourceGenerator = new StreamsScalaSourceGenerator(this);
+        streamsScalaSourceGenerator.run();
+    }
+
+    public File getTarget() {
+        return target;
+    }
+
+    public String getPackages() {
+        return packages;
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-scala/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/site/markdown/index.md b/streams-plugins/streams-plugin-scala/src/site/markdown/index.md
new file mode 100644
index 0000000..34f94f5
--- /dev/null
+++ b/streams-plugins/streams-plugin-scala/src/site/markdown/index.md
@@ -0,0 +1,36 @@
+org.apache.streams.plugins:streams-plugin-scala
+=============================================
+
+streams-plugin-scala generates source files from json schemas suitable for writing Apache Streams components and libraries in Scala.
+
+### Usage
+
+##### Maven
+
+Run within a module containing a src/main/jsonschema directory
+
+    mvn org.apache.streams.plugins:streams-plugin-scala:0.3-incubating-SNAPSHOT:pig
+
+[streams-plugin-scala/pom.xml](streams-plugin-scala/pom.xml "streams-plugin-scala/pom.xml")
+
+##### SDK
+
+Embed within your own java code
+
+    StreamsScalaGenerationConfig config = new StreamsScalaGenerationConfig();
+    config.setSourceDirectory("src/main/jsonschema");
+    config.setTargetDirectory("target/generated-resources");
+    StreamsScalaSourceGenerator generator = new StreamsScalaSourceGenerator(config);
+    generator.run();
+
+##### CLI
+
+Run from CLI without Maven
+
+    java -jar streams-plugin-scala-jar-with-dependencies.jar StreamsScalaSourceGenerator src/main/jsonschema target/generated-sources
+
+#### Documentation
+
+[JavaDocs](apidocs/index.html "JavaDocs")
+
+###### Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsPojoScalaTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsPojoScalaTest.java b/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsPojoScalaTest.java
deleted file mode 100644
index 4e5e7e3..0000000
--- a/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsPojoScalaTest.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package org.apache.streams.plugins.test;
-
-import org.apache.streams.plugins.StreamsPojoScala;
-import org.junit.Test;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.File;
-import java.io.FileFilter;
-
-/**
- * Test that Activity beans are compatible with the example activities in the spec.
- */
-public class StreamsPojoScalaTest {
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsPojoScalaTest.class);
-
-    /**
-     * Tests that all example activities can be loaded into Activity beans
-     *
-     * @throws Exception
-     */
-    @Test
-    public void testDetectPojoScala() throws Exception {
-        StreamsPojoScala streamsPojoScala = new StreamsPojoScala();
-        streamsPojoScala.main(new String[0]);
-
-        File testOutput = new File( "./target/generated-sources/scala/org/apache/streams/scala");
-        FileFilter scalaFilter = new FileFilter() {
-            @Override
-            public boolean accept(File pathname) {
-                if( pathname.getName().endsWith(".scala") )
-                    return true;
-                return false;
-            }
-        };
-
-        assert( testOutput != null );
-        assert( testOutput.exists() == true );
-        assert( testOutput.isDirectory() == true );
-        assert( testOutput.listFiles(scalaFilter).length == 11 );
-        assert( new File(testOutput + "/traits").exists() == true );
-        assert( new File(testOutput + "/traits").isDirectory() == true );
-        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
-        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
-        assert( new File(testOutput + "/objectTypes").exists() == true );
-        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
-        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
-        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
-        assert( new File(testOutput + "/verbs").exists() == true );
-        assert( new File(testOutput + "/verbs").isDirectory() == true );
-        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
-        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsScalaSourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsScalaSourceGeneratorTest.java b/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsScalaSourceGeneratorTest.java
new file mode 100644
index 0000000..65e496f
--- /dev/null
+++ b/streams-plugins/streams-plugin-scala/src/test/java/org/apache/streams/plugins/test/StreamsScalaSourceGeneratorTest.java
@@ -0,0 +1,55 @@
+package org.apache.streams.plugins.test;
+
+import org.apache.streams.plugins.StreamsScalaSourceGenerator;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.File;
+import java.io.FileFilter;
+
+/**
+ * Test that Activity beans are compatible with the example activities in the spec.
+ */
+public class StreamsScalaSourceGeneratorTest {
+
+    private final static Logger LOGGER = LoggerFactory.getLogger(StreamsScalaSourceGeneratorTest.class);
+
+    /**
+     * Tests that all example activities can be loaded into Activity beans
+     *
+     * @throws Exception
+     */
+    @Test
+    public void testDetectPojoScala() throws Exception {
+        StreamsScalaSourceGenerator streamsScalaSourceGenerator = new StreamsScalaSourceGenerator();
+        streamsScalaSourceGenerator.main(new String[0]);
+
+        File testOutput = new File( "./target/generated-sources/scala/org/apache/streams/scala");
+        FileFilter scalaFilter = new FileFilter() {
+            @Override
+            public boolean accept(File pathname) {
+                if( pathname.getName().endsWith(".scala") )
+                    return true;
+                return false;
+            }
+        };
+
+        assert( testOutput != null );
+        assert( testOutput.exists() == true );
+        assert( testOutput.isDirectory() == true );
+        assert( testOutput.listFiles(scalaFilter).length == 11 );
+        assert( new File(testOutput + "/traits").exists() == true );
+        assert( new File(testOutput + "/traits").isDirectory() == true );
+        assert( new File(testOutput + "/traits").listFiles(scalaFilter) != null );
+        assert( new File(testOutput + "/traits").listFiles(scalaFilter).length == 4 );
+        assert( new File(testOutput + "/objectTypes").exists() == true );
+        assert( new File(testOutput + "/objectTypes").isDirectory() == true );
+        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter) != null );
+        assert( new File(testOutput + "/objectTypes").listFiles(scalaFilter).length == 43 );
+        assert( new File(testOutput + "/verbs").exists() == true );
+        assert( new File(testOutput + "/verbs").isDirectory() == true );
+        assert( new File(testOutput + "/verbs").listFiles(scalaFilter) != null );
+        assert( new File(testOutput + "/verbs").listFiles(scalaFilter).length == 89 );
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-runtimes/streams-runtime-local/pom.xml
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-local/pom.xml b/streams-runtimes/streams-runtime-local/pom.xml
index d5857ef..d8fae26 100644
--- a/streams-runtimes/streams-runtime-local/pom.xml
+++ b/streams-runtimes/streams-runtime-local/pom.xml
@@ -137,7 +137,7 @@
                     <addCompileSourceRoot>true</addCompileSourceRoot>
                     <generateBuilders>true</generateBuilders>
                     <sourcePaths>
-                        <sourcePath>${project.basedir}/src/main/jsonschema/LocalRuntimeConfiguration.json</sourcePath>
+                        <sourcePath>${project.basedir}/src/main/jsonschema</sourcePath>
                     </sourcePaths>
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>org.apache.streams.local</targetPackage>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/pom.xml
----------------------------------------------------------------------
diff --git a/streams-schemas/pom.xml b/streams-schemas/pom.xml
index 0625cb6..dbfd719 100644
--- a/streams-schemas/pom.xml
+++ b/streams-schemas/pom.xml
@@ -28,79 +28,12 @@
 
     <artifactId>streams-schemas</artifactId>
     <name>${project.artifactId}</name>
+    <packaging>pom</packaging>
 
-    <description>Activity Streams schemas and schema utilities</description>
+    <description>Aggregator for schema modules</description>
 
-    <dependencies>
-        <dependency>
-            <groupId>commons-io</groupId>
-            <artifactId>commons-io</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.commons</groupId>
-            <artifactId>commons-lang3</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.fasterxml.jackson.core</groupId>
-            <artifactId>jackson-core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.fasterxml.jackson.core</groupId>
-            <artifactId>jackson-databind</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.jsonschema2pojo</groupId>
-            <artifactId>jsonschema2pojo-core</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>commons-logging</groupId>
-                    <artifactId>commons-logging</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>com.google.guava</groupId>
-            <artifactId>guava</artifactId>
-        </dependency>
+    <modules>
+        <module>streams-schema-activitystreams</module>
+    </modules>
 
-    </dependencies>
-    <build>
-        <sourceDirectory>src/main/java</sourceDirectory>
-        <testSourceDirectory>src/test/java</testSourceDirectory>
-        <resources>
-            <resource>
-                <directory>src/main/resources</directory>
-            </resource>
-        </resources>
-        <testResources>
-            <testResource>
-                <directory>src/test/resources</directory>
-            </testResource>
-        </testResources>
-        <plugins>
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>build-helper-maven-plugin</artifactId>
-                <executions>
-                    <execution>
-                        <id>add-source</id>
-                        <phase>generate-sources</phase>
-                        <goals>
-                            <goal>add-resource</goal>
-                        </goals>
-                        <configuration>
-                            <resources>
-                                <resource>
-                                    <directory>src/main/jsonschema</directory>
-                                </resource>
-                                <resource>
-                                    <directory>src/main/xmlschema</directory>
-                                </resource>
-                            </resources>
-                        </configuration>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
 </project>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/java/org/apache/streams/schema/FieldType.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/java/org/apache/streams/schema/FieldType.java b/streams-schemas/src/main/java/org/apache/streams/schema/FieldType.java
deleted file mode 100644
index 1ad9dcc..0000000
--- a/streams-schemas/src/main/java/org/apache/streams/schema/FieldType.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package org.apache.streams.schema;
-
-/**
- * Created by steve on 5/1/16.
- */
-public enum FieldType {
-    STRING,
-    INTEGER,
-    NUMBER,
-    BOOLEAN,
-    OBJECT,
-    ARRAY
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/java/org/apache/streams/schema/FieldUtil.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/java/org/apache/streams/schema/FieldUtil.java b/streams-schemas/src/main/java/org/apache/streams/schema/FieldUtil.java
deleted file mode 100644
index 4173e50..0000000
--- a/streams-schemas/src/main/java/org/apache/streams/schema/FieldUtil.java
+++ /dev/null
@@ -1,59 +0,0 @@
-package org.apache.streams.schema;
-
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.node.ObjectNode;
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.Lists;
-
-import java.util.Collection;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-/**
- * Created by steve on 5/1/16.
- */
-public class FieldUtil {
-
-    public static FieldType determineFieldType(ObjectNode fieldNode) {
-        String typeSchemaField = "type";
-        if( !fieldNode.has(typeSchemaField))
-            return null;
-        String typeSchemaFieldValue = fieldNode.get(typeSchemaField).asText();
-        if( typeSchemaFieldValue.equals("string")) {
-            return FieldType.STRING;
-        } else if( typeSchemaFieldValue.equals("integer")) {
-            return FieldType.INTEGER;
-        } else if( typeSchemaFieldValue.equals("number")) {
-            return FieldType.NUMBER;
-        } else if( typeSchemaFieldValue.equals("object")) {
-            return FieldType.OBJECT;
-        } else if( typeSchemaFieldValue.equals("boolean")) {
-            return FieldType.BOOLEAN;
-        } else if( typeSchemaFieldValue.equals("array")) {
-            return FieldType.ARRAY;
-        }
-        else return null;
-    }
-
-    public static FieldType determineArrayType(ObjectNode fieldNode) {
-        if( fieldNode == null ) return null;
-        ObjectNode itemsObjectNode = resolveItemsNode(fieldNode);
-        if( itemsObjectNode != null)
-            return determineFieldType(itemsObjectNode);
-        return null;
-    }
-
-    public static ObjectNode resolveItemsNode(ObjectNode fieldNode) {
-        ObjectNode itemsObjectNode = null;
-
-        if( fieldNode.get("items").isObject() )
-            itemsObjectNode = (ObjectNode) fieldNode.get("items");
-        else if( fieldNode.get("items").isArray() && fieldNode.size() > 0 && fieldNode.get(0).isObject()) {
-            itemsObjectNode = (ObjectNode) fieldNode.get("items").get(0);
-        }
-
-        return itemsObjectNode;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/java/org/apache/streams/schema/FileUtil.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/java/org/apache/streams/schema/FileUtil.java b/streams-schemas/src/main/java/org/apache/streams/schema/FileUtil.java
deleted file mode 100644
index 53f0a98..0000000
--- a/streams-schemas/src/main/java/org/apache/streams/schema/FileUtil.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package org.apache.streams.schema;
-
-import com.google.common.base.Preconditions;
-import com.google.common.base.Strings;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.File;
-import java.nio.file.Files;
-import java.nio.file.Paths;
-import java.nio.file.StandardOpenOption;
-import java.util.Arrays;
-import java.util.List;
-
-/**
- * Created by steve on 5/1/16.
- */
-public class FileUtil {
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(FileUtil.class);
-
-    public static String dropSourcePathPrefix(String inputFile, String sourceDirectory) {
-        if(Strings.isNullOrEmpty(sourceDirectory))
-            return inputFile;
-        else {
-            try {
-                if( inputFile.contains(sourceDirectory) && inputFile.indexOf(sourceDirectory) > 0) {
-                    return inputFile.substring(inputFile.indexOf(sourceDirectory)+sourceDirectory.length()+1);
-                }
-            } catch( Throwable e ) {
-                return inputFile;
-            }
-        }
-        return inputFile;
-    }
-
-    public static String swapExtension(String inputFile, String originalExtension, String newExtension) {
-        if(inputFile.endsWith("."+originalExtension))
-            return inputFile.replace("."+originalExtension, "."+newExtension);
-        else return inputFile;
-    }
-
-    public static String dropExtension(String inputFile) {
-        if(inputFile.contains("."))
-            return inputFile.substring(0, inputFile.lastIndexOf("."));
-        else return inputFile;
-    }
-
-    public static void writeFile(String resourceFile, String resourceContent) {
-        try {
-            File path = new File(resourceFile);
-            File dir = path.getParentFile();
-            if( !dir.exists() )
-                dir.mkdirs();
-            Files.write(Paths.get(resourceFile), resourceContent.getBytes(), StandardOpenOption.CREATE_NEW);
-        } catch (Exception e) {
-            LOGGER.error("Write Exception: {}", e);
-        }
-    }
-
-    public static void resolveRecursive(GenerationConfig config, List<File> schemaFiles) {
-
-        Preconditions.checkArgument(schemaFiles.size() > 0);
-        int i = 0;
-        while( schemaFiles.size() > i) {
-            File child = schemaFiles.get(i);
-            if (child.isDirectory()) {
-                schemaFiles.addAll(Arrays.asList(child.listFiles(config.getFileFilter())));
-                schemaFiles.remove(child);
-            } else {
-                i += 1;
-            }
-        }
-
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/java/org/apache/streams/schema/GenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/java/org/apache/streams/schema/GenerationConfig.java b/streams-schemas/src/main/java/org/apache/streams/schema/GenerationConfig.java
deleted file mode 100644
index ec77367..0000000
--- a/streams-schemas/src/main/java/org/apache/streams/schema/GenerationConfig.java
+++ /dev/null
@@ -1,115 +0,0 @@
-package org.apache.streams.schema;
-
-import java.io.File;
-import java.io.FileFilter;
-import java.net.URL;
-import java.util.Iterator;
-
-/**
- * Created by sblackmon on 5/3/16.
- */
-public interface GenerationConfig {
-
-    /**
-     * Gets the 'source' configuration option.
-     *
-     * @return The source file(s) or directory(ies) from which JSON Schema will
-     *         be read.
-     */
-    Iterator<URL> getSource();
-
-    /**
-     * Gets the 'targetDirectory' configuration option.
-     *
-     * @return The target directory into which generated types will be written
-     *         (may or may not exist before types are written)
-     */
-    File getTargetDirectory();
-
-    /**
-     * Gets the 'outputEncoding' configuration option.
-     *
-     * @return The character encoding that should be used when writing output files.
-     */
-    String getOutputEncoding();
-
-    /**
-     * Gets the file filter used to isolate the schema mapping files in the
-     * source directories.
-     *
-     * @return the file filter use when scanning for schema files.
-     */
-    FileFilter getFileFilter();
-
-    /**
-     * Gets the 'includeAdditionalProperties' configuration option.
-     *
-     * @return Whether to allow 'additional properties' support in objects.
-     *         Setting this to false will disable additional properties support,
-     *         regardless of the input schema(s).
-     */
-//    boolean isIncludeAdditionalProperties();
-
-    /**
-     * Gets the 'targetVersion' configuration option.
-     *
-     *  @return The target version for generated source files.
-     */
-//    String getTargetVersion();
-
-//    /**
-//     * Gets the `includeDynamicAccessors` configuraiton option.
-//     *
-//     * @return Whether to include dynamic getters, setters, and builders
-//     *         or to omit these methods.
-//     */
-//    boolean isIncludeDynamicAccessors();
-
-//    /**
-//     * Gets the `dateTimeType` configuration option.
-//     *         <p>
-//     *         Example values:
-//     *         <ul>
-//     *         <li><code>org.joda.time.LocalDateTime</code> (Joda)</li>
-//     *         <li><code>java.time.LocalDateTime</code> (JSR310)</li>
-//     *         <li><code>null</code> (default behavior)</li>
-//     *         </ul>
-//     *
-//     * @return The java type to use instead of {@link java.util.Date}
-//     *         when adding date type fields to generate Java types.
-//     */
-//    String getDateTimeType();
-//
-//    /**
-//     * Gets the `dateType` configuration option.
-//     *         <p>
-//     *         Example values:
-//     *         <ul>
-//     *         <li><code>org.joda.time.LocalDate</code> (Joda)</li>
-//     *         <li><code>java.time.LocalDate</code> (JSR310)</li>
-//     *         <li><code>null</code> (default behavior)</li>
-//     *         </ul>
-//     *
-//     * @return The java type to use instead of string
-//     *         when adding string type fields with a format of date (not
-//     *         date-time) to generated Java types.
-//     */
-//    String getDateType();
-//
-//    /**
-//     * Gets the `timeType` configuration option.
-//     *         <p>
-//     *         Example values:
-//     *         <ul>
-//     *         <li><code>org.joda.time.LocalTime</code> (Joda)</li>
-//     *         <li><code>java.time.LocalTime</code> (JSR310)</li>
-//     *         <li><code>null</code> (default behavior)</li>
-//     *         </ul>
-//     *
-//     * @return The java type to use instead of string
-//     *         when adding string type fields with a format of time (not
-//     *         date-time) to generated Java types.
-//     */
-//    String getTimeType();
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/java/org/apache/streams/schema/Schema.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/java/org/apache/streams/schema/Schema.java b/streams-schemas/src/main/java/org/apache/streams/schema/Schema.java
deleted file mode 100644
index ea75ffd..0000000
--- a/streams-schemas/src/main/java/org/apache/streams/schema/Schema.java
+++ /dev/null
@@ -1,57 +0,0 @@
-package org.apache.streams.schema;
-
-import com.fasterxml.jackson.databind.JsonNode;
-
-import java.net.URI;
-
-/**
- * A JSON Schema document.
- */
-public class Schema {
-
-    private final URI id;
-    private final URI uri;
-    private final JsonNode content;
-    private final Schema parent;
-    private final boolean generate;
-
-    public Schema(URI uri, JsonNode content, Schema parent, boolean generate) {
-        this.uri = uri;
-        this.content = content;
-        this.parent = parent;
-        this.generate = generate;
-        this.id = content.has("id") ? URI.create(content.get("id").asText()) : null;
-    }
-
-    public URI getId() {
-        return id;
-    }
-
-    public URI getURI() {
-        return uri;
-    }
-
-    public JsonNode getContent() {
-        return content;
-    }
-
-    public JsonNode getParentContent() {
-        if( parent != null )
-            return parent.getContent();
-        else return null;
-    }
-
-    public URI getParentURI() {
-        if( parent != null ) return parent.getURI();
-        else return null;
-    }
-
-    public boolean isGenerated() {
-        return generate;
-    }
-
-    public Schema getParent() {
-        return parent;
-    }
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/java/org/apache/streams/schema/SchemaStore.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/java/org/apache/streams/schema/SchemaStore.java b/streams-schemas/src/main/java/org/apache/streams/schema/SchemaStore.java
deleted file mode 100644
index e612aff..0000000
--- a/streams-schemas/src/main/java/org/apache/streams/schema/SchemaStore.java
+++ /dev/null
@@ -1,283 +0,0 @@
-package org.apache.streams.schema;
-
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.node.JsonNodeFactory;
-import com.fasterxml.jackson.databind.node.ObjectNode;
-import com.google.common.base.Optional;
-import com.google.common.collect.Iterables;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Ordering;
-import org.apache.commons.lang3.StringUtils;
-import org.jsonschema2pojo.ContentResolver;
-import org.jsonschema2pojo.FragmentResolver;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.net.URI;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import static org.apache.streams.schema.URIUtil.safeResolve;
-
-/**
- * Created by steve on 4/30/16.
- */
-public class SchemaStore extends Ordering<Schema> {
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(SchemaStore.class);
-    private final static JsonNodeFactory NODE_FACTORY = JsonNodeFactory.instance;
-
-    protected Map<URI, Schema> schemas = new HashMap();
-    protected FragmentResolver fragmentResolver = new FragmentResolver();
-    protected ContentResolver contentResolver = new ContentResolver();
-
-    public SchemaStore() {
-    }
-
-    public synchronized Schema create(URI uri) {
-        if(!getByUri(uri).isPresent()) {
-            URI baseURI = URIUtil.removeFragment(uri);
-            JsonNode baseNode = this.contentResolver.resolve(baseURI);
-            if(uri.toString().contains("#") && !uri.toString().endsWith("#")) {
-                Schema newSchema = new Schema(baseURI, baseNode, null, true);
-                this.schemas.put(baseURI, newSchema);
-                JsonNode childContent = this.fragmentResolver.resolve(baseNode, '#' + StringUtils.substringAfter(uri.toString(), "#"));
-                this.schemas.put(uri, new Schema(uri, childContent, newSchema, false));
-            } else {
-                if( baseNode.has("extends") && baseNode.get("extends").isObject()) {
-                    URI ref = URI.create(((ObjectNode)baseNode.get("extends")).get("$ref").asText());
-                    URI absoluteURI;
-                    if( ref.isAbsolute())
-                        absoluteURI = ref;
-                    else
-                        absoluteURI = baseURI.resolve(ref);
-                    JsonNode parentNode = this.contentResolver.resolve(absoluteURI);
-                    Schema parentSchema = null;
-                    if( this.schemas.get(absoluteURI) != null ) {
-                        parentSchema = this.schemas.get(absoluteURI);
-                    } else {
-                        parentSchema = create(absoluteURI);
-                    }
-                    this.schemas.put(uri, new Schema(uri, baseNode, parentSchema, true));
-                } else {
-                    this.schemas.put(uri, new Schema(uri, baseNode, null, true));
-                }
-            }
-            List<JsonNode> refs = baseNode.findValues("$ref");
-            for( JsonNode ref : refs ) {
-                if( ref.isValueNode() ) {
-                    String refVal = ref.asText();
-                    URI refURI = null;
-                    try {
-                        refURI = URI.create(refVal);
-                    } catch( Exception e ) {
-                        LOGGER.info("Exception: {}", e.getMessage());
-                    }
-                    if (refURI != null && !getByUri(refURI).isPresent()) {
-                        if (refURI.isAbsolute())
-                            create(refURI);
-                        else
-                            create(baseURI.resolve(refURI));
-                    }
-                }
-            }
-        }
-
-        return this.schemas.get(uri);
-    }
-
-    public Schema create(Schema parent, String path) {
-        if(path.equals("#")) {
-            return parent;
-        } else {
-            path = StringUtils.stripEnd(path, "#?&/");
-            URI id = parent != null && parent.getId() != null?parent.getId().resolve(path):URI.create(path);
-            if(this.selfReferenceWithoutParentFile(parent, path)) {
-                this.schemas.put(id, new Schema(id, this.fragmentResolver.resolve(parent.getParentContent(), path), parent, false));
-                return this.schemas.get(id);
-            } else {
-                return this.create(id);
-            }
-        }
-    }
-
-    protected boolean selfReferenceWithoutParentFile(Schema parent, String path) {
-        return parent != null && (parent.getId() == null || parent.getId().toString().startsWith("#/")) && path.startsWith("#/");
-    }
-
-    public synchronized void clearCache() {
-        this.schemas.clear();
-    }
-
-    public Integer getSize() {
-        return schemas.size();
-    }
-
-    public Optional<Schema> getById(URI id) {
-        for( Schema schema : schemas.values() ) {
-            if( schema.getId() != null && schema.getId().equals(id) )
-                return Optional.of(schema);
-        }
-        return Optional.absent();
-    }
-
-    public Optional<Schema> getByUri(URI uri) {
-        for( Schema schema : schemas.values() ) {
-            if( schema.getURI().equals(uri) )
-                return Optional.of(schema);
-        }
-        return Optional.absent();
-    }
-
-    public Integer getFileUriCount() {
-        int count = 0;
-        for( Schema schema : schemas.values() ) {
-            if( schema.getURI().getScheme().equals("file") )
-                count++;
-        }
-        return count;
-    }
-
-    public Integer getHttpUriCount() {
-        int count = 0;
-        for( Schema schema : schemas.values() ) {
-            if( schema.getURI().getScheme().equals("http") )
-                count++;
-        }
-        return count;
-    }
-
-    public Iterator<Schema> getSchemaIterator() {
-        List<Schema> schemaList = Lists.newArrayList(schemas.values());
-        Collections.sort(schemaList, this);
-        return schemaList.iterator();
-    }
-
-    public ObjectNode resolveProperties(Schema schema, ObjectNode fieldNode, String resourceId) {
-        // this should return something more suitable like:
-        //   Map<String, Pair<Schema, ObjectNode>>
-        ObjectNode schemaProperties = NODE_FACTORY.objectNode();
-        ObjectNode parentProperties = NODE_FACTORY.objectNode();
-        if (fieldNode == null) {
-            ObjectNode schemaContent = (ObjectNode) schema.getContent();
-            if( schemaContent.has("properties") ) {
-                schemaProperties = (ObjectNode) schemaContent.get("properties");
-                if (schema.getParentContent() != null) {
-                    ObjectNode parentContent = (ObjectNode) schema.getParentContent();
-                    if (parentContent.has("properties")) {
-                        parentProperties = (ObjectNode) parentContent.get("properties");
-                    }
-                }
-            }
-        } else if (fieldNode != null && fieldNode.size() > 0) {
-            if( fieldNode.has("properties") && fieldNode.get("properties").isObject() && fieldNode.get("properties").size() > 0 )
-                schemaProperties = (ObjectNode) fieldNode.get("properties");
-            URI parentURI = null;
-            if( fieldNode.has("$ref") || fieldNode.has("extends") ) {
-                JsonNode refNode = fieldNode.get("$ref");
-                JsonNode extendsNode = fieldNode.get("extends");
-                if (refNode != null && refNode.isValueNode())
-                    parentURI = URI.create(refNode.asText());
-                else if (extendsNode != null && extendsNode.isObject())
-                    parentURI = URI.create(extendsNode.get("$ref").asText());
-                ObjectNode parentContent = null;
-                URI absoluteURI;
-                if (parentURI.isAbsolute())
-                    absoluteURI = parentURI;
-                else {
-                    absoluteURI = schema.getURI().resolve(parentURI);
-                    if (!absoluteURI.isAbsolute() || (absoluteURI.isAbsolute() && !getByUri(absoluteURI).isPresent() ))
-                        absoluteURI = schema.getParentURI().resolve(parentURI);
-                }
-                if (absoluteURI != null && absoluteURI.isAbsolute()) {
-                    if (getByUri(absoluteURI).isPresent())
-                        parentContent = (ObjectNode) getByUri(absoluteURI).get().getContent();
-                    if (parentContent != null && parentContent.isObject() && parentContent.has("properties")) {
-                        parentProperties = (ObjectNode) parentContent.get("properties");
-                    } else if (absoluteURI.getPath().endsWith("#properties")) {
-                        absoluteURI = URI.create(absoluteURI.toString().replace("#properties", ""));
-                        parentProperties = (ObjectNode) getByUri(absoluteURI).get().getContent().get("properties");
-                    }
-                }
-            }
-
-
-        }
-
-        ObjectNode resolvedProperties = NODE_FACTORY.objectNode();
-        if (parentProperties != null && parentProperties.size() > 0)
-            resolvedProperties = SchemaUtil.mergeProperties(schemaProperties, parentProperties);
-        else resolvedProperties = schemaProperties.deepCopy();
-
-        return resolvedProperties;
-    }
-
-    @Override
-    public int compare(Schema left, Schema right) {
-        // are they the same?
-        if( left.equals(right)) return 0;
-        // is one an ancestor of the other
-        Schema candidateAncestor = left;
-        while( candidateAncestor.getParent() != null ) {
-            candidateAncestor = candidateAncestor.getParent();
-            if( candidateAncestor.equals(right))
-                return 1;
-        }
-        candidateAncestor = right;
-        while( candidateAncestor.getParent() != null ) {
-            candidateAncestor = candidateAncestor.getParent();
-            if( candidateAncestor.equals(left))
-                return -1;
-        }
-        // does one have a field that reference the other?
-        for( JsonNode refNode : left.getContent().findValues("$ref") ) {
-            String refText = refNode.asText();
-            Optional<URI> resolvedURI = safeResolve(left.getURI(), refText);
-            if( resolvedURI.isPresent() && resolvedURI.get().equals(right.getURI()))
-                return 1;
-        }
-        for( JsonNode refNode : right.getContent().findValues("$ref") ) {
-            String refText = refNode.asText();
-            Optional<URI> resolvedURI = safeResolve(right.getURI(), refText);
-            if( resolvedURI.isPresent() && resolvedURI.get().equals(left.getURI()))
-                return -1;
-        }
-        // does one have a field that reference a third schema that references the other?
-        for( JsonNode refNode : left.getContent().findValues("$ref") ) {
-            String refText = refNode.asText();
-            Optional<URI> possibleConnectorURI = safeResolve(left.getURI(), refText);
-            if( possibleConnectorURI.isPresent()) {
-                Optional<Schema> possibleConnector = getByUri(possibleConnectorURI.get());
-                if (possibleConnector.isPresent()) {
-                    for (JsonNode connectorRefNode : possibleConnector.get().getContent().findValues("$ref")) {
-                        String connectorRefText = connectorRefNode.asText();
-                        Optional<URI> resolvedURI = safeResolve(possibleConnector.get().getURI(), connectorRefText);
-                        if (resolvedURI.isPresent() && resolvedURI.get().equals(right.getURI()))
-                            return 1;
-                    }
-                }
-            }
-        }
-        for( JsonNode refNode : right.getContent().findValues("$ref") ) {
-            String refText = refNode.asText();
-            Optional<URI> possibleConnectorURI = safeResolve(right.getURI(), refText);
-            if( possibleConnectorURI.isPresent()) {
-                Optional<Schema> possibleConnector = getByUri(possibleConnectorURI.get());
-                if (possibleConnector.isPresent()) {
-                    for (JsonNode connectorRefNode : possibleConnector.get().getContent().findValues("$ref")) {
-                        String connectorRefText = connectorRefNode.asText();
-                        Optional<URI> resolvedURI = safeResolve(possibleConnector.get().getURI(), connectorRefText);
-                        if (resolvedURI.isPresent() && resolvedURI.get().equals(left.getURI()))
-                            return -1;
-                    }
-                }
-            }
-        }
-        return 0;
-    }
-
-}
-

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/java/org/apache/streams/schema/SchemaUtil.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/java/org/apache/streams/schema/SchemaUtil.java b/streams-schemas/src/main/java/org/apache/streams/schema/SchemaUtil.java
deleted file mode 100644
index cefc5e8..0000000
--- a/streams-schemas/src/main/java/org/apache/streams/schema/SchemaUtil.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package org.apache.streams.schema;
-
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.node.JsonNodeFactory;
-import com.fasterxml.jackson.databind.node.ObjectNode;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.net.URI;
-import java.net.URL;
-import java.util.Iterator;
-import java.util.Map;
-
-import static org.apache.commons.lang3.StringUtils.isEmpty;
-
-/**
- * Created by steve on 4/30/16.
- */
-public class SchemaUtil {
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(SchemaUtil.class);
-    private static final JsonNodeFactory NODE_FACTORY = JsonNodeFactory.instance;
-    public static final String ILLEGAL_CHARACTER_REGEX = "[^0-9a-zA-Z_$]";
-
-    public static String childQualifiedName(String parentQualifiedName, String childSimpleName) {
-        String safeChildName = childSimpleName.replaceAll(ILLEGAL_CHARACTER_REGEX, "_");
-        return isEmpty(parentQualifiedName) ? safeChildName : parentQualifiedName + "." + safeChildName;
-    }
-
-    public static ObjectNode readSchema(URL schemaUrl) {
-
-        ObjectNode schemaNode = NODE_FACTORY.objectNode();
-        schemaNode.put("$ref", schemaUrl.toString());
-        return schemaNode;
-
-    }
-
-    public static ObjectNode mergeProperties(ObjectNode content, ObjectNode parent) {
-
-        ObjectNode merged = parent.deepCopy();
-        Iterator<Map.Entry<String, JsonNode>> fields = content.fields();
-        for( ; fields.hasNext(); ) {
-            Map.Entry<String, JsonNode> field = fields.next();
-            String fieldId = field.getKey();
-            merged.put(fieldId, field.getValue().deepCopy());
-        }
-        return merged;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/java/org/apache/streams/schema/URIUtil.java
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/java/org/apache/streams/schema/URIUtil.java b/streams-schemas/src/main/java/org/apache/streams/schema/URIUtil.java
deleted file mode 100644
index 04e8904..0000000
--- a/streams-schemas/src/main/java/org/apache/streams/schema/URIUtil.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.apache.streams.schema;
-
-import com.google.common.base.Optional;
-import org.apache.commons.lang3.StringUtils;
-
-import java.net.URI;
-import java.net.URISyntaxException;
-
-/**
- * Created by sblackmon on 5/1/16.
- */
-public class URIUtil {
-
-    public static URI removeFragment(URI id) {
-        return URI.create(StringUtils.substringBefore(id.toString(), "#"));
-    }
-
-    public static URI removeFile(URI id) {
-        return URI.create(StringUtils.substringBeforeLast(id.toString(), "/"));
-    }
-
-    public static Optional<URI> safeResolve(URI absolute, String relativePart) {
-        if( !absolute.isAbsolute()) return Optional.absent();
-        try {
-            return Optional.of(absolute.resolve(relativePart));
-        } catch( IllegalArgumentException e ) {
-            return Optional.absent();
-        }
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/activity.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/activity.json b/streams-schemas/src/main/jsonschema/activity.json
deleted file mode 100644
index 2edd759..0000000
--- a/streams-schemas/src/main/jsonschema/activity.json
+++ /dev/null
@@ -1,108 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/activity.json#",
-    "type": "object",
-    "title": "activity",
-    "javaInterfaces": ["java.io.Serializable"],
-    "description": "An activity construct recounts what an actor did to an object in the past. If there is no actor it simply describes the change.",
-    "additionalProperties": true,
-    "properties": {
-        "id": {
-            "type": "string",
-            "description": "Uniquely identifies each activity within the service",
-            "required": true
-        },
-        "actor": {
-            "type": "object",
-            "required": true,
-            "description": "Describes the entity that performed the activity. An activity MUST contain one actor property whose value is a single Object.",
-            "javaInterfaces": ["java.io.Serializable"],
-            "$ref": "./object.json"
-        },
-        "verb": {
-            "title": "verb",
-            "type": "string",
-            "default": "post",
-            "required": true,
-            "description": "Identifies the action that the activity describes. An activity MUST contain a verb property whose value is a JSON String that is non-empty and matches either the \"isegment-nz-nc\" or the \"IRI\" production in [RFC3987]. Note that the use of a relative reference other than a simple name is not allowed."
-        },
-        "object": {
-            "type": "object",
-            "required": true,
-            "description": "Describes the primary object of the activity. For instance, in the activity, \"John saved a movie to his wishlist\", the object of the activity is \"movie\". An activity SHOULD contain an object property whose value is a single Object. If the object property is not contained, the primary object of the activity MAY be implied by context.",
-            "$ref": "./object.json"
-        },
-        "target": {
-            "type": "object",
-            "description": "Describes the target of the activity. The precise meaning of the activity's target is dependent on the activities verb, but will often be the object the English preposition \"to\". For instance, in the activity, \"John saved a movie to his wishlist\", the target of the activity is \"wishlist\". The activity target MUST NOT be used to identity an indirect object that is not a target of the activity. An activity MAY contain a target property whose value is a single Object.",
-            "$ref": "./object.json"
-        },
-        "published": {
-            "type": "string",
-            "description": "The date and time at which the activity occurred. It is important to note that this is not necessarily the same as the time at which the activity was published. An activity MUST contain a postedTime property.",
-            "format": "date-time"
-        },
-        "updated": {
-            "type": "string",
-            "description": "The date and time at which a previously published activity has been modified. An Activity MAY contain an updatedTime property",
-            "format": "date-time"
-        },
-        "generator": {
-            "type": "object",
-            "description": "Describes the application that generated the activity. An activity MAY contain a generator property whose value is a single Object.",
-            "javaInterfaces": ["java.io.Serializable"],
-            "extends": {
-                "$ref": "./object.json"
-            }
-        },
-        "icon": {
-            "type": "object",
-            "description": "An IRI[RFC3987] identifying an image resource provides a visual representation of the activity, intended for human consumption. The image SHOULD have an aspect ratio of one (horizontal) to one (vertical) and SHOULD be suitable for presentation at a small size. An activity MAY have an icon property",
-            "javaInterfaces": ["java.io.Serializable"],
-            "extends": {
-                "$ref": "./media_link.json"
-            }
-        },
-        "provider": {
-            "type": "object",
-            "description": "Describes the application that published the activity. Note that this is not necessarily the same entity that generated the activity. An activity MAY contain a provider property whose value is a single Object",
-            "javaInterfaces": ["java.io.Serializable"],
-            "extends": {
-                "$ref": "./object.json"
-            }
-        },
-        "title": {
-            "type": "string",
-            "description": "Natural-language title or headline for the activity encoded as a single JSON String containing HTML markup. An activity MAY contain a title property",
-            "format": "html"
-        },
-        "content": {
-            "type": "string",
-            "description": "Natural-language description of the activity encoded as a single JSON String containing HTML markup. Visual elements such as thumbnail images MAY be included. An activity MAY contain a content property",
-            "format": "html"
-        },
-        "url": {
-            "type": "string",
-            "description": "An IRI [RFC3987] identifying a resource providing an HTML representation of the activity. An activity MAY contain a url property",
-            "format": "url"
-        },
-        "links": {
-            "type": "array",
-            "description": "Links between this object and other resources as defined in Web Linking",
-            "note": "Tell JSON schema team to not put links inside http://json-schema.org/hyper-schema#properties",
-            "items": {
-                "type": "string"
-            }
-        }
-    },
-    "links": [
-        {
-            "rel": "describedby",
-            "href": "./verbs/{verb}.json"
-        }
-    ]
-}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/collection.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/collection.json b/streams-schemas/src/main/jsonschema/collection.json
deleted file mode 100644
index 38f83e7..0000000
--- a/streams-schemas/src/main/jsonschema/collection.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/collection.json#",
-    "type": "object",
-    "title": "collection",
-    "javaInterfaces": ["java.io.Serializable"],
-    "description": "A collection is a generic list of Objects of any object type. The objectType of each item in the collection MAY be omitted if the type of object can be established through context. The collection is used primarily as the root of an Activity Streams document, but can be used as the value of extension properties in a variety of situations. ",
-    "properties": {
-        "url": {
-            "type": "string",
-            "description": "An IRI [RFC3987] referencing a JSON document containing the full listing of objects in the collection."
-        },
-        "totalItems": {
-            "type": "integer",
-            "description": "Non-negative integer specifying the total number of activities within the stream. The Stream serialization MAY contain a count property."
-        },
-        "items": {
-            "type": "array",
-            "required": true,
-            "description": "An array containing a listing of Objects of any object type. If used in combination with the url property, the items array can be used to provide a subset of the objects that may be found in the resource identified by the url.",
-            "items": {
-                "type": "object",
-                "extends": {
-                    "$ref": "./object.json"
-                }
-            }
-        },
-        "links": {
-            "type": "array",
-            "optional": true,
-            "description": "Links between an this object and other resources as defined in Web Linking",
-            "extends": {
-                "$ref": "http://json-schema.org/links#properties"
-            }
-        }
-    },
-    "links": [
-        {
-            "rel": "describedby",
-            "href": "http://json-schema.org/schema"
-        }
-    ]
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d9674f7c/streams-schemas/src/main/jsonschema/media_link.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/media_link.json b/streams-schemas/src/main/jsonschema/media_link.json
deleted file mode 100644
index e7eece0..0000000
--- a/streams-schemas/src/main/jsonschema/media_link.json
+++ /dev/null
@@ -1,34 +0,0 @@
-{
-    "$schema": "http://json-schema.org/draft-03/schema",
-    "$license": [
-        "http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0",
-        "http://www.apache.org/licenses/LICENSE-2.0"
-    ],
-    "id": "http://streams.incubator.apache.org/site/0.3-incubating-SNAPSHOT/streams-schemas/media_link.json#",
-    "type": "object",
-    "title": "media_link",
-    "javaInterfaces": ["java.io.Serializable"],
-    "description": "Visual representation of an object in the form of an image, video or embedded HTML fragments",
-    "properties": {
-        "duration": {
-            "title": "duration",
-            "type": "number",
-            "description": "A hint to the consumer about the length, in seconds, of the media resource identified by the url property. A media link MAY contain a \"duration\" property when the target resource is a time-based media item such as an audio or video."
-        },
-        "height": {
-            "title": "height",
-            "type": "integer",
-            "description": "A hint to the consumer about the height, in pixels, of the media resource identified by the url property. A media link MAY contain a height property when the target resource is a visual media item such as an image, video or embeddable HTML page."
-        },
-        "width": {
-            "title": "width",
-            "type": "integer",
-            "description": "A hint to the consumer about the width, in pixels, of the media resource identified by the url property. A media link MAY contain a width property when the target resource is a visual media item such as an image, video or embeddable HTML page."
-        },
-        "url": {
-            "type": "string",
-            "required": true,
-            "description": "The IRI of the media resource being linked. A media link MUST have a url property."
-        }
-    }
-}



[47/53] [abbrv] incubator-streams git commit: Added missing license headers for cassandra plugin

Posted by mf...@apache.org.
Added missing license headers for cassandra plugin


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/78b801dc
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/78b801dc
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/78b801dc

Branch: refs/heads/invalid_headers
Commit: 78b801dc8455d72a01c531dc51a9bf3388c6e178
Parents: 4d32e64
Author: Matt Franklin <mf...@apache.org>
Authored: Wed Oct 12 14:20:41 2016 -0400
Committer: Matt Franklin <mf...@apache.org>
Committed: Wed Oct 12 14:20:41 2016 -0400

----------------------------------------------------------------------
 .../StreamsCassandraGenerationConfig.java          | 17 +++++++++++++++++
 .../StreamsCassandraResourceGenerator.java         | 17 +++++++++++++++++
 .../StreamsCassandraResourceGeneratorMojo.java     | 17 +++++++++++++++++
 .../StreamsCassandraResourceGeneratorCLITest.java  | 17 +++++++++++++++++
 .../StreamsCassandraResourceGeneratorMojoTest.java | 17 +++++++++++++++++
 .../StreamsCassandraResourceGeneratorTest.java     | 17 +++++++++++++++++
 .../resources/streams-plugin-cassandra/pom.xml     | 17 +++++++++++++++++
 7 files changed, 119 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/78b801dc/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java
index 1950796..613cba2 100644
--- a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java
+++ b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraGenerationConfig.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.plugins.cassandra;
 
 import org.apache.streams.util.schema.GenerationConfig;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/78b801dc/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java
index 7889bdc..00416b1 100644
--- a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java
+++ b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGenerator.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.plugins.cassandra;
 
 import com.fasterxml.jackson.databind.JsonNode;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/78b801dc/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java
index 5cf814d..4320c5c 100644
--- a/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java
+++ b/streams-plugins/streams-plugin-cassandra/src/main/java/org/apache/streams/plugins/cassandra/StreamsCassandraResourceGeneratorMojo.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.plugins.cassandra;
 
 import org.apache.maven.plugin.AbstractMojo;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/78b801dc/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java
index 74c1152..5e26b06 100644
--- a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java
+++ b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorCLITest.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.plugins.cassandra.test;
 
 import com.google.common.collect.Lists;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/78b801dc/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java
index ee0ce99..13ec7e7 100644
--- a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java
+++ b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorMojoTest.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.plugins.cassandra.test;
 
 import com.google.common.collect.Lists;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/78b801dc/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java
index daf85ae..4e886ce 100644
--- a/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java
+++ b/streams-plugins/streams-plugin-cassandra/src/test/java/org/apache/streams/plugins/cassandra/test/StreamsCassandraResourceGeneratorTest.java
@@ -1,3 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
 package org.apache.streams.plugins.cassandra.test;
 
 import com.google.common.base.Predicate;

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/78b801dc/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
----------------------------------------------------------------------
diff --git a/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml b/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
index d576d72..b6fa3de 100644
--- a/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
+++ b/streams-plugins/streams-plugin-cassandra/src/test/resources/streams-plugin-cassandra/pom.xml
@@ -1,3 +1,20 @@
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
 <project xmlns="http://maven.apache.org/POM/4.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">