예제 #1
0
        internal async Task RetrieveApiList()
        {
            if (Camera != null)
            {
                // DSC-QX10 firmware v3.00 has a bug in the response of getMethodTypes
                var methods = (await Camera.GetMethodTypesAsync().ConfigureAwait(false))
                              .Where(method => !(method.Name == "setFocusMode" && ProductType == ProductType.DSC_QX10)).ToList();
                Capability.AddSupported(methods);
            }
            if (System != null)
            {
                Capability.AddSupported(await System.GetMethodTypesAsync().ConfigureAwait(false));
            }
            if (AvContent != null)
            {
                Capability.AddSupported(await AvContent.GetMethodTypesAsync().ConfigureAwait(false));
            }

            if (SupportedApisUpdated != null)
            {
                SupportedApisUpdated.Invoke(this, new SupportedApiEventArgs(Capability.SupportedApis));
            }
        }