2

投稿されるコンテンツをセグメント化するために、いくつかの分類されたフィードをセットアップしたいと考えています。テスト用に 4 つのフィードをセットアップしました。

  • ユーザー
  • 平らな
  • スポーツ
  • フットボール

ユーザー フィードとフラット フィードは、Java API を使用してドキュメントから期待どおりに機能しています。ユーザー フィードに投稿でき、そこからそのユーザーのアイテムを取得できます。ユーザーをフォローすることもでき、それらがフラット フィードに反映されていることを確認しています。

私が抱えている課題は、単純なタグ付けに基づいてコンテンツをセグメント化することです。私は基本的に、いくつかの公開フィードを設定し、タグ値に基づいて投稿をコピーしたいと考えています。これは機能しており、予想どおり、スポーツ フィードとサッカー フィードで投稿が重複しています。(Javaラッパーを突破したように見えたため、Toを使用していません)。

私の問題は、API を使用して、特定のユーザーによる投稿だけでなく、フィード内のすべてを読み取る方法です。

分類されたフィードに項目を追加するコード:

//Post this to the categorized feed
SimpleActivity activity = new SimpleActivity();
activity.setActor(item.getOwnerId());
activity.setObject(item.getId());
activity.setVerb(POST_VERB);
activity.setForeignId(item.getId());
Feed theFeed = this.streamClient.newFeed(theCategory, item.getOwnerId());
//Create an activity service
FlatActivityServiceImpl<SimpleActivity> flatActivityService = theFeed.newFlatActivityService(SimpleActivity.class);
//Add an activity to the feed, where actor, object and target are references to objects
try {
    SimpleActivity response = flatActivityService.addActivity(activity);
    //Lets log some info on this!
    LOG.debug("Item added " + response.getForeignId());
} catch (IOException e) {
    LOG.warn("IOException in StreamService", e);
} catch (StreamClientException e) {
    LOG.warn("StreamClientException in StreamService", e);
}     

そして読み返してみたら

    Feed theFeed = this.streamClient.newFeed(theFeedCategory.getFeedId(), userId);
    FeedFilter filter = new FeedFilter.Builder().withLimit(pageSize).withOffset(start).build();
    FlatActivityServiceImpl<SimpleActivity> flatActivityService = theFeed.newFlatActivityService(SimpleActivity.class);
    try {
        List<SimpleActivity> activities = flatActivityService.getActivities(filter).getResults();
        for (SimpleActivity activity : activities) {
            response.add(activity.getForeignId());
        }
    } catch (IOException e) {
        LOG.warn("IOException in StreamService", e);
    } catch (StreamClientException e) {
        LOG.warn("StreamClientException in StreamService", e);
    }

任意のユーザーがフィード内のすべてを取得するために Java API を使用する方法はありますか、またはフィードをセグメント化してカテゴリに基づいてピボットする方法はありますか?

ありがとう

4

0 に答える 0