// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: com/tzld/piaoquan/recommend/server/recommend.proto

package com.tzld.piaoquan.recommend.server.gen.recommend;

/**
 * Protobuf service {@code RecommendService}
 */
public  abstract class RecommendService
    implements com.google.protobuf.Service {
  protected RecommendService() {}

  public interface Interface {
    /**
     * <pre>
     * 首页推荐和tab分类 /applet/video/homepage/recommend
     * </pre>
     *
     * <code>rpc HomepageRecommend(.RecommendRequest) returns (.RecommendResponse);</code>
     */
    public abstract void homepageRecommend(
        com.google.protobuf.RpcController controller,
        com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest request,
        com.google.protobuf.RpcCallback<com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse> done);

    /**
     * <code>rpc RelevantRecommend(.RecommendRequest) returns (.RecommendResponse);</code>
     */
    public abstract void relevantRecommend(
        com.google.protobuf.RpcController controller,
        com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest request,
        com.google.protobuf.RpcCallback<com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse> done);

  }

  public static com.google.protobuf.Service newReflectiveService(
      final Interface impl) {
    return new RecommendService() {
      @java.lang.Override
      public  void homepageRecommend(
          com.google.protobuf.RpcController controller,
          com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest request,
          com.google.protobuf.RpcCallback<com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse> done) {
        impl.homepageRecommend(controller, request, done);
      }

      @java.lang.Override
      public  void relevantRecommend(
          com.google.protobuf.RpcController controller,
          com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest request,
          com.google.protobuf.RpcCallback<com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse> done) {
        impl.relevantRecommend(controller, request, done);
      }

    };
  }

  public static com.google.protobuf.BlockingService
      newReflectiveBlockingService(final BlockingInterface impl) {
    return new com.google.protobuf.BlockingService() {
      public final com.google.protobuf.Descriptors.ServiceDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }

      public final com.google.protobuf.Message callBlockingMethod(
          com.google.protobuf.Descriptors.MethodDescriptor method,
          com.google.protobuf.RpcController controller,
          com.google.protobuf.Message request)
          throws com.google.protobuf.ServiceException {
        if (method.getService() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "Service.callBlockingMethod() given method descriptor for " +
            "wrong service type.");
        }
        switch(method.getIndex()) {
          case 0:
            return impl.homepageRecommend(controller, (com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest)request);
          case 1:
            return impl.relevantRecommend(controller, (com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest)request);
          default:
            throw new java.lang.AssertionError("Can't get here.");
        }
      }

      public final com.google.protobuf.Message
          getRequestPrototype(
          com.google.protobuf.Descriptors.MethodDescriptor method) {
        if (method.getService() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "Service.getRequestPrototype() given method " +
            "descriptor for wrong service type.");
        }
        switch(method.getIndex()) {
          case 0:
            return com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest.getDefaultInstance();
          case 1:
            return com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest.getDefaultInstance();
          default:
            throw new java.lang.AssertionError("Can't get here.");
        }
      }

      public final com.google.protobuf.Message
          getResponsePrototype(
          com.google.protobuf.Descriptors.MethodDescriptor method) {
        if (method.getService() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "Service.getResponsePrototype() given method " +
            "descriptor for wrong service type.");
        }
        switch(method.getIndex()) {
          case 0:
            return com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse.getDefaultInstance();
          case 1:
            return com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse.getDefaultInstance();
          default:
            throw new java.lang.AssertionError("Can't get here.");
        }
      }

    };
  }

  /**
   * <pre>
   * 首页推荐和tab分类 /applet/video/homepage/recommend
   * </pre>
   *
   * <code>rpc HomepageRecommend(.RecommendRequest) returns (.RecommendResponse);</code>
   */
  public abstract void homepageRecommend(
      com.google.protobuf.RpcController controller,
      com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest request,
      com.google.protobuf.RpcCallback<com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse> done);

  /**
   * <code>rpc RelevantRecommend(.RecommendRequest) returns (.RecommendResponse);</code>
   */
  public abstract void relevantRecommend(
      com.google.protobuf.RpcController controller,
      com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest request,
      com.google.protobuf.RpcCallback<com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse> done);

  public static final
      com.google.protobuf.Descriptors.ServiceDescriptor
      getDescriptor() {
    return com.tzld.piaoquan.recommend.server.gen.recommend.Recommend.getDescriptor().getServices().get(0);
  }
  public final com.google.protobuf.Descriptors.ServiceDescriptor
      getDescriptorForType() {
    return getDescriptor();
  }

  public final void callMethod(
      com.google.protobuf.Descriptors.MethodDescriptor method,
      com.google.protobuf.RpcController controller,
      com.google.protobuf.Message request,
      com.google.protobuf.RpcCallback<
        com.google.protobuf.Message> done) {
    if (method.getService() != getDescriptor()) {
      throw new java.lang.IllegalArgumentException(
        "Service.callMethod() given method descriptor for wrong " +
        "service type.");
    }
    switch(method.getIndex()) {
      case 0:
        this.homepageRecommend(controller, (com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest)request,
          com.google.protobuf.RpcUtil.<com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse>specializeCallback(
            done));
        return;
      case 1:
        this.relevantRecommend(controller, (com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest)request,
          com.google.protobuf.RpcUtil.<com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse>specializeCallback(
            done));
        return;
      default:
        throw new java.lang.AssertionError("Can't get here.");
    }
  }

  public final com.google.protobuf.Message
      getRequestPrototype(
      com.google.protobuf.Descriptors.MethodDescriptor method) {
    if (method.getService() != getDescriptor()) {
      throw new java.lang.IllegalArgumentException(
        "Service.getRequestPrototype() given method " +
        "descriptor for wrong service type.");
    }
    switch(method.getIndex()) {
      case 0:
        return com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest.getDefaultInstance();
      case 1:
        return com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest.getDefaultInstance();
      default:
        throw new java.lang.AssertionError("Can't get here.");
    }
  }

  public final com.google.protobuf.Message
      getResponsePrototype(
      com.google.protobuf.Descriptors.MethodDescriptor method) {
    if (method.getService() != getDescriptor()) {
      throw new java.lang.IllegalArgumentException(
        "Service.getResponsePrototype() given method " +
        "descriptor for wrong service type.");
    }
    switch(method.getIndex()) {
      case 0:
        return com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse.getDefaultInstance();
      case 1:
        return com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse.getDefaultInstance();
      default:
        throw new java.lang.AssertionError("Can't get here.");
    }
  }

  public static Stub newStub(
      com.google.protobuf.RpcChannel channel) {
    return new Stub(channel);
  }

  public static final class Stub extends com.tzld.piaoquan.recommend.server.gen.recommend.RecommendService implements Interface {
    private Stub(com.google.protobuf.RpcChannel channel) {
      this.channel = channel;
    }

    private final com.google.protobuf.RpcChannel channel;

    public com.google.protobuf.RpcChannel getChannel() {
      return channel;
    }

    public  void homepageRecommend(
        com.google.protobuf.RpcController controller,
        com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest request,
        com.google.protobuf.RpcCallback<com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse> done) {
      channel.callMethod(
        getDescriptor().getMethods().get(0),
        controller,
        request,
        com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse.getDefaultInstance(),
        com.google.protobuf.RpcUtil.generalizeCallback(
          done,
          com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse.class,
          com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse.getDefaultInstance()));
    }

    public  void relevantRecommend(
        com.google.protobuf.RpcController controller,
        com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest request,
        com.google.protobuf.RpcCallback<com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse> done) {
      channel.callMethod(
        getDescriptor().getMethods().get(1),
        controller,
        request,
        com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse.getDefaultInstance(),
        com.google.protobuf.RpcUtil.generalizeCallback(
          done,
          com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse.class,
          com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse.getDefaultInstance()));
    }
  }

  public static BlockingInterface newBlockingStub(
      com.google.protobuf.BlockingRpcChannel channel) {
    return new BlockingStub(channel);
  }

  public interface BlockingInterface {
    public com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse homepageRecommend(
        com.google.protobuf.RpcController controller,
        com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest request)
        throws com.google.protobuf.ServiceException;

    public com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse relevantRecommend(
        com.google.protobuf.RpcController controller,
        com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest request)
        throws com.google.protobuf.ServiceException;
  }

  private static final class BlockingStub implements BlockingInterface {
    private BlockingStub(com.google.protobuf.BlockingRpcChannel channel) {
      this.channel = channel;
    }

    private final com.google.protobuf.BlockingRpcChannel channel;

    public com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse homepageRecommend(
        com.google.protobuf.RpcController controller,
        com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest request)
        throws com.google.protobuf.ServiceException {
      return (com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse) channel.callBlockingMethod(
        getDescriptor().getMethods().get(0),
        controller,
        request,
        com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse.getDefaultInstance());
    }


    public com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse relevantRecommend(
        com.google.protobuf.RpcController controller,
        com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest request)
        throws com.google.protobuf.ServiceException {
      return (com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse) channel.callBlockingMethod(
        getDescriptor().getMethods().get(1),
        controller,
        request,
        com.tzld.piaoquan.recommend.server.gen.recommend.RecommendResponse.getDefaultInstance());
    }

  }

  // @@protoc_insertion_point(class_scope:RecommendService)
}

