public RobotRaconteurNodeSetup(string node_name, ushort tcp_port, RobotRaconteurNodeSetupFlags flags)
 {
     if (node_name == null)
     {
         node_name = "";
     }
     LoadAllServiceTypes(RobotRaconteurNode.s);
     setup             = new WrappedRobotRaconteurNodeSetup(RobotRaconteurNode.s, node_name, tcp_port, (uint)flags);
     TcpTransport      = setup.GetTcpTransport();
     LocalTransport    = setup.GetLocalTransport();
     HardwareTransport = setup.GetHardwareTransport();
     IntraTransport    = setup.GetIntraTransport();
     CommandLineConfig = setup.GetCommandLineConfig();
 }
Example #2
0
        public RobotRaconteurNodeSetup(RobotRaconteurNode node, ServiceFactory[] service_types, bool scan_assembly_types, string nodename, ushort tcp_port, RobotRaconteurNodeSetupFlags flags)
        {
            Node = node;

            if (flags.HasFlag(RobotRaconteurNodeSetupFlags.EnableLocalTransport))
            {
                LocalTransport = new LocalTransport(node);
                if (flags.HasFlag(RobotRaconteurNodeSetupFlags.LocalTransportStartServer))
                {
                    LocalTransport.StartServerAsNodeName(nodename);
                }
                else if (flags.HasFlag(RobotRaconteurNodeSetupFlags.LocalTransportStartClient) && !string.IsNullOrEmpty(nodename))
                {
                    LocalTransport.StartClientAsNodeName(nodename);
                }

                if (flags.HasFlag(RobotRaconteurNodeSetupFlags.EnableNodeDiscoveryListening))
                {
                    LocalTransport.EnableNodeDiscoveryListening();
                }

                node.RegisterTransport(LocalTransport);
            }

            if (flags.HasFlag(RobotRaconteurNodeSetupFlags.EnableTcpTransport))
            {
                TcpTransport = new TcpTransport(node);
                if (flags.HasFlag(RobotRaconteurNodeSetupFlags.TcpTransportStartServer))
                {
                    TcpTransport.StartServer(tcp_port);
                }

                if (flags.HasFlag(RobotRaconteurNodeSetupFlags.EnableNodeDiscoveryListening))
                {
                    TcpTransport.EnableNodeDiscoveryListening();
                }

                if (flags.HasFlag(RobotRaconteurNodeSetupFlags.EnableNodeAnnounce))
                {
                    TcpTransport.EnableNodeAnnounce();
                }

                node.RegisterTransport(TcpTransport);
            }

            if (service_types != null)
            {
                foreach (var t in service_types)
                {
                    node.RegisterServiceType(t);
                }
            }

            if (scan_assembly_types)
            {
                try
                {
                    var scanned_types = ScanAssembliesForServiceTypes();
                    foreach (var t in scanned_types)
                    {
                        node.RegisterServiceType(t);
                    }
                }
                catch (Exception e)
                {
                    Console.Error.WriteLine("warning: assembly scanning failed: " + e.Message);
                }
            }
        }
Example #3
0
 public ServerNodeSetup(string nodename, ushort tcp_port, RobotRaconteurNodeSetupFlags flags = RobotRaconteurNodeSetupFlags.ServerDefault)
     : base(RobotRaconteurNode.s, null, true, nodename, tcp_port, flags)
 {
 }
Example #4
0
 public ServerNodeSetup(ServiceFactory[] service_types, string nodename, ushort tcp_port, RobotRaconteurNodeSetupFlags flags = RobotRaconteurNodeSetupFlags.ServerDefault)
     : base(RobotRaconteurNode.s, service_types, false, nodename, tcp_port, flags)
 {
 }
Example #5
0
 public ClientNodeSetup(string nodename = null, RobotRaconteurNodeSetupFlags flags = RobotRaconteurNodeSetupFlags.ClientDefault)
     : base(RobotRaconteurNode.s, null, true, nodename, 0, flags)
 {
 }
Example #6
0
 public ClientNodeSetup(ServiceFactory[] service_types, string nodename = null, RobotRaconteurNodeSetupFlags flags = RobotRaconteurNodeSetupFlags.ClientDefault)
     : base(RobotRaconteurNode.s, service_types, false, nodename, 0, flags)
 {
 }
 public SecureServerNodeSetup(
     string node_name, ushort tcp_port,
     RobotRaconteurNodeSetupFlags flags = RobotRaconteurNodeSetupFlags.SECURE_SERVER_DEFAULT)
     : base(node_name, tcp_port, flags)
 {
 }
 public ClientNodeSetup(string node_name = null,
                        RobotRaconteurNodeSetupFlags flags = RobotRaconteurNodeSetupFlags.CLIENT_DEFAULT)
     : base(node_name, 0, flags)
 {
 }