Beispiel #1
0
        public void LookupResource(FourCC programId, FourCC streamId, FourCC locale, ResourcesAPI.ResourceLookupCallback cb, object userContext)
        {
            ContentHandleRequest contentHandleRequest = new ContentHandleRequest();

            contentHandleRequest.SetProgramId(programId.GetValue());
            contentHandleRequest.SetStreamId(streamId.GetValue());
            contentHandleRequest.SetLocale(locale.GetValue());
            if (contentHandleRequest == null || !contentHandleRequest.IsInitialized)
            {
                base.ApiLog.LogWarning("Unable to create request for RPC call.");
                return;
            }
            RPCContext rPCContext = this.m_rpcConnection.QueueRequest(this.m_resourcesService.Id, 1u, contentHandleRequest, new RPCContextDelegate(this.GetContentHandleCallback), 0u);
            ResourcesAPIPendingState resourcesAPIPendingState = new ResourcesAPIPendingState();

            resourcesAPIPendingState.Callback    = cb;
            resourcesAPIPendingState.UserContext = userContext;
            this.m_pendingLookups.Add(rPCContext.Header.Token, resourcesAPIPendingState);
            base.ApiLog.LogDebug("Lookup request sent. PID={0} StreamID={1} Locale={2}", new object[]
            {
                programId,
                streamId,
                locale
            });
        }
Beispiel #2
0
        public override void GetContentHandle(IRpcController controller, ContentHandleRequest request, Action<ContentHandle> done)
        {
            Logger.Trace("GetContentHandle()");
            //Beta this returns status 4, no payload

            throw new NotImplementedException();

        }
Beispiel #3
0
    public void LookupResource(FourCC programId, FourCC streamId, FourCC locale, ResourceLookupCallback cb, object userContext)
    {
        ContentHandleRequest message = new ContentHandleRequest();

        message.SetProgramId(programId.GetValue());
        message.SetStreamId(streamId.GetValue());
        message.SetLocale(locale.GetValue());
        if ((message == null) || !message.IsInitialized)
        {
            base.ApiLog.LogWarning("Unable to create request for RPC call.");
        }
        else
        {
            RPCContext context             = base.m_rpcConnection.QueueRequest(this.m_resourcesService.Id, 1, message, new RPCContextDelegate(this.GetContentHandleCallback), 0);
            ResourcesAPIPendingState state = new ResourcesAPIPendingState {
                Callback    = cb,
                UserContext = userContext
            };
            this.m_pendingLookups.Add(context.Header.Token, state);
            object[] args = new object[] { programId, streamId, locale };
            base.ApiLog.LogDebug("Lookup request sent. PID={0} StreamID={1} Locale={2}", args);
        }
    }