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 2014/11/19 21:32:40 UTC
[1/5] incubator-streams git commit: Merge pull request #13 from
apache/master
Repository: incubator-streams
Updated Branches:
refs/heads/master 56011e4b6 -> 590b053b9
Merge pull request #13 from apache/master
Merge Apache Master 2014/11/17
Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/f3de6f88
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/f3de6f88
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/f3de6f88
Branch: refs/heads/master
Commit: f3de6f8847f2091f68792e90a9643fd541f4e0dc
Parents: 76763f8 9b89c08
Author: Ryan Ebanks <rb...@users.noreply.github.com>
Authored: Mon Nov 17 10:32:38 2014 -0600
Committer: Ryan Ebanks <rb...@users.noreply.github.com>
Committed: Mon Nov 17 10:32:38 2014 -0600
----------------------------------------------------------------------
pom.xml | 61 +++++
streams-components/pom.xml | 62 +++++
streams-components/streams-http/README.md | 16 ++
streams-components/streams-http/pom.xml | 153 +++++++++++
.../components/http/HttpConfigurator.java | 62 +++++
.../http/processor/SimpleHTTPGetProcessor.java | 268 ++++++++++++++++++
.../http/provider/SimpleHTTPGetProvider.java | 230 ++++++++++++++++
.../components/http/HttpConfiguration.json | 50 ++++
.../http/HttpProcessorConfiguration.json | 28 ++
.../http/HttpProviderConfiguration.json | 18 ++
.../main/jsonschema/StreamsConfiguration.json | 3 +
streams-contrib/pom.xml | 5 +-
streams-contrib/streams-persist-console/pom.xml | 34 +++
.../streams/console/ConsolePersistReader.java | 11 +-
.../streams/console/ConsolePersistWriter.java | 11 +-
.../streams/jackson/TypeConverterProcessor.java | 112 ++++++++
.../test/TypeConverterProcessorTest.java | 95 +++++++
.../streams-processor-peoplepattern/pom.xml | 138 ++++++++++
.../peoplepattern/AccountTypeProcessor.java | 75 +++++
.../peoplepattern/DemographicsProcessor.java | 76 ++++++
.../streams/peoplepattern/AccountType.json | 27 ++
.../streams/peoplepattern/Demographics.json | 60 ++++
.../resources/templates/peoplepatternactor.json | 25 ++
.../DatasiftActivitySerializerProcessor.java | 89 ++++++
.../DatasiftTypeConverterProcessor.java | 7 +-
.../serializer/DatasiftActivitySerializer.java | 12 +-
.../DatasiftDefaultActivitySerializer.java | 214 ---------------
.../serializer/DatasiftEventClassifier.java | 53 ++++
.../DatasiftInstagramActivitySerializer.java | 8 +-
.../DatasiftInteractionActivitySerializer.java | 222 +++++++++++++++
.../DatasiftTweetActivitySerializer.java | 266 ------------------
.../DatasiftTwitterActivitySerializer.java | 272 +++++++++++++++++++
.../datasift/util/StreamsDatasiftMapper.java | 11 +-
.../apache/streams/datasift/DatasiftPush.json | 30 ++
.../com/datasift/test/DatasiftSerDeTest.java | 18 +-
.../DatasiftTypeConverterProcessorTest.java | 72 -----
.../DatasiftActivitySerializerTest.java | 82 +++---
.../serializer/DatasiftEventClassifierTest.java | 64 +++++
...DatasiftInstagramActivitySerializerTest.java | 43 +++
...tasiftInteractionActivitySerializerTest.java | 48 ++++
.../DatasiftTwitterActivitySerializerTest.java | 43 +++
.../api/FacebookPostActivitySerializer.java | 244 +----------------
.../serializer/FacebookActivityUtil.java | 153 ++++++++++-
.../facebook/test/FacebookPostSerDeTest.java | 28 +-
.../google-gplus/pom.xml | 32 +++
.../processor/GooglePlusCommentProcessor.java | 87 ++++++
.../gplus/provider/AbstractGPlusProvider.java | 234 ++++++++++++++++
.../gplus/provider/GPlusActivitySerializer.java | 4 +-
.../gplus/provider/GPlusDataCollector.java | 50 ++++
.../provider/GPlusHistoryProviderTask.java | 106 --------
.../google/gplus/provider/GPlusProvider.java | 189 -------------
.../provider/GPlusUserActivityCollector.java | 108 ++++++++
.../provider/GPlusUserActivityProvider.java | 18 ++
.../gplus/provider/GPlusUserDataCollector.java | 79 ++++++
.../gplus/provider/GPlusUserDataProvider.java | 18 ++
.../util/GPlusCommentDeserializer.java | 98 +++++++
.../serializer/util/GooglePlusActivityUtil.java | 50 ++++
.../com/google/gplus/GPlusConfiguration.json | 44 ++-
.../gplus/GooglePlusCommentSerDeTest.java | 114 ++++++++
.../provider/TestAbstractGPlusProvider.java | 82 ++++++
.../TestGPlusUserActivityCollector.java | 268 ++++++++++++++++++
.../provider/TestGPlusUserDataCollector.java | 131 +++++++++
.../resources/google_plus_comments_jsons.txt | 3 +
streams-contrib/streams-provider-google/pom.xml | 6 +
.../rss/provider/RssStreamProviderTest.java | 6 +-
.../streams-provider-twitter/pom.xml | 11 +
.../processor/TwitterEventProcessor.java | 194 -------------
.../twitter/processor/TwitterTypeConverter.java | 209 --------------
.../processor/TwitterUrlApiProcessor.java | 73 +++++
.../provider/TwitterEventClassifier.java | 58 ++--
.../provider/TwitterTimelineProvider.java | 7 +-
.../serializer/StreamsTwitterMapper.java | 11 +-
.../TwitterJsonActivitySerializer.java | 24 +-
.../TwitterJsonDeleteActivitySerializer.java | 6 +
.../TwitterJsonRetweetActivitySerializer.java | 6 +
.../TwitterJsonTweetActivitySerializer.java | 6 +
.../TwitterJsonUserActivitySerializer.java | 6 +
...erJsonUserstreameventActivitySerializer.java | 6 +
.../streams/twitter/test/SimpleTweetTest.java | 11 +-
.../twitter/test/TweetActivitySerDeTest.java | 6 +-
.../streams/twitter/test/TweetSerDeTest.java | 6 +-
.../test/TwitterEventClassifierTest.java | 34 +++
streams-monitoring/pom.xml | 109 ++++++++
.../jackson/DatumStatusCounterDeserializer.java | 76 ++++++
.../jackson/MemoryUsageDeserializer.java | 79 ++++++
.../jackson/StreamsTaskCounterDeserializer.java | 88 ++++++
.../jackson/ThroughputQueueDeserializer.java | 87 ++++++
.../monitoring/persist/MessagePersister.java | 34 +++
.../persist/impl/BroadcastMessagePersister.java | 94 +++++++
.../tasks/BroadcastMonitorThread.java | 171 ++++++++++++
.../org/apache/streams/pojo/json/Broadcast.json | 13 +
.../pojo/json/DatumStatusCounterBroadcast.json | 22 ++
.../streams/pojo/json/MemoryUsageBroadcast.json | 30 ++
.../pojo/json/StreamsTaskCounterBroadcast.json | 38 +++
.../pojo/json/ThroughputQueueBroadcast.json | 38 +++
.../jackson/MemoryUsageDeserializerTest.java | 77 ++++++
.../impl/BroadcastMessagePersisterTest.java | 60 ++++
.../tasks/BroadcastMonitorThreadTest.java | 55 ++++
.../src/test/resources/MemoryUsageObjects.json | 1 +
streams-pojo-extensions/pom.xml | 64 +++++
.../apache/streams/data/util/ExtensionUtil.java | 108 ++++++++
.../apache/streams/data/util/ActivityUtil.java | 14 +-
.../jackson/StreamsDateTimeDeserializer.java | 23 +-
.../streams/jackson/StreamsJacksonMapper.java | 20 ++
.../streams/jackson/StreamsJacksonModule.java | 9 +
.../org/apache/streams/pojo/json/activity.json | 3 +-
.../org/apache/streams/pojo/json/object.json | 2 +-
streams-runtimes/streams-runtime-local/pom.xml | 5 +
.../local/builders/LocalStreamBuilder.java | 19 +-
.../streams/local/tasks/StreamsMergeTask.java | 7 +
.../local/tasks/StreamsPersistWriterTask.java | 18 +-
.../local/tasks/StreamsProcessorTask.java | 20 +-
.../local/tasks/StreamsProviderTask.java | 15 +
.../apache/streams/local/tasks/StreamsTask.java | 4 +
.../local/builders/LocalStreamBuilderTest.java | 32 ++-
.../streams/local/tasks/BasicTasksTest.java | 26 +-
.../streams/pig/test/PigProcessDatumTest.java | 2 -
.../pig/test/PigProcessDocumentTest.java | 2 -
.../streams/pig/test/PigSerializerTest.java | 3 +-
.../backoff/AbstractBackOffStrategy.java | 15 +-
120 files changed, 5800 insertions(+), 1683 deletions(-)
----------------------------------------------------------------------
[4/5] incubator-streams git commit: Added param constructors to GPlus
providers
Posted by sb...@apache.org.
Added param constructors to GPlus providers
Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/2390c0ee
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/2390c0ee
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/2390c0ee
Branch: refs/heads/master
Commit: 2390c0ee01b1300bf9bb104a619d6e25e2f1d347
Parents: a4005ff
Author: Ryan Ebanks <ry...@gmail.com>
Authored: Tue Nov 18 14:45:46 2014 -0600
Committer: Ryan Ebanks <ry...@gmail.com>
Committed: Tue Nov 18 14:45:46 2014 -0600
----------------------------------------------------------------------
.../google/gplus/provider/GPlusUserActivityProvider.java | 11 +++++++++++
.../com/google/gplus/provider/GPlusUserDataProvider.java | 11 +++++++++++
2 files changed, 22 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/2390c0ee/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusUserActivityProvider.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusUserActivityProvider.java b/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusUserActivityProvider.java
index e7f1bec..a80a7ab 100644
--- a/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusUserActivityProvider.java
+++ b/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusUserActivityProvider.java
@@ -2,6 +2,7 @@ package com.google.gplus.provider;
import com.google.api.services.plus.Plus;
import org.apache.streams.core.StreamsDatum;
+import org.apache.streams.google.gplus.GPlusConfiguration;
import org.apache.streams.google.gplus.configuration.UserInfo;
import org.apache.streams.util.api.requests.backoff.BackOffStrategy;
@@ -11,6 +12,16 @@ import java.util.concurrent.BlockingQueue;
*
*/
public class GPlusUserActivityProvider extends AbstractGPlusProvider{
+
+
+ public GPlusUserActivityProvider() {
+ super();
+ }
+
+ public GPlusUserActivityProvider(GPlusConfiguration config) {
+ super(config);
+ }
+
@Override
protected Runnable getDataCollector(BackOffStrategy strategy, BlockingQueue<StreamsDatum> queue, Plus plus, UserInfo userInfo) {
return new GPlusUserActivityCollector(plus, queue, strategy, userInfo);
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/2390c0ee/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusUserDataProvider.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusUserDataProvider.java b/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusUserDataProvider.java
index 0e2782d..74ed2e7 100644
--- a/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusUserDataProvider.java
+++ b/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusUserDataProvider.java
@@ -2,6 +2,7 @@ package com.google.gplus.provider;
import com.google.api.services.plus.Plus;
import org.apache.streams.core.StreamsDatum;
+import org.apache.streams.google.gplus.GPlusConfiguration;
import org.apache.streams.google.gplus.configuration.UserInfo;
import org.apache.streams.util.api.requests.backoff.BackOffStrategy;
@@ -11,6 +12,16 @@ import java.util.concurrent.BlockingQueue;
*
*/
public class GPlusUserDataProvider extends AbstractGPlusProvider{
+
+ public GPlusUserDataProvider(){
+ super();
+ }
+
+ public GPlusUserDataProvider(GPlusConfiguration config) {
+ super(config);
+ }
+
+
@Override
protected Runnable getDataCollector(BackOffStrategy strategy, BlockingQueue<StreamsDatum> queue, Plus plus, UserInfo userInfo) {
return new GPlusUserDataCollector(plus, strategy, queue, userInfo);
[5/5] incubator-streams git commit: Merge commit
'2390c0ee01b1300bf9bb104a619d6e25e2f1d347'
Posted by sb...@apache.org.
Merge commit '2390c0ee01b1300bf9bb104a619d6e25e2f1d347'
Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/590b053b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/590b053b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/590b053b
Branch: refs/heads/master
Commit: 590b053b97b978c65f8fb8bb4a466b0dbf17f90a
Parents: 56011e4 2390c0e
Author: sblackmon <sb...@apache.org>
Authored: Wed Nov 19 14:32:25 2014 -0600
Committer: sblackmon <sb...@apache.org>
Committed: Wed Nov 19 14:32:25 2014 -0600
----------------------------------------------------------------------
.../gplus/provider/AbstractGPlusProvider.java | 31 +++++++++++--------
.../gplus/provider/GPlusConfigurator.java | 32 ++++++++++----------
.../provider/GPlusUserActivityProvider.java | 11 +++++++
.../gplus/provider/GPlusUserDataProvider.java | 11 +++++++
.../com/google/gplus/GPlusConfiguration.json | 17 +++++------
.../provider/TestAbstractGPlusProvider.java | 7 ++---
6 files changed, 67 insertions(+), 42 deletions(-)
----------------------------------------------------------------------
[3/5] incubator-streams git commit: Removed commented out code
Posted by sb...@apache.org.
Removed commented out code
Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/a4005ff5
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/a4005ff5
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/a4005ff5
Branch: refs/heads/master
Commit: a4005ff5dae264af8b23547f274ae8e21d793e5c
Parents: 4bc05e2
Author: Ryan Ebanks <ry...@gmail.com>
Authored: Tue Nov 18 09:37:54 2014 -0600
Committer: Ryan Ebanks <ry...@gmail.com>
Committed: Tue Nov 18 09:37:54 2014 -0600
----------------------------------------------------------------------
.../google/gplus/provider/GPlusConfigurator.java | 16 ----------------
1 file changed, 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/a4005ff5/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusConfigurator.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusConfigurator.java b/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusConfigurator.java
index 56ad5d9..1999130 100644
--- a/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusConfigurator.java
+++ b/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusConfigurator.java
@@ -40,22 +40,6 @@ public class GPlusConfigurator {
private static final ObjectMapper MAPPER = StreamsJacksonMapper.getInstance();
public static GPlusConfiguration detectConfiguration(Config config) {
-// Config oauth = StreamsConfigurator.config.getConfig("gplus.oauth");
-//
-// GPlusConfiguration gplusConfiguration = new GPlusConfiguration();
-//
-// gplusConfiguration.setProtocol(config.getString("protocol"));
-// gplusConfiguration.setHost(config.getString("host"));
-// gplusConfiguration.setPort(config.getLong("port"));
-// gplusConfiguration.setVersion(config.getString("version"));
-// GPlusOAuthConfiguration gPlusOAuthConfiguration = new GPlusOAuthConfiguration();
-// gPlusOAuthConfiguration.setConsumerKey(oauth.getString("consumerKey"));
-// gPlusOAuthConfiguration.setConsumerSecret(oauth.getString("consumerSecret"));
-// gPlusOAuthConfiguration.setAccessToken(oauth.getString("accessToken"));
-// gPlusOAuthConfiguration.setAccessTokenSecret(oauth.getString("accessTokenSecret"));
-// gPlusOAuthConfiguration.setAppName(oauth.getString("appName"));
-// gplusConfiguration.setOauth(gPlusOAuthConfiguration);
-//
GPlusConfiguration configuration = null;
try {
configuration = MAPPER.readValue(config.root().render(ConfigRenderOptions.concise()), GPlusConfiguration.class);
[2/5] incubator-streams git commit: Fixed Google+ client connection
issues. Wrong credentials were being provided
Posted by sb...@apache.org.
Fixed Google+ client connection issues. Wrong credentials were being provided
Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/4bc05e24
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/4bc05e24
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/4bc05e24
Branch: refs/heads/master
Commit: 4bc05e241c979e302f7b898b3c4394c4d983adcc
Parents: f3de6f8
Author: Ryan Ebanks <ry...@gmail.com>
Authored: Mon Nov 17 17:35:37 2014 -0600
Committer: Ryan Ebanks <ry...@gmail.com>
Committed: Mon Nov 17 17:35:37 2014 -0600
----------------------------------------------------------------------
.../gplus/provider/AbstractGPlusProvider.java | 31 ++++++++-----
.../gplus/provider/GPlusConfigurator.java | 48 +++++++++++++-------
.../com/google/gplus/GPlusConfiguration.json | 17 +++----
.../provider/TestAbstractGPlusProvider.java | 7 ++-
4 files changed, 61 insertions(+), 42 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/4bc05e24/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/AbstractGPlusProvider.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/AbstractGPlusProvider.java b/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/AbstractGPlusProvider.java
index 6e59da2..791afe4 100644
--- a/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/AbstractGPlusProvider.java
+++ b/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/AbstractGPlusProvider.java
@@ -18,6 +18,7 @@
package com.google.gplus.provider;
+import com.google.api.client.googleapis.auth.oauth2.GoogleAuthorizationCodeFlow;
import com.google.api.client.googleapis.auth.oauth2.GoogleClientSecrets;
import com.google.api.client.googleapis.auth.oauth2.GoogleCredential;
import com.google.api.client.googleapis.auth.oauth2.GoogleTokenResponse;
@@ -43,8 +44,14 @@ import org.joda.time.DateTime;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import java.io.File;
import java.io.IOException;
import java.math.BigInteger;
+import java.security.GeneralSecurityException;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -57,7 +64,7 @@ import java.util.concurrent.atomic.AtomicBoolean;
public abstract class AbstractGPlusProvider implements StreamsProvider {
private final static Logger LOGGER = LoggerFactory.getLogger(AbstractGPlusProvider.class);
- private final static String SCOPE = "https://www.googleapis.com/auth/plus.stream.read";
+ private final static Set<String> SCOPE = new HashSet<String>() {{ add("https://www.googleapis.com/auth/plus.login");}};
private final static int MAX_BATCH_SIZE = 1000;
private static final HttpTransport TRANSPORT = new NetHttpTransport();
@@ -88,6 +95,7 @@ public abstract class AbstractGPlusProvider implements StreamsProvider {
@Override
public void startStream() {
+
BackOffStrategy backOffStrategy = new ExponentialBackOffStrategy(2);
for(UserInfo user : this.config.getGooglePlusUsers()) {
if(this.config.getDefaultAfterDate() != null && user.getAfterDate() == null) {
@@ -138,14 +146,13 @@ public abstract class AbstractGPlusProvider implements StreamsProvider {
@Override
public void prepare(Object configurationObject) {
- Preconditions.checkNotNull(config.getOauth().getConsumerKey());
- Preconditions.checkNotNull(config.getOauth().getConsumerSecret());
- Preconditions.checkNotNull(config.getOauth().getAccessToken());
- Preconditions.checkNotNull(config.getOauth().getAccessTokenSecret());
+ Preconditions.checkNotNull(config.getOauth().getPathToP12KeyFile());
+ Preconditions.checkNotNull(config.getOauth().getAppName());
+ Preconditions.checkNotNull(config.getOauth().getServiceAccountEmailAddress());
try {
this.plus = createPlusClient();
- } catch (IOException e) {
+ } catch (IOException|GeneralSecurityException e) {
LOGGER.error("Failed to created oauth for GPlus : {}", e);
throw new RuntimeException(e);
}
@@ -159,15 +166,15 @@ public abstract class AbstractGPlusProvider implements StreamsProvider {
}
@VisibleForTesting
- protected Plus createPlusClient() throws IOException{
+ protected Plus createPlusClient() throws IOException, GeneralSecurityException {
credential = new GoogleCredential.Builder()
.setJsonFactory(JSON_FACTORY)
.setTransport(TRANSPORT)
- .setClientSecrets(config.getOauth().getConsumerKey(), config.getOauth().getConsumerSecret()).build()
- .setFromTokenResponse(JSON_FACTORY.fromString(
- config.getOauth().getAccessToken(), GoogleTokenResponse.class));
- credential.refreshToken();
- return new Plus.Builder(TRANSPORT,JSON_FACTORY, credential).build();
+ .setServiceAccountScopes(SCOPE)
+ .setServiceAccountId(this.config.getOauth().getServiceAccountEmailAddress())
+ .setServiceAccountPrivateKeyFromP12File(new File(this.config.getOauth().getPathToP12KeyFile()))
+ .build();
+ return new Plus.Builder(TRANSPORT,JSON_FACTORY, credential).setApplicationName(this.config.getOauth().getAppName()).build();
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/4bc05e24/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusConfigurator.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusConfigurator.java b/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusConfigurator.java
index c3237f9..56ad5d9 100644
--- a/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusConfigurator.java
+++ b/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusConfigurator.java
@@ -18,37 +18,53 @@
package com.google.gplus.provider;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.google.common.base.Preconditions;
import com.typesafe.config.Config;
+import com.typesafe.config.ConfigRenderOptions;
import org.apache.streams.config.StreamsConfigurator;
import org.apache.streams.google.gplus.GPlusConfiguration;
import org.apache.streams.google.gplus.GPlusOAuthConfiguration;
+import org.apache.streams.jackson.StreamsJacksonMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import java.io.IOException;
+
/**
* Created by sblackmon on 12/10/13.
*/
public class GPlusConfigurator {
private final static Logger LOGGER = LoggerFactory.getLogger(GPlusConfigurator.class);
+ private static final ObjectMapper MAPPER = StreamsJacksonMapper.getInstance();
public static GPlusConfiguration detectConfiguration(Config config) {
- Config oauth = StreamsConfigurator.config.getConfig("gplus.oauth");
-
- GPlusConfiguration gplusConfiguration = new GPlusConfiguration();
-
- gplusConfiguration.setProtocol(config.getString("protocol"));
- gplusConfiguration.setHost(config.getString("host"));
- gplusConfiguration.setPort(config.getLong("port"));
- gplusConfiguration.setVersion(config.getString("version"));
- GPlusOAuthConfiguration gPlusOAuthConfiguration = new GPlusOAuthConfiguration();
- gPlusOAuthConfiguration.setConsumerKey(oauth.getString("consumerKey"));
- gPlusOAuthConfiguration.setConsumerSecret(oauth.getString("consumerSecret"));
- gPlusOAuthConfiguration.setAccessToken(oauth.getString("accessToken"));
- gPlusOAuthConfiguration.setAccessTokenSecret(oauth.getString("accessTokenSecret"));
- gplusConfiguration.setOauth(gPlusOAuthConfiguration);
-
- return gplusConfiguration;
+// Config oauth = StreamsConfigurator.config.getConfig("gplus.oauth");
+//
+// GPlusConfiguration gplusConfiguration = new GPlusConfiguration();
+//
+// gplusConfiguration.setProtocol(config.getString("protocol"));
+// gplusConfiguration.setHost(config.getString("host"));
+// gplusConfiguration.setPort(config.getLong("port"));
+// gplusConfiguration.setVersion(config.getString("version"));
+// GPlusOAuthConfiguration gPlusOAuthConfiguration = new GPlusOAuthConfiguration();
+// gPlusOAuthConfiguration.setConsumerKey(oauth.getString("consumerKey"));
+// gPlusOAuthConfiguration.setConsumerSecret(oauth.getString("consumerSecret"));
+// gPlusOAuthConfiguration.setAccessToken(oauth.getString("accessToken"));
+// gPlusOAuthConfiguration.setAccessTokenSecret(oauth.getString("accessTokenSecret"));
+// gPlusOAuthConfiguration.setAppName(oauth.getString("appName"));
+// gplusConfiguration.setOauth(gPlusOAuthConfiguration);
+//
+ GPlusConfiguration configuration = null;
+ try {
+ configuration = MAPPER.readValue(config.root().render(ConfigRenderOptions.concise()), GPlusConfiguration.class);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ Preconditions.checkNotNull(configuration);
+
+ return configuration;
}
}
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/4bc05e24/streams-contrib/streams-provider-google/google-gplus/src/main/jsonschema/com/google/gplus/GPlusConfiguration.json
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-google/google-gplus/src/main/jsonschema/com/google/gplus/GPlusConfiguration.json b/streams-contrib/streams-provider-google/google-gplus/src/main/jsonschema/com/google/gplus/GPlusConfiguration.json
index 87ada8b..0b96694 100644
--- a/streams-contrib/streams-provider-google/google-gplus/src/main/jsonschema/com/google/gplus/GPlusConfiguration.json
+++ b/streams-contrib/streams-provider-google/google-gplus/src/main/jsonschema/com/google/gplus/GPlusConfiguration.json
@@ -54,21 +54,18 @@
"dynamic": "true",
"javaType" : "org.apache.streams.google.gplus.GPlusOAuthConfiguration",
"javaInterfaces": ["java.io.Serializable"],
+ "description": "DEPRICATED",
"properties": {
"appName": {
"type": "string"
},
- "consumerKey": {
- "type": "string"
- },
- "consumerSecret": {
- "type": "string"
- },
- "accessToken": {
- "type": "string"
+ "pathToP12KeyFile": {
+ "type": "string",
+ "description": "Absolute Path to key file"
},
- "accessTokenSecret": {
- "type": "string"
+ "serviceAccountEmailAddress": {
+ "type": "string",
+ "description": "Service Account email address for your app"
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/4bc05e24/streams-contrib/streams-provider-google/google-gplus/src/test/java/com/google/gplus/provider/TestAbstractGPlusProvider.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-google/google-gplus/src/test/java/com/google/gplus/provider/TestAbstractGPlusProvider.java b/streams-contrib/streams-provider-google/google-gplus/src/test/java/com/google/gplus/provider/TestAbstractGPlusProvider.java
index ced612b..d5cfb2c 100644
--- a/streams-contrib/streams-provider-google/google-gplus/src/test/java/com/google/gplus/provider/TestAbstractGPlusProvider.java
+++ b/streams-contrib/streams-provider-google/google-gplus/src/test/java/com/google/gplus/provider/TestAbstractGPlusProvider.java
@@ -36,10 +36,9 @@ public class TestAbstractGPlusProvider extends RandomizedTest{
}
GPlusConfiguration config = new GPlusConfiguration();
GPlusOAuthConfiguration oauth = new GPlusOAuthConfiguration();
- oauth.setAccessToken("a");
- oauth.setConsumerKey("a");
- oauth.setConsumerSecret("a");
- oauth.setAccessTokenSecret("a");
+ oauth.setAppName("a");
+ oauth.setPathToP12KeyFile("a");
+ oauth.setServiceAccountEmailAddress("a");
config.setOauth(oauth);
config.setGooglePlusUsers(userList);
AbstractGPlusProvider provider = new AbstractGPlusProvider(config) {