You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@streams.apache.org by le...@apache.org on 2012/12/19 19:02:46 UTC
svn commit: r1423988 - in /incubator/streams/site/trunk:
content/architecture.mdtext content/images/
content/images/v.1_architecture.png content/source-repository.mdtext
lib/path.pm
Author: letourneau
Date: Wed Dec 19 18:02:46 2012
New Revision: 1423988
URL: http://svn.apache.org/viewvc?rev=1423988&view=rev
Log:
added architecture and project structure information
Added:
incubator/streams/site/trunk/content/architecture.mdtext
incubator/streams/site/trunk/content/images/
incubator/streams/site/trunk/content/images/v.1_architecture.png (with props)
Modified:
incubator/streams/site/trunk/content/source-repository.mdtext
incubator/streams/site/trunk/lib/path.pm
Added: incubator/streams/site/trunk/content/architecture.mdtext
URL: http://svn.apache.org/viewvc/incubator/streams/site/trunk/content/architecture.mdtext?rev=1423988&view=auto
==============================================================================
--- incubator/streams/site/trunk/content/architecture.mdtext (added)
+++ incubator/streams/site/trunk/content/architecture.mdtext Wed Dec 19 18:02:46 2012
@@ -0,0 +1,56 @@
+Title: Apache Streams Architecture
+Notice: 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.
+
+The preliminary architecture for the Apache Streams project is heavily influenced by Enterprise Integration Patterns and general messaging architecture. It is the goal of the project to support both a lightweight servlet container deployment and a robust distributed deployment. The initial architectural patterns selected are being developed with an Enterprise Service Bus based architecture in mind with target implementations of Apache ServiceMix and Apache Camel.
+
+---
+
+> *Apache Streams (incubating) v.1 Architecture*
+
+---
+
+![v.01 Architecture](/images/v.1_architecture.png)
+
+Component Descriptions
+----------------------
+
+*Activity Publisher*: Entity external to Activity Streams server that creates Activities per the activitystre.ms specification
+
+*Activity Publisher Endpoint Adapter*: Provides protocol interfaces for Activity Publishers to use when registering as an Activity Publisher and when publishing Activities
+
+*Publisher Registration Service*: Authorizes Activity Producers to publish Activities to Activity Streams server and configures a dedicated Activity Consumer for the Activity Publisher
+
+*Activity Routing Service*: For pushed Activities, this service routes the Activity to the appropriate Activity Consumer
+
+*Activity Consumer*: Consumes Activities from Authorized Activity Publishers. An Activity Consumer is set up to be either a push or pull service. A Pull Activity Consumer will poll an Activity Publisher for new Activities, and a Push Activity Consumer will receive new Activities from the Activity Router Service.
+
+*Activity Splitter*: Activity Consumers use the Activity Splitter to create discrete Activity messages from a collection of Activities and place them for processing on the Activity Queue.
+
+*Activity Aggregation Service*: Pops Activities from the Activity Queue and notifies Activity Streams Subscriber Delegates when a new Activity Stream they have subscribed to is available.
+
+
+*Activity Streams Subscriber*: An external entity that is interested in subscribing to aggregated Activity Streams based on some criteria. Expects Activities adhering to activitystre.ms specification
+
+*Activity Streams Subscriber Delegate*: Defines the aggregation of Activity Streams on behalf of Activity Streams Consumers and provides notification to its Activity Streams Subscriber when new aggregated Activity Streams are available
+
+
+*Activity Streams Subscriber Endpoint Adapter*: Provides protocol interfaces for Activity Streams Subscribers to use when subscribing to Activity Streams and polling for new Activity Streams
+
+*Activity Streams Consumer Registration Service*: Creates Activity Streams Subscriber Delegates for each Activity Streams Subscribers.
+
+*Activity Streams Router*: Handles the routing of poll requests from Activity Streams Subscribers to Activity Streams Subscriber Delegates and push notifications from Activity Streams Subscriber Delegates to Activity Streams Subscribers
Added: incubator/streams/site/trunk/content/images/v.1_architecture.png
URL: http://svn.apache.org/viewvc/incubator/streams/site/trunk/content/images/v.1_architecture.png?rev=1423988&view=auto
==============================================================================
Binary file - no diff available.
Propchange: incubator/streams/site/trunk/content/images/v.1_architecture.png
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Modified: incubator/streams/site/trunk/content/source-repository.mdtext
URL: http://svn.apache.org/viewvc/incubator/streams/site/trunk/content/source-repository.mdtext?rev=1423988&r1=1423987&r2=1423988&view=diff
==============================================================================
--- incubator/streams/site/trunk/content/source-repository.mdtext (original)
+++ incubator/streams/site/trunk/content/source-repository.mdtext Wed Dec 19 18:02:46 2012
@@ -16,11 +16,32 @@ Notice: Licensed to the Apache Softwar
specific language governing permissions and limitations
under the License.
-Apache Streams uses [Subversion](http://subversion.apache.org/) for version control.
+Apache Streams uses [Subversion](http://subversion.apache.org/) for version control with a [Git](http://git.apache.org/) mirror.
Run the following command to check out the repository trunk:
svn checkout https://svn.apache.org/repos/asf/incubator/streams/trunk streams-trunk
+OR
+ git clone git://git.apache.org/streams.git streams-trunk
+
There is also a [Web UI](http://svnsearch.org/svnsearch/repos/ASF/search?path=%2Fincubator%2Fstreams)
which can be used to view the repository and project activity online.
+*Project Build Structure*
+
+Streams uses Maven 3+ as its build tool. Below is a breakdown of the projects and components that are built or can be built using Maven.
+
+*streams-eip-routes*: contains Camel xml routes that are packaged as a
+war. This could be hot deployed to servicemix or packaged with
+streams-web for a servlet container or applications server deployment.
+
+*streams-osgi-components*: contains OSGI compliant java modules. Each
+module is packaged as an osgi bundle jar. A uber-jar
+(streams-components) is also built that contains all of the components
+for packaging with streams-web. Each module could be hot deployed to
+servicemix.
+
+*streams-web*: contains streams-eip-routes, streams-components.jar,
+camel web interface, and possibly a streams web interface.
+Specifically for servlet contain/application server deployment.
+
Modified: incubator/streams/site/trunk/lib/path.pm
URL: http://svn.apache.org/viewvc/incubator/streams/site/trunk/lib/path.pm?rev=1423988&r1=1423987&r2=1423988&view=diff
==============================================================================
--- incubator/streams/site/trunk/lib/path.pm (original)
+++ incubator/streams/site/trunk/lib/path.pm Wed Dec 19 18:02:46 2012
@@ -8,6 +8,8 @@ our @nav = (
{ title => "Wiki (coming soon)",
href => ""},
{ title => "Project" },
+ { title => "Architecture",
+ href => "/architecture.html" },
{ title => "Source Code",
href => "/source-repository.html" },
{ title => "Mailing Lists",