示例#1
0
 private PasswordChangerTreeNode(PwGroup pwGroup, PwDatabase pwDatabase, IFieldMapper fieldMapper)
     : base(pwGroup.Name)
 {
     this.pwGroup     = pwGroup;
     this.pwDatabase  = pwDatabase;
     this.fieldMapper = fieldMapper;
 }
示例#2
0
        public static PasswordChangerTreeNode Build(PwDatabase pwDatabase, IFieldMapper fieldMapper)
        {
            PasswordChangerTreeNode rootTreeNode = new PasswordChangerTreeNode(pwDatabase.RootGroup, pwDatabase, fieldMapper);

            build(rootTreeNode, pwDatabase.RootGroup, pwDatabase, fieldMapper);
            return(rootTreeNode);
        }
示例#3
0
        public CachingFieldMapper([NotNull] IFieldMapper innerMapper)
        {
            Contract.Requires(innerMapper != null);

            _innerMapper = innerMapper ?? throw new ArgumentNullException(nameof(innerMapper));
            _cache       = new ConcurrentDictionary <string, object>();
        }
示例#4
0
        public RfcRuntime(ILogger logger = null, IFieldMapper fieldMapper = null, RfcRuntimeOptions options = null)
        {
            Logger = logger == null ? Option <ILogger> .None : Option <ILogger> .Some(logger);

            FieldMapper = fieldMapper ?? CreateDefaultFieldMapper();
            Options     = options ?? new RfcRuntimeOptions();
        }
示例#5
0
 public ShowService(IConsumer consumer,
                    IFieldMapper fieldMapper,
                    IMetadataRestRepository repository)
 {
     _consumer    = consumer;
     _fieldMapper = fieldMapper;
     _repository  = repository;
 }
示例#6
0
 public void AddField(IFieldMapper <T> fieldMapper)
 {
     fieldMap.Add(fieldMapper.PropertyName, fieldMapper);
     if (!string.IsNullOrWhiteSpace(fieldMapper.FieldName) && fieldMapper.Analyzer != null)
     {
         Analyzer.AddAnalyzer(fieldMapper.FieldName, fieldMapper.Analyzer);
     }
 }
        public ODataConverterTests()
        {
            _fieldMapper = new ProductFieldMapper();
            var productEdmModel     = Product.GetEdmModel();
            var productDocsEdmModel = ProductDoc.GetProductsModel();

            _odataConverter = new ODataConverter(productEdmModel, typeof(Product), productDocsEdmModel, typeof(ProductDoc), _fieldMapper);
        }
 public RelativesAwareTeamFoundationServerWorkItemQueryProvider(
     IWorkItemStore workItemStore,
     IWiqlQueryBuilder queryBuilder,
     IWorkItemMapper workItemMapper,
     IFieldMapper fieldMapper)
     : base(workItemStore, queryBuilder, workItemMapper)
 {
     _fieldMapper = fieldMapper;
 }
示例#9
0
        public override void Given()
        {
            var workItems = new List <IWorkItem>
            {
                new MockWorkItem("SimpleMockWorkItem", new Dictionary <string, object>
                {
                    { "ID", 1 },
                    { "IntField", 2 }
                }),
                new MockWorkItem("SimpleMockWorkItem", new Dictionary <string, object>
                {
                    { "ID", 2 },
                    { "IntField", 4 }
                })
                ,
                new MockWorkItem("SimpleMockWorkItem", new Dictionary <string, object>
                {
                    { "ID", 3 },
                    { "IntField", 3 }
                })
                ,
                new MockWorkItem("SimpleMockWorkItem", new Dictionary <string, object>
                {
                    { "ID", 4 },
                    { "IntField", 4 }
                })
                ,
                new MockWorkItem("SimpleMockWorkItem", new Dictionary <string, object>
                {
                    { "ID", 5 },
                    { "IntField", 5 }
                })
            };

            var links = new[] {
                new MockWorkItemLinkInfo(0, 3),
                new MockWorkItemLinkInfo(3, 1),
                new MockWorkItemLinkInfo(3, 2),
                new MockWorkItemLinkInfo(0, 4),
                new MockWorkItemLinkInfo(0, 5)
            };

            WorkItemStore = new MockWorkItemStore(workItems, links);
            FieldMapper   = new CachingFieldMapper(new FieldMapper());

            var propertyInspector = new PropertyInspector(PropertyReflector);
            var mapperStrategies  = new IWorkItemMapperStrategy[]
            {
                new AttributeMapperStrategy(propertyInspector,
                                            new TypeParser()),
                new WorkItemLinksMapperStrategy(propertyInspector, WorkItemStore)
            };

            Builder = new WiqlQueryBuilder(new WiqlTranslator(FieldMapper), new PartialEvaluator(), new QueryRewriter());
            Mapper  = new WorkItemMapper(mapperStrategies);
        }
示例#10
0
        public ODataConverter(IEdmModel sourceModel, Type sourceType, IEdmModel targetModel, Type targetType, IFieldMapper fieldMapper)
        {
            _sourceModel = sourceModel;
            _sourceType  = sourceType;

            _targetModel = targetModel;
            _targetType  = targetType;

            _fieldMapper = fieldMapper;
        }
示例#11
0
        public void Setup()
        {
            Assert.IsTrue(File.Exists(databasePath));
            var ioConnectionInfo = new IOConnectionInfo()
            {
                Path = databasePath
            };

            var key = new CompositeKey();

            key.AddUserKey(new KcpPassword(databasePassword));

            this.pwDatabase = new PwDatabase();
            this.pwDatabase.Open(ioConnectionInfo, key, null);

            this.fieldsMapper = new InMemoryFieldMapper()
            {
                HostAddress      = "IP Address",
                ConnectionMethod = "OS"
            };
        }
示例#12
0
        public void Setup()
        {
            var fullDatabasePath = Path.Combine(TestContext.CurrentContext.TestDirectory, databasePath);

            Assert.IsTrue(File.Exists(fullDatabasePath));
            var ioConnectionInfo = new IOConnectionInfo()
            {
                Path = fullDatabasePath
            };

            var key = new CompositeKey();

            key.AddUserKey(new KcpPassword(databasePassword));

            this.pwDatabase = new PwDatabase();
            this.pwDatabase.Open(ioConnectionInfo, key, null);

            this.fieldMapper = new InMemoryFieldMapper()
            {
                HostAddress      = "IP Address",
                ConnectionMethod = "OS"
            };
        }
示例#13
0
 public void AddKeyField(IFieldMapper <T> fieldMapper)
 {
     fieldMap.Add(fieldMapper.PropertyName, fieldMapper);
     keyFields.Add(fieldMapper);
 }
示例#14
0
 public void AddField(IFieldMapper <T> field)
 {
     fieldMap.Add(field.PropertyName, field);
 }
示例#15
0
 public void AddKeyField(IFieldMapper <T> fieldMapper)
 {
     AddField(fieldMapper);
     keyFields.Add(fieldMapper);
 }
示例#16
0
 public RelativesAwareTranslator(IFieldMapper fieldMapper) : base(fieldMapper)
 {
     Query = new RelativesAwareTranslatedQuery();
 }
示例#17
0
 private static void build(PasswordChangerTreeNode parentTreeNode, PwGroup rootGroup, PwDatabase pwDatabase, IFieldMapper fieldMapper)
 {
     foreach (var group in rootGroup.Groups)
     {
         PasswordChangerTreeNode treeNode = new PasswordChangerTreeNode(group, pwDatabase, fieldMapper);
         parentTreeNode.Nodes.Add(treeNode);
         build(treeNode, group, pwDatabase, fieldMapper);
     }
 }
示例#18
0
 public RelativesAwareWiqlTranslator(IFieldMapper fieldMapper) : base(fieldMapper)
 {
 }
示例#19
0
 internal MemberFragment(IFieldMapper fieldMapper, string parameterName)
 {
     _fieldMapper  = fieldMapper;
     ParameterName = parameterName;
 }
示例#20
0
 public static TableDefinition Map(this TableDefinition def, IFieldMapper field)
 {
     def.FieldMappers.Add(field);
     return(def);
 }
示例#21
0
 public TableMapper(IFieldMapper fieldMapper, ITSqlCommandHolder sqlCommands)
 {
     _SqlCommands = sqlCommands;
     _FieldMapper = fieldMapper;
 }
示例#22
0
 public WiqlTranslator(IFieldMapper fieldMapper)
 {
     FieldMapper = fieldMapper;
 }
 public PasswordChangerHostPwEntry(PwEntry pwEntry, PwDatabase pwDatabase, IFieldMapper fieldMapper)
     : base(pwEntry, pwDatabase, fieldMapper)
 {
 }
示例#24
0
 public Translator(IFieldMapper fieldMapper)
 {
     _fieldMapper          = fieldMapper;
     Query                 = new TranslatedQuery();
     _expressionInProgress = new Queue <IFragment>();
 }
示例#25
0
 public WiqlTranslator(IFieldMapper fieldMapper)
 {
     FieldMapper = fieldMapper ?? throw new ArgumentNullException(nameof(fieldMapper));
 }
 public LabeledFieldMapper(IFieldMapper key, string labelName, ILabelProvider label, string friendlyName = null)
     : this(key, label == null ? new KeyValuePair <string, ILabelProvider> [0] : new[] { new KeyValuePair <string, ILabelProvider>(labelName, label) }, friendlyName)
 {
 }
 public LabeledFieldMapper(IFieldMapper key, IEnumerable <KeyValuePair <string, ILabelProvider> > labels = null, string friendlyName = null)
 {
     Key          = key;
     Labels       = labels;
     FriendlyName = friendlyName;
 }
 public HostPwEntry(PwEntry pwEntry, PwDatabase pwDatabase, IFieldMapper fieldMapper)
 {
     this.pwEntry      = pwEntry;
     this.pwDatabase   = pwDatabase;
     this.fieldsMapper = fieldMapper;
 }
示例#29
0
 public CachingFieldMapper(IFieldMapper innerMapper)
 {
     _innerMapper = innerMapper;
     _cache       = new ConcurrentDictionary <string, object>();
 }
        public LabeledFieldMapper(IFieldMapper key, string labelName, ILabelProvider label, string friendlyName = null)
            : this(key, label == null ? new KeyValuePair<string, ILabelProvider>[0] : new[] { new KeyValuePair<string, ILabelProvider>(labelName, label)}, friendlyName)
        {

        }
示例#31
0
        public override bool Initialize(IPluginHost pluginHost)
        {
            Debug.Assert(pluginHost != null);

            if (pluginHost == null)
            {
                return(false);
            }

            this.pluginHost = pluginHost;

            this.Settings = QuickConnectPluginSettings.Load(pluginHost, new PluginCustomConfigPropertyNameFormatter(PluginName));

            this.fieldsMapper = new SettingsFieldMapper(this.Settings);

            pluginMenuItemOptions        = new ToolStripMenuItem("Options...");
            pluginMenuItemOptions.Click += new EventHandler(
                pluginMenuItemOptionsOnClickEventHandler = delegate(object obj, EventArgs ev) {
                List <String> fields = null;

                // Check if database is open.
                if (this.pluginHost.Database != null && this.pluginHost.Database.IsOpen)
                {
                    fields = this.pluginHost.Database.GetAllFields(true).ToList();
                    fields.Sort();
                }

                try
                {
                    KeysHelper.UnregisterKeePassHotKeys();
                    using (FormOptions form = new FormOptions(Title, this.Settings, fields))
                    {
                        form.ShowDialog(pluginHost.MainWindow);
                    }
                }
                finally
                {
                    KeysHelper.RegisterKeePassHotKeys();
                }
            }
                );
            pluginMenuItemBatchPasswordChanger        = new ToolStripMenuItem("Batch Password Changer...");
            pluginMenuItemBatchPasswordChanger.Click += new EventHandler(
                pluginMenuItemBatchPasswordChangerOnClickEventHandler = delegate(object obj, EventArgs ev) {
                IPasswordChangerTreeNode pwTreeNode = null;
                // Check if database is open.
                if (this.pluginHost.Database != null && this.pluginHost.Database.IsOpen)
                {
                    pwTreeNode = PasswordChangerTreeNode.Build(pluginHost.Database, fieldsMapper);
                }
                else
                {
                    pwTreeNode = new EmptyTreeNode("No database available.");
                }
                var pwChangerFactory = new DictionaryPasswordChangerExFactory();

                if (QuickConnectUtils.IsVSpherePowerCLIInstalled())
                {
                    pwChangerFactory.Factories.Add(HostType.ESXi, new PasswordChangerExFactory(new ESXiPasswordChangerFactory()));
                }
                if (!String.IsNullOrEmpty(this.Settings.PsPasswdPath) &&
                    File.Exists(this.Settings.PsPasswdPath) &&
                    PsPasswdWrapper.IsPsPasswdUtility(this.Settings.PsPasswdPath) &&
                    PsPasswdWrapper.IsSupportedVersion(this.Settings.PsPasswdPath))
                {
                    pwChangerFactory.Factories.Add(HostType.Windows, new PasswordChangerExFactory(new WindowsPasswordChangerFactory(
                                                                                                      new PsPasswdWrapper(this.Settings.PsPasswdPath)))
                                                   );
                }
                pwChangerFactory.Factories.Add(HostType.Linux, new LinuxPasswordChangerExFactory(new LinuxPasswordChangerFactory()));

                var pwChangerServiceFactory = new PasswordChangerServiceFactory(
                    new PasswordDatabase(this.pluginHost.Database),
                    pwChangerFactory,
                    new SystemClock()
                    );
                using (var form = new FormBatchPasswordChanger(pwTreeNode, pwChangerServiceFactory)) {
                    form.ShowDialog(pluginHost.MainWindow);
                    if (form.Changed)
                    {
                        refreshUI();
                    }
                }
            }
                );
            pluginMenuItemAbout        = new ToolStripMenuItem("About");
            pluginMenuItemAbout.Click += new EventHandler(
                pluginMenuItemAboutOnClickEventHandler = delegate(object obj, EventArgs ev) {
                using (FormAbout form = new FormAbout()) {
                    form.Text = form.Text.Replace("{title}", Title);
                    form.ShowDialog(pluginHost.MainWindow);
                }
            }
                );
            pluginMenuItem = new ToolStripMenuItem(String.Format("{0}", Title));
            pluginMenuItem.DropDownItems.Add(pluginMenuItemBatchPasswordChanger);
            pluginMenuItem.DropDownItems.Add(pluginMenuItemOptions);
            pluginMenuItem.DropDownItems.Add(pluginMenuItemAbout);

            this.pluginHost.MainWindow.ToolsMenu.DropDownItems.Add(pluginMenuItem);

            // Add handlers.
            ContextMenuStrip entryContextMenu = pluginHost.MainWindow.EntryContextMenu;

            entryContextMenu.Opened += new EventHandler(entryContextMenu_Opened);
            entryContextMenu.Closed += new ToolStripDropDownClosedEventHandler(entryContextMenu_Closed);

            var control         = FormsUtils.FindControlRecursive(pluginHost.MainWindow, KeePassListViewControl);
            var listViewControl = control as CustomListViewEx;

            if (listViewControl != null)
            {
                listViewControl.KeyUp += new KeyEventHandler(listViewControl_KeyUp);
            }

            return(true);
        }
 public LabeledFieldMapper(IFieldMapper key, IEnumerable<KeyValuePair<string, ILabelProvider>> labels = null, string friendlyName = null)
 {
     Key = key;
     Labels = labels;
     FriendlyName = friendlyName;
 }