protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); config = e.Parameter as IAdapterConfig; Bindings.Update(); }
public static async Task <StorageFile> SaveServerAsync(IAdapterConfig config) { config.Name = string.IsNullOrEmpty(config.Name) ? $"New {config.AdapterType} Config" : config.Name; var file = await IoUtils.SaveUniqueObjAsync(config.Path, config, await AdapterConfigFolderTask); config.Path = file.Path; return(file); }
public static string Encode(this IAdapterConfig adapterConfig) { switch (adapterConfig) { case ShadowsocksConfig shadowsocksConfig: return(ShadowsocksConfigEncoder(shadowsocksConfig)); case TrojanConfig trojanConfig: return(TrojanConfigEncoder(trojanConfig)); } throw new NotSupportedException("Could not generate a URI of type " + adapterConfig.AdapterType); }
public static string Encode(this IAdapterConfig adpaterConfig) { switch (adpaterConfig) { case ShadowsocksConfig shadowsocksConfig: return(ShadowsocksConfigEncoder(shadowsocksConfig)); case TrojanConfig trojanConfig: return(TrojanConfigEncoder(trojanConfig)); } return(""); }
/// <summary> /// Applies the adapter config. /// </summary> /// <param name="adapter">the adapter config</param> public void ApplyAdapterConfig(IAdapterConfig adapter) { XmlDocument doc = adapterDocTable[adapter.Name]; XmlNamespaceManager nsmgr = new XmlNamespaceManager(new NameTable()); nsmgr.AddNamespace("tc", StringResource.DefaultNamespace); XmlNode adapterNode = doc.SelectSingleNode("tc:TestSite/tc:Adapters", nsmgr); XmlNode node = adapter.CreateXmlNode(doc); adapterNode.RemoveChild(adapterTable[adapter.Name]); adapterNode.AppendChild(node); adapterTable[adapter.Name] = node; }
private void LoadAdapterConfig(Type adapterType) { IAdapterConfig adapter = AssemblyHelper.CreateAdapter <IAdapterConfig>(adapterType); if (adapter == null) { MessageBox.Show("Cannot create instance of type " + adapterType.ToString() + "\r\n\r\n" + AssemblyHelper.LastErrorInfor); return; } IConfigUI[] uilist = adapter.GetConfigUI(); if (uilist != null && uilist.Length > 0) { _config = uilist[0]; } if (_config == null) { MessageBox.Show("Cannot get config implementation from adapter " + adapterType.ToString()); return; } Control ctrl = _config.GetControl(); if (ctrl == null) { MessageBox.Show("Cannot get config GUI from adapter " + adapterType.ToString()); return; } AssemblyHelper.PrepareControl(ctrl, tabPage2); tabPage2.Controls.Add(ctrl); //this.Text = _config.FileName; _config.LoadConfig(); }