private PatternInfo GetOrCreatePatternInfo(int id, object provider, string path, CreateWrapperFromProvider wrapperCreator) { PatternInfo oldInfo; if (patternMapping.TryGetValue(id, out oldInfo)) { if (oldInfo.Provider == provider) { return(oldInfo); } } object wrapper = wrapperCreator(provider); PatternInfo newInfo = new PatternInfo { Path = path, Provider = provider, ProviderWrapper = wrapper }; patternMapping [id] = newInfo; bus.Register(new ObjectPath(path), wrapper); return(newInfo); }
private PatternInfo GetOrCreatePatternInfo (int id, object provider, string path, CreateWrapperFromProvider wrapperCreator) { PatternInfo oldInfo; if (patternMapping.TryGetValue (id, out oldInfo)) { if (oldInfo.Provider == provider) return oldInfo; } object wrapper = wrapperCreator (provider); PatternInfo newInfo = new PatternInfo { Path = path, Provider = provider, ProviderWrapper = wrapper }; patternMapping [id] = newInfo; bus.Register (new ObjectPath (path), wrapper); return newInfo; }