public void Test11() { var fakeReader = new FakeReader(); var pocoDataFactory = new PocoDataFactory(new MapperCollection()); var newPropertyMapper = new PropertyMapper(); var pocoData = pocoDataFactory.ForType(typeof(NestedConvention)); newPropertyMapper.Init(fakeReader, pocoData); newPropertyMapper.Map(fakeReader, new RowMapperContext() { PocoData = pocoData }); var sw = Stopwatch.StartNew(); for (int j = 0; j < 1000; j++) { newPropertyMapper = new PropertyMapper(); newPropertyMapper.Init(fakeReader, pocoData); for (int i = 0; i < 1000; i++) { newPropertyMapper.Map(fakeReader, new RowMapperContext() { PocoData = pocoData }); } } sw.Stop(); Console.WriteLine("Elapsed Time (ms): {0}", sw.ElapsedMilliseconds); //250 }
public void AddProperty(PropertyMapper pm) { ReadProperty rp = new ReadProperty(); rp.Mapper = pm; rp.Index = 0; mProperties.Add(rp); }
public void Initialize(XmlNode xmlControl) { _Controls = new List<WebControl>(); _PropertyMapper = new PropertyMapper(xmlControl); _Controls.Add(new ASPxLabel { Text = _PropertyMapper.GetName() }); }
public string GetValue(NameValueCollection formCollection, XmlNode xmlControl) { _PropertyMapper = new PropertyMapper(xmlControl); var tag = _PropertyMapper.GetID(); return "<" + tag + ">" + formCollection[_PropertyMapper.GetID()] + "</" + tag + ">"; }
public string GetValue(string formPrefix, NameValueCollection formCollection, XmlNode xmlControl) { _PropertyMapper = new PropertyMapper(xmlControl); var tag = _PropertyMapper.GetID(); return "<" + tag + ">" + formCollection[formPrefix.Replace('$','_').Split('_')[1]+"_" + _PropertyMapper.GetID() + "_VI"] + "</" + tag + ">"; }
public void DateTime_Formatting_Test() { TestObj x1 = InitializeMocks(); var x = new StringFormatterCollection(); x.Add(new ExpressionFormatter<TestObj>(o => o.MyDateTime.ToShortDateString())); var propertyNameAndValues = new PropertyMapper(x).GetMappings(x1); Assert.AreEqual(new DateTime(2011, 1, 1, 12, 1, 1).ToShortDateString(), propertyNameAndValues["MyDateTime"]); }
public void SettingColumnOverridesFormula() { var member = ForClass<MyClass>.Property(c => c.Autoproperty); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); mapper.Formula("formula"); mapper.Column(cm => cm.Unique(true)); mapping.formula.Should().Be.Null(); }
public void CanSetFormula() { var member = ForClass<MyClass>.Property(c=> c.Autoproperty); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); mapper.Formula("SomeFormula"); mapping.formula.Should().Be("SomeFormula"); }
public void BasicTypeTest() { TestObj x1 = InitializeMocks(); var x = new StringFormatterCollection(); x.Add(new ExpressionFormatter<TestObj>(o => "my lucky number is " + o.MyInt + " set from unit test")); var propertyNameAndValues = new PropertyMapper(x).GetMappings(x1); Assert.AreEqual("my lucky number is 10 set from unit test", propertyNameAndValues["MyInt"]); }
public void SettingColumnPlainValuesOverridesFormula() { var member = ForClass<MyClass>.Property(c => c.Autoproperty); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); mapper.Formula("formula"); mapper.Column("colName"); mapping.formula.Should().Be.Null(); mapping.column.Should().Be("colName"); }
public void SettingFormulaOverridesColumnNodes() { var member = ForClass<MyClass>.Property(c => c.Autoproperty); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); mapper.Column(cm=> cm.SqlType("VARCHAR(80)")); mapper.Formula("formula"); mapping.formula.Should().Be("formula"); mapping.column.Should().Be(null); mapping.Items.Should().Be.Null(); }
public void Primitive_As_Root2_Test() { TestObj x1 = InitializeMocks(); var x = new StringFormatterCollection(); x.Add(new ExpressionFormatter<string>(o => o.ToUpper())); var propertyNameAndValues = new PropertyMapper(x).GetMappings(x1); Assert.AreEqual("I'M A STRING", propertyNameAndValues["MyString"]); Assert.AreEqual("I'M A SUB STRING", propertyNameAndValues["Sub.SubString"]); //Assert.AreEqual("I'M", propertyNameAndValues["MyList[0]"]); }
public void Multiple_Formats_Test() { TestObj x1 = InitializeMocks(); var x = new StringFormatterCollection(); x.Add(new ExpressionFormatter<TestObj>(o => o.MyString + " I'm the exception", o => o.MyDateTime.ToShortTimeString())); x.Add(new ExpressionFormatter<string>(o => o + " hello world")); var propertyNameAndValues = new PropertyMapper(x).GetMappings(x1); Assert.AreEqual(new DateTime(2011, 1, 1, 12, 1, 1).ToShortTimeString(), propertyNameAndValues["MyDateTime"]); Assert.AreEqual("I'm A String I'm the exception", propertyNameAndValues["MyString"]); Assert.AreEqual("I'm a Sub String hello world", propertyNameAndValues["Sub.SubString"]); }
public void SettingFormulaOverridesColumnPlainValues() { var member = ForClass<MyClass>.Property(c => c.Autoproperty); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); mapper.Column("colName"); mapper.Length(10); mapper.NotNullable(true); mapper.Formula("formula"); mapping.formula.Should().Be("formula"); mapping.column.Should().Be(null); mapping.length.Should().Be(null); mapping.notnull.Should().Be(false); mapping.Items.Should().Be.Null(); }
public string GetValue(string formPrefix, NameValueCollection formCollection, XmlNode xmlControl) { _PropertyMapper = new PropertyMapper(xmlControl); var tag = _PropertyMapper.GetID(); try { var dateTime = Convert.ToDateTime(formCollection[formPrefix + _PropertyMapper.GetID()]); return "<" + tag + ">" + dateTime.ToString("HH:mm") + "</" + tag + ">"; } catch (Exception) { return "<" + tag + "></" + tag + ">"; } }
public string GetValue(NameValueCollection formCollection, XmlNode xmlControl) { _PropertyMapper = new PropertyMapper(xmlControl); var tag = _PropertyMapper.GetID(); try { DateTime dateTime = Convert.ToDateTime(formCollection[_PropertyMapper.GetID()]); return "<" + tag + ">" + dateTime.ToString("yyyy/MM/dd") + "</" + tag + ">"; } catch (Exception) { return "<" + tag + "></" + tag + ">"; } }
internal void Analyse() { if (!mIsAnalyse) { lock (this) { if (!mIsAnalyse) { PartnerMapper = ObjectMapper.GetOM(Partner); PartnerProperty = PartnerMapper[Column]; if (PartnerProperty == null) throw new PeanutException(string.Format(DataMsg.COLUMN_DESC_NOTFOUND, Partner.Name, Column)); } } } }
public string GetValue(string formPrefix, NameValueCollection FormCollection, XmlNode xmlControl) { _PropertyMapper = new PropertyMapper(xmlControl); XmlNode valuesNode = _PropertyMapper.GetValuesNode(); var result = String.Empty; foreach (XmlNode xmlValueNode in valuesNode.ChildNodes) { if (FormCollection[formPrefix + "rad" + xmlValueNode.GetAttribute("CCLAVE")] == "C") { var tag = _PropertyMapper.GetID(); return "<" + tag + ">" + xmlValueNode.GetAttribute("CCLAVE") + "</" + tag + ">"; } } return result; }
public string GetValue(NameValueCollection FormCollection, XmlNode xmlControl) { _PropertyMapper = new PropertyMapper(xmlControl); XmlNode valuesNode = _PropertyMapper.GetValuesNode(); var result = "<" + _PropertyMapper.GetID() + ">"; foreach (XmlNode xmlValueNode in valuesNode.ChildNodes) { if (FormCollection["chk" + xmlValueNode.GetAttribute("CCLAVE")] == "C") { result += "<VALUE>" + xmlValueNode.GetAttribute("CCLAVE") + "</VALUE>"; } } return result + "</" + _PropertyMapper.GetID() + ">"; }
private void ReaderToProperty(System.Data.IDataReader reader, object obj, ReadProperty rp, PropertyMapper pm,PropertyHandler handler) { try { object dbvalue = reader[rp.Index]; if (dbvalue != DBNull.Value) { if (pm.Cast != null) { dbvalue = pm.Cast.ToProperty(dbvalue, pm.Handler.Property.PropertyType, obj); } handler.Set(obj, Convert.ChangeType(dbvalue, pm.Handler.Property.PropertyType)); } } catch (Exception e_) { throw new PeanutException(string.Format(DataMsg.READER_TO_PROPERTY_ERROR, pm.ColumnName, pm.Handler.Property.Name), e_); } }
public void Object_ToString_Test() { TestObj x1 = InitializeMocks(); var x = new StringFormatterCollection(); x.Add(new ExpressionFormatter<InnerObj>(o => o.ToString())); x.Add(new ExpressionFormatter<TestObj>(o => "I'm an Int " + (1 + o.MyInt))); var propertyNameAndValues = new PropertyMapper(x).GetMappings(x1); Assert.AreEqual("I'm the ToString of InnerObj99", propertyNameAndValues["Sub.Inner"]); Assert.AreEqual("I'm an Int 11", propertyNameAndValues["MyInt"]); }
protected AbstractViewHandler(PropertyMapper mapper) { defaultMapper = mapper; }
public void WhenSetFormulaThenResetColumn() { var member = ForClass<MyClass>.Property(c => c.Autoproperty); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); mapper.Column("MyColumn"); mapper.Formula("SomeFormula"); mapping.formula.Should().Be("SomeFormula"); mapping.column.Should().Be.Null(); mapping.Items.Should().Be.Null(); }
public void WhenSetFormulaWithNullThenDoNothing() { var member = ForClass<MyClass>.Property(c => c.Autoproperty); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); mapper.Column("MyColumn"); mapper.Formula(null); mapping.formula.Should().Be.Null(); mapping.column.Should().Not.Be.Null(); }
public SkiaView(PropertyMapper <SkiaView> mapper) { Mapper = mapper ?? new PropertyMapper <SkiaView>(); }
protected AbstractControlDelegate(PropertyMapper <DrawableControl> mapper) { Mapper = mapper ?? new PropertyMapper <DrawableControl>(); }
/// <summary> /// Overloaded call to add a journal entry to nested entities like product->dependency /// </summary> /// <param name="entry"></param> /// <param name="userName"></param> /// <param name="parentProductId"></param> /// <param name="childProductId"></param> /// <returns></returns> private List<JournalEntry> GetJournalEntriesForChange(DbEntityEntry entry, string userName, int parentProductId, int childProductId) { List<JournalEntry> result = new List<JournalEntry>(); var parentProduct = this.Products.Find(parentProductId); var childProduct = this.Products.Find(childProductId); var entitySetBase = this.GetEntitySet(entry.Entity.GetType()); PropertyMapper propertyMapper = new PropertyMapper(); string displayText = propertyMapper.GetFriendlyTextForProperty(entitySetBase.Name) ?? entitySetBase.Name; if (entry.State == EntityState.Added) { result.Add(new JournalEntry() { JournalEntryCreatedBy = userName, JournalEntryCreatedOn = System.DateTime.Now, JournalEntryText = string.Format("<html><span style=\"font-size: 9pt;\"><b>Added:</b> {0} -> {1}</span></html>", displayText, childProduct.ProductName), JournalEntryType = JournalEntryType.System, ProductId = parentProductId }); logger.Info("Added: {0} -> '{1}'", displayText, childProduct.ProductName); } else if (entry.State == EntityState.Deleted) { result.Add(new JournalEntry() { JournalEntryCreatedBy = userName, JournalEntryCreatedOn = System.DateTime.Now, JournalEntryText = string.Format("<html><span style=\"font-size: 9pt;\"><b>Removed:</b> {0} -> {1}</span></html>", displayText, childProduct.ProductName), JournalEntryType = JournalEntryType.System, ProductId = parentProductId }); logger.Info("Removed: {0} -> '{1}'", displayText, childProduct.ProductName); } else if (entry.State == EntityState.Modified) { foreach (var propertyName in entry.OriginalValues.PropertyNames) { //Only capture the values that have changed if (!object.Equals(entry.OriginalValues.GetValue<object>(propertyName), entry.CurrentValues.GetValue<object>(propertyName))) { string currentValue = entry.CurrentValues.GetValue<object>(propertyName) == null ? "Null" : entry.CurrentValues.GetValue<object>(propertyName).ToString(); currentValue = string.IsNullOrEmpty(currentValue) ? "Null" : currentValue; if (currentValue.Contains("System.Byte[]")) { var currentByteValue = (byte[])entry.CurrentValues.GetValue<object>(propertyName); var formattedHolder = FileSizeFormatter.ToFormattedString(currentByteValue.LongLength); currentValue = formattedHolder.Number + " " + formattedHolder.Suffix; } string originalValue = entry.OriginalValues.GetValue<object>(propertyName) == null ? "Null" : entry.OriginalValues.GetValue<object>(propertyName).ToString(); originalValue = string.IsNullOrEmpty(originalValue) ? "Null" : originalValue; if (originalValue.Contains("System.Byte[]")) { var originalByteValue = (byte[])entry.OriginalValues.GetValue<object>(propertyName); var formattedHolder = FileSizeFormatter.ToFormattedString(originalByteValue.LongLength); originalValue = formattedHolder.Number + " " + formattedHolder.Suffix; } displayText = propertyMapper.GetFriendlyTextForProperty(propertyName) ?? propertyName; result.Add(new JournalEntry() { JournalEntryCreatedBy = userName, JournalEntryCreatedOn = System.DateTime.Now, JournalEntryText = string.Format("<html><span style=\"font-size: 9pt;\"><b>Changed:</b> {0} -> <i>Old Value: '{1}'</i> <b>New Value: '{2}' </b></span></html>", displayText, originalValue, currentValue), JournalEntryType = JournalEntryType.System, ProductId = parentProductId }); logger.Info("Changed: {0} -> Old Value: '{1}' New Value: {2}", displayText, originalValue, currentValue); } } } return result; }
public BordelessEntryHandler(PropertyMapper mapper = null) : base(mapper ?? BorderlessEntryMapper) { }
public SelectableItemsViewHandler(PropertyMapper mapper = null) : base(mapper ?? SelectableItemsViewMapper) { }
protected AbstractControlHandler(PropertyMapper <TVirtualView> mapper) { _mapper = mapper; }
public void ComplexList_Format_Test() { TestObj x1 = InitializeMocks(); var x = new StringFormatterCollection(); x.Add(new ExpressionFormatter<string>(o => o.ToUpper())); var propertyNameAndValues = new PropertyMapper(x).GetMappings(x1); Assert.AreEqual("LIST STRING 1", propertyNameAndValues["MyComplexList[0].SubString"]); }
public HandlerStub(PropertyMapper mapper) : base(mapper) { }
protected ItemsViewHandler(PropertyMapper mapper, CommandMapper commandMapper = null) : base(mapper, commandMapper) { }
/// <summary> /// Updates the DTO with the information from the model /// </summary> /// <param name="model">Reference to the Model</param> public virtual void MapFromModel(TModelType model) { PropertyMapper.Map(model, this); }
/// <summary> /// Maps the Current DTO to a Model /// </summary> /// <returns>An instance of the model defined by <typeparamref name="TModelType"/></returns> public virtual TModelType MapToModel() { return(PropertyMapper.Map <TModelType>(this)); }
public BlazorHandler(PropertyMapper <TVirtualView> mapper) { _mapper = mapper; }
public PickerHandler(PropertyMapper mapper) : base(mapper) { }
public void Deep_Property_ToString_Test() { TestObj x1 = InitializeMocks(); var x = new StringFormatterCollection(); x.Add(new ExpressionFormatter<TestObj>(o => o.Sub.Inner.InnerInt.ToString() + "LOLZ")); var propertyNameAndValues = new PropertyMapper(x).GetMappings(x1); Assert.AreEqual("99LOLZ", propertyNameAndValues["Sub.Inner.InnerInt"]); }
public ButtonHandler(PropertyMapper mapper) : base(mapper ?? ButtonMapper) { }
protected GraphicsControlHandler(DrawMapper?drawMapper, PropertyMapper mapper) : base(mapper ?? ViewHandler.Mapper) { _drawMapper = drawMapper ?? new DrawMapper <TViewDrawable, TVirtualView>(ViewHandler.DrawMapper); }
private void MapProperties(Type aspectDeclaringType, ITypeMapCollection typeMap) { var properties = aspectDeclaringType.GetPublicProperties(); var propertyMapper = new PropertyMapper(typeMap); var mappedPropertiesEnumerable = propertyMapper.Select(map => { var aspectProperty = properties.FirstOrDefault(property => { return property.IsMatchedTo(map.ContractMember); }); return new AspectPropertyMap(map.ContractType, map.ImplementationType, map.ContractMember, map.ImplementationMember, aspectProperty); }); mappedProperties = mappedPropertiesEnumerable.ToList<IAspectPropertyMap>(); }
public ShapeViewHandler(PropertyMapper mapper) : base(mapper ?? ShapeViewMapper) { }
public void WhenSetFormulaWithMultipleLinesThenSetFormulaNode() { var member = ForClass<MyClass>.Property(c => c.Autoproperty); var mapping = new HbmProperty(); var mapper = new PropertyMapper(member, mapping); var formula = @"Line1 Line2"; mapper.Formula(formula); mapping.formula.Should().Be.Null(); mapping.Items.FirstOrDefault().Should().Not.Be.Null().And.Be.OfType<HbmFormula>(); var hbmFormula = (HbmFormula)(mapping.Items.First()); hbmFormula.Text.Length.Should().Be(2); hbmFormula.Text[0].Should().Be("Line1"); hbmFormula.Text[1].Should().Be("Line2"); }
protected AbstractHandler(PropertyMapper <TVirtualView> mapper) { this.mapper = mapper; }
public ItemsViewHandler(PropertyMapper mapper = null) : base(mapper ?? ItemsViewMapper) { }
public CarouselViewHandler(PropertyMapper mapper = null) : base(mapper ?? CarouselViewMapper) { }
public PropertyFileRepository(IFileReader loader, PropertyMapper mapper) : base(loader, mapper) { }
protected void SetMapper(PropertyMapper <TVirtualView> mapper) { _mapper = mapper; }
public SwitchHandler(PropertyMapper mapper) : base(mapper ?? SwitchMapper) { }
protected ViewHandler(PropertyMapper mapper) { _ = mapper ?? throw new ArgumentNullException(nameof(mapper)); _defaultMapper = mapper; _mapper = _defaultMapper; }
protected AbstractControlDelegate() { Mapper = new PropertyMapper <DrawableControl>(); }
public ViewHandlerStub(PropertyMapper mapper = null) : base(mapper ?? MockViewMapper) { }
public StepperHandler(PropertyMapper mapper) : base(mapper ?? StepperMapper) { }
/// <summary> /// Maps an argument value to the property specified by the expression. /// </summary> /// <param name="expression">The expression that identifies the property.</param> /// <returns>Configuration.</returns> public ArgumentConfiguration <TOptions, TValue> ToProperty(Expression <Func <TOptions, TValue> > expression) => Using(PropertyMapper <TOptions, TValue> .Create(expression));
protected PropertyMapper <T> GetRendererOverrides <T>() where T : IView => (PropertyMapper <T>)(propertyMapper as PropertyMapper <T> ?? (propertyMapper = new PropertyMapper <T>()));
public LabelHandler(PropertyMapper mapper) : base(mapper ?? LabelMapper) { }
/// <summary> /// Read all properties from a type - store in a static cache - exclude: Id and [BsonIgnore] /// </summary> public static Dictionary<string, PropertyMapper> GetProperties(Type type, Func<string, string> resolvePropertyName) { var dict = new Dictionary<string, PropertyMapper>(StringComparer.OrdinalIgnoreCase); var id = GetIdProperty(type); var ignore = typeof(BsonIgnoreAttribute); var idAttr = typeof(BsonIdAttribute); var fieldAttr = typeof(BsonFieldAttribute); var indexAttr = typeof(BsonIndexAttribute); var props = type.GetProperties(BindingFlags.Public | BindingFlags.Instance | BindingFlags.NonPublic); foreach (var prop in props) { // ignore indexer property if (prop.GetIndexParameters().Length > 0) continue; // ignore not read/write if (!prop.CanRead || !prop.CanWrite) continue; // [BsonIgnore] if (prop.IsDefined(ignore, false)) continue; // check if property has [BsonField] var bsonField = prop.IsDefined(fieldAttr, false); // create getter/setter IL function var getter = CreateGetMethod(type, prop, bsonField); var setter = CreateSetMethod(type, prop, bsonField); // if not getter or setter - no mapping if (getter == null) continue; var name = id != null && id.Equals(prop) ? "_id" : resolvePropertyName(prop.Name); // check if property has [BsonField] with a custom field name if (bsonField) { var field = (BsonFieldAttribute)prop.GetCustomAttributes(fieldAttr, false).FirstOrDefault(); if (field != null && field.Name != null) name = field.Name; } // check if property has [BsonId] to get with was setted AutoId = true var autoId = (BsonIdAttribute)prop.GetCustomAttributes(idAttr, false).FirstOrDefault(); // checks if this proerty has [BsonIndex] var index = (BsonIndexAttribute)prop.GetCustomAttributes(indexAttr, false).FirstOrDefault(); // if is _id field, do not accept index definition if (name == "_id") index = null; // test if field name is OK (avoid to check in all instances) - do not test internal classes, like DbRef if (BsonDocument.IsValidFieldName(name) == false) throw LiteException.InvalidFormat(prop.Name, name); // create a property mapper var p = new PropertyMapper { AutoId = autoId == null ? true : autoId.AutoId, FieldName = name, PropertyName = prop.Name, PropertyType = prop.PropertyType, IndexOptions = index == null ? null : index.Options, Getter = getter, Setter = setter }; dict.Add(prop.Name, p); } return dict; }
public WebViewHandler(PropertyMapper mapper) : base(mapper ?? WebViewMapper) { }
public void Enum_Format_Test() { TestObj x1 = InitializeMocks(); var x = new StringFormatterCollection(); x.Add(new ExpressionFormatter<TestObj>(o => o.MyEnum.ToString() + " hello")); var propertyNameAndValues = new PropertyMapper(x).GetMappings(x1); Assert.AreEqual("e1 hello", propertyNameAndValues["MyEnum.e1"]); }
public LayoutHandler(PropertyMapper mapper) : base(mapper ?? LayoutMapper) { }