/// <summary> /// XML text reader constructor. /// Project site: http://code.google.com/p/nserializer/ /// </summary> /// <param name="typeSeedAssembly"> /// Seed assembly used for type discovery. /// All types used in the XML file must be in this assembly or referenced assemblies. /// The reader will recursively search referenced assemblies. Only used if the xmlNodeReader /// parameter is null. /// </param> /// <param name="appObjectRepository"> /// Optional external repository. Used to provide instances of application scope objects. /// </param> /// <param name="docObjectRepository"> /// Optional external repository. Used to provide instances of document scope objects. /// </param> /// <param name="migrationRulesBuilder"> /// Optional migration rules builder. /// </param> public NXmlReader(Assembly typeSeedAssembly, IApplicationObjectsRepository appObjectRepository, IDocumentObjectsRepository docObjectRepository, IMigrationRulesBuilder migrationRulesBuilder, ISubsystemBuilder pluginsBuilder) { system = new SystemDefinition(); system.HasInstance(appObjectRepository ?? new NullApplicationObjectRepository()) .Provides <IApplicationObjectsRepository>(); system.HasInstance(docObjectRepository ?? new NullDocumentObjectRepository()) .Provides <IDocumentObjectsRepository>(); system.HasInstance(migrationRulesBuilder ?? new NullMigrationRulesBuilder()) .Provides <IMigrationRulesBuilder>(); new DefaultPluginsBuilder().Build(system); if (pluginsBuilder != null) { system = system.CreateSubsystem(pluginsBuilder); } system.HasSubsystem(new ReaderBuilder(typeSeedAssembly)) .Provides <IDataTypeFactory>() .Provides <ITypeFinder>(); system.HasSubsystem(new MetadataReaderBuilder()) .Provides <MetaDataReader>(); }
public IMigrationRules MigrateUsing(IMigrationRulesBuilder rulesBuilder) { IMigrationRules newRules = new MigrationRules(new MigrationDefinition(definition, versionQualifier.StartVersion, logger), versionQualifier.StartVersion, logger); rulesBuilder.Build(newRules); return rules; }
public IMigrationRules MigrateUsing(IMigrationRulesBuilder rulesBuilder) { IMigrationRules newRules = new MigrationRules(new MigrationDefinition(definition, versionQualifier.StartVersion, logger), versionQualifier.StartVersion, logger); rulesBuilder.Build(newRules); return(rules); }
protected static string SerializeAsXml(object value, IApplicationObjectsRepository repository, IMigrationRulesBuilder migrationRulesBuilder) { var xmlResult = new StringBuilder(); IDocumentWriter document = new NXmlDocumentWriter(); var xmlWriter = new NXmlWriter(document, repository, migrationRulesBuilder, new TestPlugins()); xmlWriter.Write(value, new StringWriter(xmlResult)); return(xmlResult.ToString()); }
protected T ReadXmlText <T>(string xmlText, IApplicationObjectsRepository appObjectRepository, IDocumentObjectsRepository docObjectRepository, IMigrationRulesBuilder migrationRulesBuilder) { var stringReader = new StringReader(xmlText); var reader = new NXmlReader(typeSeedAssembly, appObjectRepository, docObjectRepository, migrationRulesBuilder, new TestPlugins()); return(reader.Read <T>(GetStream(xmlText))); }
public NXmlWriter(IDocumentWriter document, IApplicationObjectsRepository appObjectRepository, IMigrationRulesBuilder migrationRulesBuilder, ISubsystemBuilder pluginsBuilder) { system = new SystemDefinition(); system.HasInstance(document) .Provides<IDocumentWriter>(); system.HasInstance(appObjectRepository ?? new NullApplicationObjectRepository()) .Provides<IApplicationObjectsRepository>(); system.HasInstance(migrationRulesBuilder ?? new NullMigrationRulesBuilder()) .Provides<IMigrationRulesBuilder>(); system.HasInstance(new NullLogger()) .Provides<ILogger>(); if (pluginsBuilder != null) { system = system.CreateSubsystem(pluginsBuilder); } }
public NXmlWriter(IDocumentWriter document, IApplicationObjectsRepository appObjectRepository, IMigrationRulesBuilder migrationRulesBuilder, ISubsystemBuilder pluginsBuilder) { system = new SystemDefinition(); system.HasInstance(document) .Provides <IDocumentWriter>(); system.HasInstance(appObjectRepository ?? new NullApplicationObjectRepository()) .Provides <IApplicationObjectsRepository>(); system.HasInstance(migrationRulesBuilder ?? new NullMigrationRulesBuilder()) .Provides <IMigrationRulesBuilder>(); system.HasInstance(new NullLogger()) .Provides <ILogger>(); if (pluginsBuilder != null) { system = system.CreateSubsystem(pluginsBuilder); } }
public void AddRules(IMigrationRulesBuilder migrationRulesBuilder) { IMigrationRules migrationRules = new MigrationRules(this, fromVersion, logger); migrationRulesBuilder.Build(migrationRules); }
public NXmlWriter(IDocumentWriter document, IApplicationObjectsRepository appObjectRepository, IMigrationRulesBuilder migrationRulesBuilder) : this(document, appObjectRepository, migrationRulesBuilder, null) { }
public MigrationDefinitionFactory(Version payloadVersion, IMigrationRulesBuilder rulesBuilder, ILogger logger) { this.payloadVersion = payloadVersion; this.rulesBuilder = rulesBuilder; this.logger = logger; }
public MigrationDefinitionFactory(MetaData metaData, IMigrationRulesBuilder rulesBuilder, ILogger logger) : this(metaData.PayloadVersion, rulesBuilder, logger) { }
public MigrationDefinitionFactory(Version payloadVersion, IMigrationRulesBuilder rulesBuilder, ILogger logger) { this.payloadVersion = payloadVersion; this.rulesBuilder = rulesBuilder; this.logger = logger; }
public MigrationDefinitionFactory(MetaData metaData, IMigrationRulesBuilder rulesBuilder, ILogger logger) : this(metaData.PayloadVersion, rulesBuilder, logger) { }
public NXmlWriter(IDocumentWriter document, IApplicationObjectsRepository appObjectRepository, IMigrationRulesBuilder migrationRulesBuilder) : this(document, appObjectRepository, migrationRulesBuilder, null) { }