You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@streams.apache.org by sb...@apache.org on 2016/06/01 17:53:24 UTC
[08/46] incubator-streams git commit: new components diagrams
new components diagrams
Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/44bc089c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/44bc089c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/44bc089c
Branch: refs/heads/STREAMS-389
Commit: 44bc089cf429b928f2988038e555064250835388
Parents: 6e5e5c2
Author: Steve Blackmon @steveblackmon <sb...@apache.org>
Authored: Wed Apr 20 13:35:31 2016 -0500
Committer: Steve Blackmon @steveblackmon <sb...@apache.org>
Committed: Wed Apr 20 13:35:31 2016 -0500
----------------------------------------------------------------------
pom.xml | 11 ++---
.../streams-persist-s3/pom.xml | 12 ++++++
streams-contrib/streams-persist-hdfs/pom.xml | 7 +++
.../src/main/resources/components.dot | 38 +++++++++++++++++
.../src/site/markdown/index.md | 3 ++
.../src/main/resources/components.dot | 26 +++++++++++
.../google-gmail/src/site/markdown/index.md | 2 +
.../src/main/resources/components.dot | 36 ++++++++++++++++
.../google-gplus/src/site/markdown/index.md | 3 ++
.../src/main/resources/components.dot | 38 +++++++++++++++++
.../src/site/markdown/index.md | 16 ++-----
.../src/main/resources/components.dot | 33 ++++++++++++++
.../src/site/markdown/index.md | 2 +
.../src/main/resources/components.dot | 45 ++++++++++++++++++++
.../src/site/markdown/index.md | 2 +
.../src/main/resources/components.dot | 38 +++++++++++++++++
.../src/site/markdown/index.md | 2 +
17 files changed, 296 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 3290bf3..b8935f5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -291,11 +291,12 @@
<version>${jsonschema2pojo.version}</version>
<type>jar</type>
<scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.jsonschema2pojo</groupId>
- <artifactId>jsonschema2pojo-maven-plugin</artifactId>
- <version>${jsonschema2pojo.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>com.typesafe</groupId>
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-amazon-aws/streams-persist-s3/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-amazon-aws/streams-persist-s3/pom.xml b/streams-contrib/streams-amazon-aws/streams-persist-s3/pom.xml
index 7d44a1e..a83a2a4 100644
--- a/streams-contrib/streams-amazon-aws/streams-persist-s3/pom.xml
+++ b/streams-contrib/streams-amazon-aws/streams-persist-s3/pom.xml
@@ -46,6 +46,11 @@
<version>${project.version}</version>
</dependency>
<dependency>
+ <groupId>org.apache.streams</groupId>
+ <artifactId>streams-converters</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk</artifactId>
<exclusions>
@@ -130,6 +135,13 @@
</goals>
</execution>
</executions>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.streams</groupId>
+ <artifactId>streams-converters</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
</plugin>
</plugins>
</build>
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-persist-hdfs/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-persist-hdfs/pom.xml b/streams-contrib/streams-persist-hdfs/pom.xml
index 73f6730..bfd6edb 100644
--- a/streams-contrib/streams-persist-hdfs/pom.xml
+++ b/streams-contrib/streams-persist-hdfs/pom.xml
@@ -200,6 +200,13 @@
</goals>
</execution>
</executions>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.streams</groupId>
+ <artifactId>streams-converters</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-provider-facebook/src/main/resources/components.dot
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-facebook/src/main/resources/components.dot b/streams-contrib/streams-provider-facebook/src/main/resources/components.dot
new file mode 100644
index 0000000..b209263
--- /dev/null
+++ b/streams-contrib/streams-provider-facebook/src/main/resources/components.dot
@@ -0,0 +1,38 @@
+digraph g {
+
+ graph [compound = true];
+
+ //presentation
+ splines = true;
+ overlap = false;
+ rankdir = TB;
+
+ subgraph cluster_generators {
+ label="generators";
+ style="dotted";
+ generators_facebook [label="https://api.facebook.com"]
+ }
+
+ subgraph cluster_providers {
+ label="providers";
+ providers_facebook_page [label="FacebookPageProvider"]
+ providers_facebook_pagefeed [label="FacebookPageFeedDataCollector"]
+ }
+
+ subgraph cluster_processors {
+ label="processors";
+ processors_facebook_activity [label="FacebookPageActivitySerializer"]
+ processors_facebook_activityobject [label="FacebookPostActivitySerializer"]
+ }
+
+ persisters [label="persisters", shape="cylinder"];
+
+ generators_facebook -> providers_facebook_page
+ generators_facebook -> providers_facebook_pagefeed
+ providers_facebook_page -> processors_facebook_activityobject [label="o.a.s.f.Page"]
+ providers_facebook_pagefeed -> processors_facebook_activity [label="o.a.s.f.Post\no.a.s.f.Comment"]
+
+ processors_facebook_activityobject -> persisters [label="o.a.s.p.j.Page"]
+ processors_facebook_activity -> persisters [label="o.a.s.p.j.Post\no.a.s.p.j.Comment"]
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-provider-facebook/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-facebook/src/site/markdown/index.md b/streams-contrib/streams-provider-facebook/src/site/markdown/index.md
index 8f61f13..da2b329 100644
--- a/streams-contrib/streams-provider-facebook/src/site/markdown/index.md
+++ b/streams-contrib/streams-provider-facebook/src/site/markdown/index.md
@@ -15,5 +15,8 @@ streams-provider-facebook contains schema definitions, providers, conversions, a
|--------|
| [FacebookConfiguration.json](org/apache/streams/facebook/FacebookConfiguration.json "FacebookConfiguration.json") [FacebookConfiguration.html](apidocs/org/apache/streams/facebook/FacebookConfiguration.html "javadoc") |
+## Example
+
+![components](components.dot.svg "Components")
###### Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-provider-google/google-gmail/src/main/resources/components.dot
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-google/google-gmail/src/main/resources/components.dot b/streams-contrib/streams-provider-google/google-gmail/src/main/resources/components.dot
new file mode 100644
index 0000000..e2a32a2
--- /dev/null
+++ b/streams-contrib/streams-provider-google/google-gmail/src/main/resources/components.dot
@@ -0,0 +1,26 @@
+digraph g {
+
+ graph [compound = true];
+
+ //presentation
+ splines = true;
+ overlap = false;
+ rankdir = TB;
+
+ subgraph cluster_generators {
+ label="generators";
+ style="dotted";
+ generators_gmail [label="https://www.googleapis.com/gmail/v1"]
+ }
+
+ subgraph cluster_providers {
+ label="providers";
+ providers_gmail [label="GmailProvider"]
+ }
+
+ persisters [label="persisters", shape="cylinder"];
+
+ generators_gmail -> providers_gmail
+
+ providers_gmail -> persisters
+}
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-provider-google/google-gmail/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-google/google-gmail/src/site/markdown/index.md b/streams-contrib/streams-provider-google/google-gmail/src/site/markdown/index.md
index 8ca848f..b733603 100644
--- a/streams-contrib/streams-provider-google/google-gmail/src/site/markdown/index.md
+++ b/streams-contrib/streams-provider-google/google-gmail/src/site/markdown/index.md
@@ -11,6 +11,8 @@ google-gmail contains providers, conversions, and utility classes for activity e
## Components
+![components](components.dot.svg "Components")
+
| Class | Class JavaDoc |
|-------|---------------|
| GMailProvider | [GMailProvider.html](apidocs/com/google/gmail/provider/GMailProvider.html "GMailProvider.html") | [TwitterUserInformationConfiguration.json](com/twitter/TwitterUserInformationConfiguration.json "TwitterUserInformationConfiguration.json") |
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-provider-google/google-gplus/src/main/resources/components.dot
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-google/google-gplus/src/main/resources/components.dot b/streams-contrib/streams-provider-google/google-gplus/src/main/resources/components.dot
new file mode 100644
index 0000000..2062ef3
--- /dev/null
+++ b/streams-contrib/streams-provider-google/google-gplus/src/main/resources/components.dot
@@ -0,0 +1,36 @@
+digraph g {
+
+ graph [compound = true];
+
+ //presentation
+ splines = true;
+ overlap = false;
+ rankdir = TB;
+
+ subgraph cluster_generators {
+ label="generators";
+ style="dotted";
+ generators_gplus [label="https://www.googleapis.com/gmail/v1"]
+ }
+
+ subgraph cluster_providers {
+ label="providers";
+ providers_gplus_GPlusUserActivityProvider [label="GPlusUserActivityProvider"]
+ providers_gplus_GPlusUserDataProvider [label="providers_gplus_GPlusUserDataProvider"]
+ }
+
+ subgraph cluster_processors {
+ label="processors";
+ processors_gplus_activity [label="GooglePlusTypeConverter"]
+ }
+
+ persisters [label="persisters", shape="cylinder"];
+
+ generators_gplus -> providers_gplus_GPlusUserActivityProvider
+ generators_gplus -> providers_gplus_GPlusUserDataProvider
+
+ providers_gplus_GPlusUserActivityProvider -> processors_gplus_activity [label="c.g.a.s.p.m.Activity"]
+ providers_gplus_GPlusUserDataProvider -> processors_gplus_activity [label="c.g.a.s.p.m.Person"]
+
+ processors_gplus_activity -> persisters [label="o.a.s.p.j.Activity"]
+}
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-provider-google/google-gplus/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-google/google-gplus/src/site/markdown/index.md b/streams-contrib/streams-provider-google/google-gplus/src/site/markdown/index.md
index 2a88ec0..f206b8a 100644
--- a/streams-contrib/streams-provider-google/google-gplus/src/site/markdown/index.md
+++ b/streams-contrib/streams-provider-google/google-gplus/src/site/markdown/index.md
@@ -11,9 +11,12 @@ google-gplus contains providers, conversions, and utility classes for activity e
## Components
+![components](components.dot.svg "Components")
+
| Class | Class JavaDoc |
|-------|---------------|
| GPlusUserDataProvider | [GPlusUserDataProvider.html](apidocs/com/google/gplus/provider/GPlusUserDataProvider.html "GPlusUserDataProvider.html") |
| GPlusUserActivityProvider | [GPlusUserActivityProvider.html](apidocs/com/google/gplus/provider/GPlusUserActivityProvider.html "GPlusUserActivityProvider.html") |
+| GooglePlusTypeConverter | [GooglePlusTypeConverter.html](apidocs/com/google/gplus/processor/GooglePlusTypeConverter.html "GooglePlusTypeConverter.html") |
###### Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-provider-instagram/src/main/resources/components.dot
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-instagram/src/main/resources/components.dot b/streams-contrib/streams-provider-instagram/src/main/resources/components.dot
new file mode 100644
index 0000000..590e07d
--- /dev/null
+++ b/streams-contrib/streams-provider-instagram/src/main/resources/components.dot
@@ -0,0 +1,38 @@
+digraph g {
+
+ graph [compound = true];
+
+ //presentation
+ splines = true;
+ overlap = false;
+ rankdir = TB;
+
+ subgraph cluster_generators {
+ label="generators";
+ style="dotted";
+ generators_instagram [label="https://api.instagram.com"]
+ }
+
+ subgraph cluster_providers {
+ label="providers";
+ providers_instagram_userinfo [label="InstagramUserInfoCollector"]
+ providers_instagram_media [label="InstagramRecentMediaCollector"]
+ }
+
+ subgraph cluster_processors {
+ label="processors";
+ processors_instagram_activity [label="InstagramTypeConverter"]
+ processors_instagram_activityobject [label="InstagramTypeConverter"]
+ }
+
+ persisters [label="persisters", shape="cylinder"];
+
+ generators_instagram -> providers_instagram_userinfo
+ generators_instagram -> providers_instagram_media
+ providers_instagram_userinfo -> processors_instagram_activityobject [label="o.a.s.i.UserInfoData"]
+ providers_instagram_media -> processors_instagram_activity [label="o.a.s.i.MediaFeedData"]
+
+ processors_instagram_activityobject -> persisters [label="o.a.s.p.j.Page"]
+ processors_instagram_activity -> persisters [label="o.a.s.p.j.Photo\no.a.s.p.j.Video\no.a.s.p.j.Comment"]
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-provider-instagram/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-instagram/src/site/markdown/index.md b/streams-contrib/streams-provider-instagram/src/site/markdown/index.md
index 4392e47..ae0792a 100644
--- a/streams-contrib/streams-provider-instagram/src/site/markdown/index.md
+++ b/streams-contrib/streams-provider-instagram/src/site/markdown/index.md
@@ -1,20 +1,10 @@
streams-provider-instagram
==========================
-Purpose
+Module connects to instagram API, collects events, converts to activity, and passes each activity downstream.
- Module connects to instagram API, collects events, converts to activity, and passes each activity downstream.
+## Example
-Example configuration
-
- "instagram": {
- "version": "v1",
- "endpoint": "media/recent",
- "accessToken": "",
- "info": [
- "3",
- "kevin"
- ]
- }
+![example](example.dot.svg "Example")
###### Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-provider-rss/src/main/resources/components.dot
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-rss/src/main/resources/components.dot b/streams-contrib/streams-provider-rss/src/main/resources/components.dot
new file mode 100644
index 0000000..97c9409
--- /dev/null
+++ b/streams-contrib/streams-provider-rss/src/main/resources/components.dot
@@ -0,0 +1,33 @@
+digraph g {
+
+ graph [compound = true];
+
+ //presentation
+ splines = true;
+ overlap = false;
+ rankdir = TB;
+
+ subgraph cluster_generators {
+ label="generators";
+ style="dotted";
+ generators_rss [label="RSS Feeds"]
+ }
+
+ subgraph cluster_providers {
+ label="providers";
+ providers_rss_streamprovider [label="RssStreamProvider"]
+ }
+
+ subgraph cluster_processors {
+ label="processors";
+ processors_rss_activity [label="RssTypeConverter"]
+ }
+
+ persisters [label="persisters", shape="cylinder"];
+
+ generators_rss -> providers_rss_streamprovider
+ providers_rss_streamprovider -> processors_rss_activity [label="c.s.s.f.s.SyndEntry"]
+
+ processors_rss_activity -> persisters [label="o.a.s.p.j.Activity"]
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-provider-rss/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-rss/src/site/markdown/index.md b/streams-contrib/streams-provider-rss/src/site/markdown/index.md
index 8a076cd..2cbf26a 100644
--- a/streams-contrib/streams-provider-rss/src/site/markdown/index.md
+++ b/streams-contrib/streams-provider-rss/src/site/markdown/index.md
@@ -9,6 +9,8 @@ streams-provider-rss
## Components
+![components](components.dot.svg "Components")
+
| Class | Configuration | Example Configuration(s) |
|-------|---------------|--------------------------|
| RssStreamProvider [RssStreamProvider.html](apidocs/org/apache/streams/rss/provider/RssStreamProvider.html "javadoc") | [RssStreamConfiguration.json](RssStreamConfiguration.json "RssStreamConfiguration.json") [RssStreamConfiguration.html](apidocs/org/apache/streams/rss/RssStreamConfiguration.html "javadoc") | [rss.conf](rss.conf "rss.conf") |
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-provider-twitter/src/main/resources/components.dot
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-twitter/src/main/resources/components.dot b/streams-contrib/streams-provider-twitter/src/main/resources/components.dot
new file mode 100644
index 0000000..1dcc3e9
--- /dev/null
+++ b/streams-contrib/streams-provider-twitter/src/main/resources/components.dot
@@ -0,0 +1,45 @@
+digraph g {
+
+ graph [compound = true];
+
+ //presentation
+ splines = true;
+ overlap = false;
+ rankdir = TB;
+
+ subgraph cluster_generators {
+ label="generators";
+ style="dotted";
+ generators_twitter [label="https://api.twitter.com"]
+ }
+
+ subgraph cluster_providers {
+ label="providers";
+ providers_twitter_userstream [label="TwitterUserstreamProvider"]
+ providers_twitter_userinfo [label="TwitterUserInformationProvider"]
+ providers_twitter_timeline [label="TwitterTimelineProvider"]
+ providers_twitter_following [label="TwitterFollowingProvider"]
+
+ }
+
+ subgraph cluster_processors {
+ label="processors";
+ processors_twitter_activity [label="ActivityConverterProcessor"]
+ processors_twitter_activityobject [label="ActivityObjectConverterProcessor"]
+ }
+
+ persisters [label="persisters", shape="cylinder"];
+
+ generators_twitter -> providers_twitter_userstream
+ generators_twitter -> providers_twitter_timeline
+ generators_twitter -> providers_twitter_following
+ generators_twitter -> providers_twitter_userinfo
+ providers_twitter_userinfo -> processors_twitter_activityobject [label="o.a.s.t.User"]
+ providers_twitter_userstream -> processors_twitter_activity [label="o.a.s.t.Tweet"]
+ providers_twitter_timeline -> processors_twitter_activity [label="o.a.s.t.Tweet"]
+ providers_twitter_following -> processors_twitter_activity [label="o.a.s.t.Follow"]
+
+ processors_twitter_activityobject -> persisters [label="o.a.s.p.j.Page"]
+ processors_twitter_activity -> persisters [label="o.a.s.p.j.Post\no.a.s.p.j.Share\no.a.s.p.j.Follow"]
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-provider-twitter/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-twitter/src/site/markdown/index.md b/streams-contrib/streams-provider-twitter/src/site/markdown/index.md
index 576ad16..ae35176 100644
--- a/streams-contrib/streams-provider-twitter/src/site/markdown/index.md
+++ b/streams-contrib/streams-provider-twitter/src/site/markdown/index.md
@@ -22,6 +22,8 @@ streams-provider-twitter contains schema definitions, providers, conversions, an
## Components
+![components](components.dot.svg "Components")
+
| Class | Configuration | Example Configuration(s) |
|-------|---------------|--------------------------|
| TwitterUserInformationProvider [TwitterUserInformationProvider.html](apidocs/org/apache/streams/twitter/TwitterUserInformationConfiguration.html "javadoc") | [TwitterUserInformationConfiguration.json](com/twitter/TwitterUserInformationConfiguration.json "TwitterUserInformationConfiguration.json") [TwitterUserInformationConfiguration.html](apidocs/org/apache/streams/twitter/pojo/TwitterUserInformationConfiguration.html "javadoc") | [userinfo.conf](userinfo.conf "userinfo.conf") |
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-provider-youtube/src/main/resources/components.dot
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-youtube/src/main/resources/components.dot b/streams-contrib/streams-provider-youtube/src/main/resources/components.dot
new file mode 100644
index 0000000..1c4a7b2
--- /dev/null
+++ b/streams-contrib/streams-provider-youtube/src/main/resources/components.dot
@@ -0,0 +1,38 @@
+digraph g {
+
+ graph [compound = true];
+
+ //presentation
+ splines = true;
+ overlap = false;
+ rankdir = TB;
+
+ subgraph cluster_generators {
+ label="generators";
+ style="dotted";
+ generators_youtube [label="https://api.youtube.com"]
+ }
+
+ subgraph cluster_providers {
+ label="providers";
+ providers_youtube_channel [label="YoutubeChannelProvider"]
+ providers_youtube_video [label="YoutubeUserActivityProvider"]
+ }
+
+ subgraph cluster_processors {
+ label="processors";
+ processors_youtube_activity [label="YoutubeTypeConverter"]
+ processors_youtube_activityobject [label="YoutubeTypeConverter"]
+ }
+
+ persisters [label="persisters", shape="cylinder"];
+
+ generators_youtube -> providers_youtube_channel
+ generators_youtube -> providers_youtube_video
+ providers_youtube_channel -> processors_youtube_activityobject [label="o.a.s.y.Channel"]
+ providers_youtube_video -> processors_youtube_activity [label="o.a.s.y.Video"]
+
+ processors_youtube_activityobject -> persisters [label="o.a.s.p.j.Page"]
+ processors_youtube_activity -> persisters [label="o.a.s.p.j.Video\no.a.s.p.j.Comment"]
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/44bc089c/streams-contrib/streams-provider-youtube/src/site/markdown/index.md
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-youtube/src/site/markdown/index.md b/streams-contrib/streams-provider-youtube/src/site/markdown/index.md
index d085d1e..97d8ef8 100644
--- a/streams-contrib/streams-provider-youtube/src/site/markdown/index.md
+++ b/streams-contrib/streams-provider-youtube/src/site/markdown/index.md
@@ -11,6 +11,8 @@ streams-provider-youtube contains providers, conversions, and utility classes.
## Components
+![components](components.dot.svg "Components")
+
| Class | Configuration |
|-------|---------------|
| YoutubeChannelProvider [YoutubeChannelProvider.html](apidocs/com/youtube/provider/YoutubeChannelProvider.html "javadoc") | [YoutubeConfiguration.json](com/youtube/YoutubeConfiguration.json "YoutubeConfiguration.json") [YoutubeConfiguration.html](apidocs/com/youtube/YoutubeConfiguration.html "javadoc")