24 lines
1.8 KiB
Thrift

namespace py pangramia.yt.management
namespace java com.pangramia.yt.management
include "../data/common.thrift"
include "../data/exceptions.thrift"
include "base_service.thrift"
// Service for managing the state of shared resources like proxies and accounts.
// This service is intended to be run as a single, authoritative instance.
service YTManagementService extends base_service.BaseService {
// --- Proxy Management Methods ---
list<common.ProxyStatus> getProxyStatus(1: optional string serverIdentity) throws (1: exceptions.PBServiceException serviceExp, 2: exceptions.PBUserException userExp),
bool banProxy(1: string proxyUrl, 2: string serverIdentity) throws (1: exceptions.PBServiceException serviceExp, 2: exceptions.PBUserException userExp),
bool unbanProxy(1: string proxyUrl, 2: string serverIdentity) throws (1: exceptions.PBServiceException serviceExp, 2: exceptions.PBUserException userExp),
bool resetAllProxyStatuses(1: string serverIdentity) throws (1: exceptions.PBServiceException serviceExp, 2: exceptions.PBUserException userExp),
bool banAllProxies(1: string serverIdentity) throws (1: exceptions.PBServiceException serviceExp, 2: exceptions.PBUserException userExp),
// --- Account Management Methods ---
list<common.AccountStatus> getAccountStatus(1: optional string accountId, 2: optional string accountPrefix) throws (1: exceptions.PBServiceException serviceExp, 2: exceptions.PBUserException userExp),
bool banAccount(1: string accountId, 2: optional string reason) throws (1: exceptions.PBServiceException serviceExp, 2: exceptions.PBUserException userExp),
bool unbanAccount(1: string accountId, 2: optional string reason) throws (1: exceptions.PBServiceException serviceExp, 2: exceptions.PBUserException userExp)
}