private DomainModelInfo CreateMetaModelModelInfo() { DomainModelInfo retval = new DomainModelInfo() { ModelInstance = new Bax.MetaDomainModel.Factory.Repository.BootstrapMetaDomainModel() }; return retval; }
private DomainModelInfo GetSoccerLeagueDomainModelInfo() { DomainModelInfo retval = new DomainModelInfo() { ModelTypeUri = c.FactoryAssets.DataLayer.ModelTypeUri, ModelUri = @"C:\Tree2Soft.Factory\Factories\Bax.DataLayer.Factory\data\datalayers\soccerleague.datalayer" }; return retval; }
public DomainModelLibraryProduction(DomainModelInfo domainModelInfo) { ProjectName = "{project}"; ProjectNamespace = "{project}"; ProjectOutputPath = @"{baseuri}\{solution}\{project}"; TargetLanguage = Tree2Soft.Factory.Contracts.NameTable.TargetLanguage.CSharp; TargetDataProvider = Tree2Soft.Factory.Contracts.NameTable.TargetDataProvider.SqlServer; TransformationInfo t1 = new TransformationInfo { TransformerName = c.FactoryAssets.Transformer.ModelLibrary, ModelInfo = domainModelInfo, GroupResultPathTemplate = @"{ProjectOutputPath}\Model\{domainmodelname}Model.g.cs", ItemResultPathTemplate = null, ResultNamespaceTemplate = "{ProjectNamespace}.Model" }; TransformationInfo t2 = new TransformationInfo { TransformerName = c.FactoryAssets.Transformer.ModelSchemaXsd, ModelInfo = domainModelInfo, GroupResultPathTemplate = @"{ProjectOutputPath}\Model\{domainmodelname}Schema.g.xsd", ItemResultPathTemplate = null, ResultNamespaceTemplate = null }; TransformationInfo t3 = new TransformationInfo { TransformerName = c.FactoryAssets.Transformer.ModelSchemaLoader, ModelInfo = domainModelInfo, GroupResultPathTemplate = @"{ProjectOutputPath}\Model\{domainmodelname}Schema.g.cs", ItemResultPathTemplate = null, ResultNamespaceTemplate = "{ProjectNamespace}.Model" }; TransformationInfo t4 = new TransformationInfo { TransformerName = c.FactoryAssets.Transformer.ModelProvider, ModelInfo = domainModelInfo, GroupResultPathTemplate = @"{ProjectOutputPath}\Model\{domainmodelname}Provider.g.cs", ItemResultPathTemplate = null, ResultNamespaceTemplate = "{ProjectNamespace}.Model" }; TransformationInfo t5 = new TransformationInfo { TransformerName = c.FactoryAssets.Transformer.FactoryAssets, ModelInfo = domainModelInfo, GroupResultPathTemplate = @"{ProjectOutputPath}\Contracts\{domainmodelname}Assets.g.cs", ItemResultPathTemplate = null, ResultNamespaceTemplate = "{ProjectNamespace}.Contracts" }; Transformations.Add(t1); Transformations.Add(t2); Transformations.Add(t3); Transformations.Add(t4); Transformations.Add(t5); }
public DataModelLibraryProduction(DomainModelInfo domainModelInfo) { ProjectName = "{projectname}"; ProjectNamespace = "{project}"; ProjectOutputPath = @"{baseuri}\{solution}\{project}"; TargetLanguage = Tree2Soft.Factory.Contracts.NameTable.TargetLanguage.CSharp; TargetDataProvider = Tree2Soft.Factory.Contracts.NameTable.TargetDataProvider.SqlServer; TransformationInfo t1 = new TransformationInfo { TransformerName = c.FactoryAssets.Transformer.DataModelLibrary, ModelInfo = domainModelInfo, GroupResultPathTemplate = @"{ProjectOutputPath}\Src\Models\{ProjectName}.cs", ItemResultPathTemplate = null, ResultNamespaceTemplate = "{ProjectName}.Model" }; Transformations.Add(t1); }
/// <summary> /// Retrieve an <see cref="IDomainModel"/> instance using a <see cref="DomainModelInfo"/> /// to create it. /// </summary> /// <param name="modelInfo"></param> /// <returns></returns> private IDomainModel RetrieveModel(DomainModelInfo modelInfo) { IDomainModel retval = null; if (!string.IsNullOrEmpty(modelInfo.ModelKey)) { retval = _productionContext.GetModel(modelInfo.ModelKey) as IDomainModel; } else if (!string.IsNullOrEmpty(modelInfo.ModelUri)) { IDomainModelProvider provider = FactoryHost.Instance.GetModelProvider(modelInfo.ModelTypeUri); if (provider == null) throw new FactoryException("Cannot find model provider for model type '" + modelInfo.ModelTypeUri + "'"); retval = provider.GetModel(modelInfo.ModelUri); } else if (modelInfo.ModelInstance != null) { retval = modelInfo.ModelInstance; } return retval; }