public ClassExtensionProcess(IExtensionWrapper wrapper, Type extType, IDevice targetDevice = null) { this.ctx = (Context)wrapper; this.wrapper = wrapper; this.extensionType = extType; this.targetDevice = targetDevice; }
private bool IsOk(IExtensionWrapper Wrapper, IWrapperFilter[] filters) { foreach (var filter in filters) { if (!filter.Do(Wrapper)) { return(false); } } return(true); }
private static bool RegionOK(this IExtensionWrapper wrapper, string region) { if (wrapper.Info.Regions == null) { return(true); } return(wrapper.Info.Regions.Where((str) => { return str.ToLower() == region; }).Count() > 0); }
private static bool IsHide(this IExtensionWrapper wrapper) { if (wrapper.Info.TryGetValueType(ExtensionInformationKeys.IS_HIDDEN, out bool result)) { return(!result); } else { return(true); } }
/// <summary> /// DO! /// </summary> /// <param name="wrapper"></param> /// <returns></returns> public bool Do(IExtensionWrapper wrapper) { var crtLanCode = App.CurrentLanguageCode.ToLower(); if (wrapper.Info.Regions == null) { return(true); } return(wrapper.Info.Regions.Where((str) => { return str.ToLower() == crtLanCode; }).Count() > 0); }
public IExtensionThread Allocate(IExtensionWrapper wrapper, Type typeOfExtension) { var thread = new ExtensionThread(this, typeOfExtension, wrapper) { Id = AlllocatePID() }; readys.Add(thread); thread.Started += (s, e) => { readys.Remove(thread); runnings.Add(thread); }; return(thread); }
private static bool IsPassedDevCheck(this IExtensionWrapper wrapper, bool nowIsDevMode) { if (wrapper.Info.TryGetValueType(ExtensionInformationKeys.IS_DEVELOPING, out bool isDevExt)) { if (isDevExt) { return(nowIsDevMode); } else { return(true); } } else { return(true); } }
public bool Do(IExtensionWrapper Wrapper) { try { if (Wrapper.Info[ExtensionInformationKeys.IS_DEVELOPING] as bool? == true) { return(((Context)Wrapper).BaseApi.IsDeveloperMode); } else { return(true); } } catch { return(false); } }
public ExtensionThread(ExtensionThreadManager threadManager, Type extensionType, IExtensionWrapper wrapper) { if (threadManager == null) { throw new ArgumentNullException(nameof(threadManager)); } this.extensionType = extensionType; Wrapper = wrapper ?? throw new ArgumentNullException(nameof(wrapper)); }
/// <summary> /// 对比 /// </summary> /// <param name="other"></param> /// <returns></returns> public bool Equals(IExtensionWrapper other) { return(other != null && other.GetHashCode() == GetHashCode()); }
/// <summary> /// 构造 /// </summary> /// <param name="currentThread"></param> /// <param name="wrapper"></param> public ExtensionArgs(IExtensionThread currentThread, IExtensionWrapper wrapper) { CurrentThread = currentThread ?? throw new ArgumentNullException(nameof(currentThread)); Wrapper = wrapper; }
public OldExtensionSlice(IExtensionWrapper wrapper) { this.InitializeComponent(); (this.DataContext as VMOldExtension).Wrapper = wrapper; }
/// <summary> /// 执行 /// </summary> /// <param name="Wrapper"></param> /// <returns></returns> public bool Do(IExtensionWrapper Wrapper) { return(Wrapper.Info.RequiredDeviceStates.HasFlag(state) || Wrapper.Info.RequiredDeviceStates == state); }
public void Remove(IExtensionWrapper wrapper) { runningWrappers.Remove(wrapper); }
public void Add(IExtensionWrapper wrapper) { runningWrappers.Add(wrapper); }
public ExtensionWrapperDock(IExtensionWrapper wrapper) { this.Wrapper = wrapper; }