示例#1
0
        public async void GetStatus(string objectIdentifier, int timeout, IReactPromise <string> promise)
        {
            if (!GetObject(objectIdentifier, out StarPrinter nativeObject))
            {
                promise.Reject(new ReactError());
                return;
            }

            nativeObject.GetStatusTimeout = timeout;

            try
            {
                StarPrinterStatus status = await nativeObject.GetStatusAsync();

                StarPrinterStatusWrapper.SetObject(status, out string statusIdentifier);
                promise.Resolve(statusIdentifier);
            }
            catch (StarIO10Exception e)
            {
                StarIO10ErrorWrapper.SetObject(e, out string exceptionIdentifier);
                promise.Reject(new ReactError()
                {
                    Code = exceptionIdentifier, Exception = e
                });
            }
        }
        public void GetStatus(string objectIdentifier, IReactPromise <string> promise)
        {
            if (!GetObject(objectIdentifier, out StarIO10Exception nativeObject))
            {
                promise.Reject(new ReactError());
                return;
            }

            StarPrinterStatus status = null;

            if (nativeObject is StarIO10UnprintableException)
            {
                status = (nativeObject as StarIO10UnprintableException).Status;
            }

            if (status == null)
            {
                promise.Reject(new ReactError());
                return;
            }

            StarPrinterStatusWrapper.SetObject(status, out string statusIdentifier);
            promise.Resolve(statusIdentifier);
        }