/* ****************************************************************************
*
* Copyright (c) Microsoft Corporation.
*
* This source code is subject to terms and conditions of the Apache License, Version 2.0. A
* copy of the license can be found in the License.html file at the root of this distribution. If
* you cannot locate the Apache License, Version 2.0, please send an email to
* vspython@microsoft.com. By using this source code in any fashion, you are agreeing to be bound
* by the terms of the Apache License, Version 2.0.
*
* You must not remove this notice, or any other, from this software.
*
* ***************************************************************************/
using System;
namespace Microsoft.VisualStudio.Project {
///
/// Implements a publisher which handles publishing the list of files to a destination.
///
public interface IProjectPublisher {
///
/// Publishes the files listed in the given project to the provided URI.
///
/// This function should return when publishing is complete or throw an exception if publishing fails.
///
/// The project to be published.
/// The destination URI for the project.
void PublishFiles(IPublishProject project, Uri destination);
///
/// Gets a localized description of the destination type (web site, file share, etc...)
///
string DestinationDescription {
get;
}
///
/// Gets the schema supported by this publisher - used to select which publisher will
/// be used based upon the schema of the Uri provided by the user.
///
string Schema {
get;
}
}
}