# Generated by the protocol buffer compiler.  DO NOT EDIT!
# Source: keyapis/banner/v1/keyapis_banner_banner_v1.proto for package 'Keyapis.Banner.V1'
# Original file comments:
#
# Сервис реализует функционал управления баннерами.
# Используются как источник Критичнх уведомления, White label компаний и объявления рекламных акций

require 'grpc'
require 'keyapis/banner/v1/keyapis_banner_banner_v1_pb'

module Keyapis
  module Banner
    module V1
      module BannerService
        # Сервис управления баннерами
        class Service

          include ::GRPC::GenericService

          self.marshal_class_method = :encode
          self.unmarshal_class_method = :decode
          self.service_name = 'keyapis.banner.v1.BannerService'

          # Метод сохранения баннера.
          # Поддерживает создание и обновление.
          # Метод доступен для: admin, manager, service
          rpc :PostBanner, ::Keyapis::Banner::V1::PostBannerRequest, ::Keyapis::Banner::V1::PostBannerResponse
          # Метод получения баннера.
          # Метод доступен для: admin, manager, service
          rpc :GetBanner, ::Keyapis::Banner::V1::GetBannerRequest, ::Keyapis::Banner::V1::GetBannerResponse
          # Метод получения упрощённого баннера.
          # Не требует авторизации
          rpc :GetBannerLite, ::Keyapis::Banner::V1::GetBannerLiteRequest, ::Keyapis::Banner::V1::GetBannerLiteResponse
          # Метод получения списка баннеров.
          # Метод доступен для: admin, manager, service
          rpc :GetBannerList, ::Keyapis::Banner::V1::GetBannerListRequest, stream(::Keyapis::Banner::V1::GetBannerListResponse)
          # Метод получения списка упрощённых баннеров.
          # Возвращает всегда активные баннеры.
          # По умолчанию возвращает первые 20 баннеров осортированных по приоритету, затем по дате начала акции(от самых важных к не важным, затем от самых новых акций к самым старым).
          # Если запрос выполнен хотя бы без одного изпризнака приложения возвращает пустой список.
          # Если запрос выполнен без признаков пользователя метод возвращает пустой список.
          # Не требует авторизации
          rpc :GetBannerLiteList, ::Keyapis::Banner::V1::GetBannerLiteListRequest, stream(::Keyapis::Banner::V1::GetBannerLiteListResponse)
          # Метод получения количества баннеров.
          # Метод доступен для: admin, manager, service
          rpc :GetBannerCount, ::Keyapis::Banner::V1::GetBannerCountRequest, ::Keyapis::Banner::V1::GetBannerCountResponse
          # Метод загрузки картинки баннера.
          # Метод доступен для: admin, manager, service
          rpc :PostBannerUploadImage, ::Keyapis::Banner::V1::PostBannerUploadImageRequest, ::Keyapis::Banner::V1::PostBannerUploadImageResponse
        end

        Stub = Service.rpc_stub_class
      end
    end
  end
end
