/*
 * (c) 2020 Pluto Inc.
 */
package tv.pluto.grpc.ratings;

import static tv.pluto.ip.dal.rating.Ratings.CFeedsSyncAllIdsRequest;
import static tv.pluto.ip.dal.rating.Ratings.CFeedsSyncDocumentsRequest;
import static tv.pluto.ip.dal.rating.Ratings.GetDocumentsUpdatedBetweenDatesRequest;

import io.grpc.Channel;
import tv.pluto.grpc.GenericGrpcClient;
import tv.pluto.ip.dal.rating.RatingManagerGrpc;
import tv.pluto.ip.dal.rating.Ratings;

public class RatingsClient extends GenericGrpcClient {
  private Ratings.GetAllPagedRequest.Builder getAllPagedBuilder =
      Ratings.GetAllPagedRequest.newBuilder();
  private RatingManagerGrpc.RatingManagerBlockingStub blockingStub;

  public RatingsClient(Channel channel) {
    this.getDocumentsUpdatedBetweenDatesRequestBuilder =
        GetDocumentsUpdatedBetweenDatesRequest.newBuilder();
    this.getCFeedsAllIdsBuilder = CFeedsSyncAllIdsRequest.newBuilder();
    this.getCFeedsSyncDocumentsBuilder = CFeedsSyncDocumentsRequest.newBuilder();
    blockingStub = RatingManagerGrpc.newBlockingStub(channel);
    blockingStub = blockingStub.withInterceptors(CLIENT_INTERCEPTOR);
  }
}
