Example #1
0
            public static async Task <PluginConnection> CreateAsync(string serviceName, AppExtension appExtension, IProgress <TProgress> progress, CancellationToken cancelTokem = default(CancellationToken))
            {
                var connection = new AppServiceConnection();

                var pluginConnection = new PluginConnection(connection, progress, cancelTokem);

                connection.AppServiceName    = serviceName;
                connection.PackageFamilyName = appExtension.Package.Id.FamilyName;
                var status = await connection.OpenAsync();



                //If the new connection opened successfully we're done here
                if (status == AppServiceConnectionStatus.Success)
                {
                    return(pluginConnection);
                }
                else
                {
                    //Clean up before we go
                    var exception = new Exceptions.ConnectionFailureException(status, connection);
                    connection.Dispose();
                    connection = null;
                    throw exception;
                }
            }
Example #2
0
 private Task <PluginConnection> GetPluginConnection(IProgress <TProgress> progress, CancellationToken cancelTokem) => PluginConnection.CreateAsync(this.ServiceName, this.Extension, progress, cancelTokem);