private Node FindRecepient(Package package) { Node node = router.topology.FindNode(package.sender); RouterData data = node.FindBranch(package.finalDestination); return(router.topology.FindNode(data.from)); }
public List <RouterData> GetRouterTree(int parent) { var ret = new List <RouterData>(); var data = Query(f => f.status == (int)CommonEnum.Valid && f.parent == parent).Result; if (!data.Any()) { return(ret); } foreach (var item in data) { var children = GetRouterTree(item.id); var model = new RouterData { component = item.component.StartsWith("@") ? item.component : $"@{item.component}", meta = new RouterDataMeta { icon = item.icon, title = item.name }, name = item.name, path = item.name, id = item.id, children = children }; ret.Add(model); } return(ret); }
private RouterData GetPath(ref string from, ref string to) { Node node = null; bool chosen = false; RouterData data = null; while (!chosen) { from = GetNode("Sending node: "); to = GetNode("Getting node: "); node = router.topology.FindNode(from); data = node.FindBranch(to); if (from == to) { Console.WriteLine("Chosen nodes are identical. Please try again."); } else if (data == null) { Console.WriteLine("Chosen nodes are not connected. Please try again."); } else { chosen = true; } } if (data.from != data.to) { data = node.FindBranch(data.from); } return(data); }
public RouterData Save() { RouterData data = new RouterData(); data.numGPorts = numGPorts; data.numFEPorts = numFEPorts; return(data); }
public static void DeleteStaticRoute(VyattaConfigObject ConfigRoot, RouterData Data, string Network) { if (Network.Contains("-")) { Network = Netmask.IPRangeToCIDR(Network); } ConfigRoot.Delete(string.Format("protocols:static:route {0}", Network)); }
public FakeParamComponent(RouterData data) { var id = data.GetValue("id"); if (!id.Equals("10")) { throw new System.ArgumentException("Id cannot be null or empty", "Id"); } }
public BibaRouter(Routes routes, BibaCompiler compiler, IServiceProvider provider, RouterData data, CurrentRoute currentRoute) { _routes = routes; _compiler = compiler; _provider = provider; _data = data; _currentRoute = currentRoute; _contractResolver = new CamelCasePropertyNamesContractResolver(); }
public AddStaticRouteWizard(RouterData Data) { InitializeComponent(); ElementHost.EnableModelessKeyboardInterop(this); var DC = new AddStaticRouteWizardData(Data); DataContext = DC; DC.UpdatedList += Addresses_CollectionChanged; DC.UpdatedSummary += Summary_Changed; AddressList.ItemsSource = DC.Addresses; Interface.ItemsSource = DC.RouterData.Interfaces; }
internal static async Task <ModuleResponseCode> RouteAsync(RouterData data) { if (data == null) { return(ModuleResponseCode.Bypass); } IRouter Router = null; try { if (Modules.ContainsKey(data.Path)) { return(await(Router = Modules[data.Path]).Route(data)); } else { string wildcard = StringUtils.GetDirectoryName(data.Path); if (Modules.ContainsKey(wildcard)) { return(await(Router = Modules[wildcard]).Route(data)); } else { wildcard += "/*"; if (Modules.ContainsKey(wildcard)) { return(await(Router = Modules[wildcard]).Route(data)); } else { string path = data.Path; int idx; while ((idx = path.LastIndexOf('/')) > -1) { path = path.Remove(idx); string path_wildcard = path + "/**"; if (Modules.ContainsKey(path_wildcard)) { return(await(Router = Modules[path_wildcard]).Route(data)); } } return(ModuleResponseCode.NotFound); } } } } catch (Exception ex) { throw Router == null ? ex : new RouterException(Router, ex); } }
public ModuleDataAlloc(RouterData Data) { STR_LANG = Data.STR_LANG; Context = Data.Context; ExtraData = Data.ExtraData; }
public AddStaticRouteWizardData(RouterData Data) { RouterData = Data; }
public void Load(RouterData data) { //routingTable = data.routingTable; numFEPorts = data.numFEPorts; numGPorts = data.numGPorts; }
public static VyattaConfigObject AddStaticRoute(VyattaConfigObject ConfigRoot, RouterData Data, string Network, string Target, string Description) { if (Network.Contains("-")) { Network = Netmask.IPRangeToCIDR(Network); } foreach (var Int in Data.Interfaces) { if ((Int.Description == Target || Int.Interface == Target) && Int.Gateway != null) { Target = Int.Gateway; break; } } string DescriptionOut = string.Format("VCU-Auto: {0}", Description); VyattaConfigObject Route = ConfigRoot.AddObject(string.Format("protocols:static:route {0}:next-hop {1}", Network, Target)); Route.AddAttribute("description").Add(DescriptionOut); return(Route); }
public static void AddStaticRoutesForASN(VyattaConfigObject ConfigRoot, int ASN, RouterData Data, string Target, string Name) { var Netmasks = Data.ASNData.GetNetmasksFromASN(ASN); foreach (var Netmask in Netmasks) { VyattaConfigRouting.AddStaticRoute(ConfigRoot, Data, Netmask.NetmaskString, Target, Name); } }
public static void AddStaticRoutesForOrganization(VyattaConfigObject ConfigRoot, string OrganizationSubstring, RouterData Data, string Target, string Name) { var Netmasks = Data.ASNData.GetNetmasksFromOrganization(OrganizationSubstring); foreach (var Netmask in Netmasks) { VyattaConfigRouting.AddStaticRoute(ConfigRoot, Data, Netmask.NetmaskString, Target, Name); } }