using System; using System.Collections.Generic; using System.Security; using System.ServiceModel.Discovery; using ArchestrAServices.Contract; namespace ASBClientAccessLayer; public interface IASBClient { bool Connected { get; } bool Reconnect(); bool Disconnect(); ArchestrAResult OpenTemporaryRegistrationEndpoint(string repositoryNode, SecureString passphrase); ArchestrAResult CloseTemporaryRegistrationEndpoint(string repositoryNode); ArchestrAResult OpenTemporaryPairingEndpoint(string repositoryNode, SecureString passphrase); ArchestrAResult CloseTemporaryPairingEndpoint(string repositoryNode); ArchestrAResult GetRegistrationEndpointStatus(string repositoryNode, out List ConfigurationData); RegistrationResult RegisterWithSR(string repositoryNode, SecureString passphrase); RegistrationResult CopySolutionFromSR(string repositoryNode, SecureString passphrase, string solutionName); RegistrationResult RemoveSolutionFromThisNode(string solutionName); string GetPassphraseForSolution(string solutionName); RegistrationResult UnregisterWithSR(string repositoryNode); RegistrationResult PairSRNodes(string remoteRepositoryNode, SecureString passphrase); RegistrationResult UnpairSRNodes(string repositoryNode); string GetChangedASBExtraInfo(); List GetPairedSolutionsInSR(string repositoryNode); List GetSolutionsAtThisNode(); string GetDiscoveryEndpoint(); FindResponse FindServices(FindCriteria findCriteria, out ASBDiscoveryResult Result); EndpointDiscoveryMetadata FindServiceEndpoint(Type ContractType, Uri[] Scopes, out ASBDiscoveryResult Result); }