예제 #1
0
        public ManagedProxyDiscoveryService(IEndpointMetadataProvider metadataProvider, IEnumerable<PluginBase> plugins)
        {
            _plugins = plugins ?? new PluginBase[] { };
            _metadataProvider = metadataProvider;

            _plugins.Initialize(this, _metadataProvider);
            _plugins.Invoke(() => new StartPluginContext(), (plugin, e) => plugin.Start(e), true);
        }
 public ManagedProxyDiscoveryServiceHost(IEndpointMetadataProvider endpointMetadataProvider, IDiscoveryServiceResolver discoveryServiceResolver, params PluginBase[] plugins)
     : base(new ManagedProxyDiscoveryService(endpointMetadataProvider, plugins))
 {
     var announcementEndpoint = new AnnouncementEndpoint(discoveryServiceResolver.AnnouncementBinding, new EndpointAddress(discoveryServiceResolver.AnnouncementEndpoint));
     var probeEndpoint = new DiscoveryEndpoint(discoveryServiceResolver.ProbeBinding, new EndpointAddress(discoveryServiceResolver.ProbeEndpoint));
     probeEndpoint.IsSystemEndpoint = false;
     AddServiceEndpoint(announcementEndpoint);
     AddServiceEndpoint(probeEndpoint);
 }
 public ManagedProxyDiscoveryServiceHost(IEndpointMetadataProvider endpointMetadataProvider, params PluginBase[] plugins)
     : this(endpointMetadataProvider, new AppSettingsDiscoveryServiceResolver(), plugins)
 {
 }