public static IDirectoryService Instance(Stage stage, Node localNode)
        {
            var network =
                new Network(
                    new Group(Properties.Instance.DirectoryGroupAddress(), Properties.Instance.DirectoryGroupPort()),
                    Properties.Instance.DirectoryIncomingPort());

            var maxMessageSize = Properties.Instance.DirectoryMessageBufferSize();

            var timing =
                new Timing(
                    Properties.Instance.DirectoryMessageProcessingInterval(),
                    Properties.Instance.DirectoryMessagePublishingInterval());

            var unpublishedNotifications = Properties.Instance.DirectoryUnregisteredServiceNotifications();

            var directoryService =
                DirectoryServiceFactory.Instance(
                    stage,
                    localNode,
                    network,
                    maxMessageSize,
                    timing,
                    unpublishedNotifications);

            return(directoryService);
        }
예제 #2
0
        public DirectoryApplication(Node localNode)
        {
            _localNode = localNode;

            _directoryService = DirectoryServiceFactory.Instance(Stage, localNode);
        }