diff --git a/uml4net.Extensions/MultiplicityElementExtensions.cs b/uml4net.Extensions/MultiplicityElementExtensions.cs new file mode 100644 index 00000000..8a743551 --- /dev/null +++ b/uml4net.Extensions/MultiplicityElementExtensions.cs @@ -0,0 +1,77 @@ +// ------------------------------------------------------------------------------------------------- +// +// +// Copyright 2019-2024 Starion Group S.A. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, softwareUseCases +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// +// ------------------------------------------------------------------------------------------------ + +namespace uml4net.Extensions +{ + using System; + + using uml4net.POCO.CommonStructure; + using uml4net.POCO.Values; + + /// + /// Extension methods for interface + /// + public static class MultiplicityElementExtensions + { + /// + /// Queries the upper value of the + /// + /// + /// The for which the lower value is queried + /// + /// + /// an integer + /// + public static string QueryUpperValue(this IMultiplicityElement multiplicityElement) + { + switch (multiplicityElement.UpperValue) + { + case null: + return "1"; + + case ILiteralInteger literalInteger: + + return literalInteger.Value.ToString(); + + case ILiteralUnlimitedNatural unlimitedNatural: + + if (!unlimitedNatural.Value.HasValue) + { + return "0"; + } + else + { + if (unlimitedNatural.Value == int.MaxValue) + { + return "*"; + } + else + { + return unlimitedNatural.Value.ToString(); + } + } + + default: + throw new NotSupportedException(""); + } + + } + } +} \ No newline at end of file diff --git a/uml4net.Extensions/PropertyExtensions.cs b/uml4net.Extensions/PropertyExtensions.cs index 24a88b96..4579877e 100644 --- a/uml4net.Extensions/PropertyExtensions.cs +++ b/uml4net.Extensions/PropertyExtensions.cs @@ -43,7 +43,21 @@ public static class PropertyExtensions /// public static bool QueryIsEnum(this IProperty property) { - return property.DataType is IEnumeration; + return property.Type is IEnumeration; + } + + /// + /// Queries whether the type of the is an + /// + /// + /// The subject + /// + /// + /// true of the type is a , false if not + /// + public static bool QueryIsPrimitiveType(this IProperty property) + { + return property.Type is IPrimitiveType; } /// @@ -140,9 +154,27 @@ public static string QueryTypeName(this IProperty property) /// /// A /// + /// + /// The and are concrete subtypes of the + /// concrete type + /// public static bool QueryIsValueProperty(this IProperty property) { - return property.Type is IPrimitiveType or IEnumeration; + return property.Type is IDataType; + } + + /// + /// Queries a value indicating whether the specified is a reference type + /// + /// + /// The subject + /// + /// + /// A + /// + public static bool QueryIsReferenceProperty(this IProperty property) + { + return property.Type is not IDataType; } /// diff --git a/uml4net.Reporting.Tests/Generators/ModelInspectorTestFixture.cs b/uml4net.Reporting.Tests/Generators/ModelInspectorTestFixture.cs index 43877b78..81ec9e06 100644 --- a/uml4net.Reporting.Tests/Generators/ModelInspectorTestFixture.cs +++ b/uml4net.Reporting.Tests/Generators/ModelInspectorTestFixture.cs @@ -20,17 +20,30 @@ namespace uml4net.Reporting.Tests.Generators { + using System; + using System.IO; + using System.Linq; using Microsoft.Extensions.Logging; using NUnit.Framework; - + using POCO.Packages; + using Reporting.Generators; using Serilog; + using xmi; [TestFixture] public class ModelInspectorTestFixture { private ILoggerFactory loggerFactory; + private ModelInspector modelInspector; + + private string modelPath; + + private FileInfo modelFileInfo; + + private FileInfo reportFileInfo; + [OneTimeSetUp] public void OneTimeSetUp() { @@ -44,5 +57,71 @@ public void OneTimeSetUp() builder.AddSerilog(); }); } + + [SetUp] + public void SetUp() + { + this.modelPath = Path.Combine(TestContext.CurrentContext.TestDirectory, "TestData", "UML.xmi"); + this.modelFileInfo = new FileInfo(modelPath); + + var reportPath = Path.Combine(TestContext.CurrentContext.TestDirectory, "inspection-report.txt"); + this.reportFileInfo = new FileInfo(reportPath); + } + + [Test] + public void Verify_that_Inspection_report_can_be_executed() + { + var rootPath = Path.Combine(TestContext.CurrentContext.TestDirectory, "TestData"); + + var reader = XmiReaderBuilder.Create() + .UsingSettings(x => x.LocalReferenceBasePath = rootPath) + .WithLogger(this.loggerFactory) + .Build(); + + var packages = reader.Read(Path.Combine(rootPath, "UML.xmi")); + + var rootPackage = packages.Single(); + + this.modelInspector = new ModelInspector(this.loggerFactory); + + var report = this.modelInspector.Inspect(rootPackage, true); + + Log.Logger.Information(report); + + Assert.That(report, Is.Not.Null.Or.Empty); + } + + [Test] + public void Verify_that_Inspection_report_can_be_generated() + { + this.modelInspector = new ModelInspector(this.loggerFactory); + + Assert.That(() => this.modelInspector.GenerateReport(this.modelFileInfo, this.reportFileInfo), Throws.Nothing); + } + + [Test] + public void Verify_that_inspect_class_returns_expected_result() + { + var rootPath = Path.Combine(TestContext.CurrentContext.TestDirectory, "TestData"); + + var reader = XmiReaderBuilder.Create() + .UsingSettings(x => x.LocalReferenceBasePath = rootPath) + .WithLogger(this.loggerFactory) + .Build(); + + var packages = reader.Read(Path.Combine(rootPath, "UML.xmi")); + + var rootPackage = packages.Single(); + + var classificationPackage = rootPackage.PackagedElement.OfType().Single(x => x.Name == "Classification") ; + + this.modelInspector = new ModelInspector(this.loggerFactory); + + var inspectionReport = this.modelInspector.Inspect(classificationPackage, "Property"); + + Assert.That(inspectionReport, Is.Not.Empty); + + Log.Logger.Information(inspectionReport); + } } } \ No newline at end of file diff --git a/uml4net.Reporting.Tests/uml4net.Reporting.Tests.csproj b/uml4net.Reporting.Tests/uml4net.Reporting.Tests.csproj index 298a9571..4006e6fd 100644 --- a/uml4net.Reporting.Tests/uml4net.Reporting.Tests.csproj +++ b/uml4net.Reporting.Tests/uml4net.Reporting.Tests.csproj @@ -38,4 +38,16 @@ + + + Always + + + Always + + + Always + + + diff --git a/uml4net.Reporting/Generators/HtmlReportGenerator.cs b/uml4net.Reporting/Generators/HtmlReportGenerator.cs index 13306a8b..d2a996ad 100644 --- a/uml4net.Reporting/Generators/HtmlReportGenerator.cs +++ b/uml4net.Reporting/Generators/HtmlReportGenerator.cs @@ -63,7 +63,7 @@ public string QueryReportType() /// Generates a table that contains all classes, attributes and their documentation /// /// - /// /// the path to the Ecore model of which the report is to be generated. + /// /// the path to the UML model of which the report is to be generated. /// /// /// the content of an HTML report in a string @@ -77,7 +77,7 @@ public string GenerateReport(FileInfo modelPath) /// Generates a table that contains all classes, attributes and their documentation /// /// - /// the path to the Ecore model of which the report is to be generated. + /// the path to the UML model of which the report is to be generated. /// /// /// the path, including filename, where the output is to be generated. diff --git a/uml4net.Reporting/Generators/IHtmlReportGenerator.cs b/uml4net.Reporting/Generators/IHtmlReportGenerator.cs index a44e7537..2624bb4b 100644 --- a/uml4net.Reporting/Generators/IHtmlReportGenerator.cs +++ b/uml4net.Reporting/Generators/IHtmlReportGenerator.cs @@ -24,7 +24,7 @@ namespace uml4net.Reporting.Generators /// /// The purpose of the is to generate an HTML report of an - /// Ecore Model + /// UML Model /// public interface IHtmlReportGenerator : IReportGenerator { @@ -32,7 +32,7 @@ public interface IHtmlReportGenerator : IReportGenerator /// Generates a table that contains all classes, attributes and their documentation /// /// - /// /// the path to the Ecore model of which the report is to be generated. + /// /// the path to the UML model of which the report is to be generated. /// /// /// the content of an HTML report in a string diff --git a/uml4net.Reporting/Generators/IMarkdownReportGenerator.cs b/uml4net.Reporting/Generators/IMarkdownReportGenerator.cs index 2b5584f4..2804ed94 100644 --- a/uml4net.Reporting/Generators/IMarkdownReportGenerator.cs +++ b/uml4net.Reporting/Generators/IMarkdownReportGenerator.cs @@ -24,7 +24,7 @@ namespace uml4net.Reporting.Generators /// /// The purpose of the is to generate a Markdown report of an - /// Ecore Model + /// UML Model /// public interface IMarkdownReportGenerator : IReportGenerator { @@ -32,7 +32,7 @@ public interface IMarkdownReportGenerator : IReportGenerator /// Generates a Markdown document with a table that contains all classes, attributes and their documentation /// /// - /// the path to the Ecore model of which the report is to be generated. + /// the path to the UML model of which the report is to be generated. /// /// /// the content of a Markdown report in a string diff --git a/uml4net.Reporting/Generators/IModelInspector.cs b/uml4net.Reporting/Generators/IModelInspector.cs index 7d4c6caf..516e3574 100644 --- a/uml4net.Reporting/Generators/IModelInspector.cs +++ b/uml4net.Reporting/Generators/IModelInspector.cs @@ -24,7 +24,7 @@ namespace uml4net.Reporting.Generators /// /// The purpose of the is to iterate through the model and report on the various kinds of - /// patters that exist in the ECore model that need to be taken into account for code-generation + /// patters that exist in the UML model that need to be taken into account for code-generation /// public interface IModelInspector : IReportGenerator { @@ -67,7 +67,7 @@ public interface IModelInspector : IReportGenerator /// The which needs to be inspected /// /// - /// A value indicating whether the sub s need to be Analyzed as well + /// A value indicating whether the sub s need to be Analyzed as well /// /// /// returns a report of the classes and properties that do not contain any documentation diff --git a/uml4net.Reporting/Generators/IReportGenerator.cs b/uml4net.Reporting/Generators/IReportGenerator.cs index b3383051..7920c6ac 100644 --- a/uml4net.Reporting/Generators/IReportGenerator.cs +++ b/uml4net.Reporting/Generators/IReportGenerator.cs @@ -25,7 +25,7 @@ namespace uml4net.Reporting.Generators /// /// The purpose of the is to generate a report of an - /// Ecore Model + /// UML Model /// public interface IReportGenerator { @@ -33,7 +33,7 @@ public interface IReportGenerator /// Generates a report that contains all classes, attributes and their documentation /// /// - /// the path to the Ecore model of which the report is to be generated. + /// the path to the UML model of which the report is to be generated. /// /// /// the path, including filename, where the output is to be generated. diff --git a/uml4net.Reporting/Generators/IXlReportGenerator.cs b/uml4net.Reporting/Generators/IXlReportGenerator.cs index 0d801e0b..7173e480 100644 --- a/uml4net.Reporting/Generators/IXlReportGenerator.cs +++ b/uml4net.Reporting/Generators/IXlReportGenerator.cs @@ -22,7 +22,7 @@ namespace uml4net.Reporting.Generators { /// /// The purpose of the is to generate reports of an - /// Ecore Model + /// UML Model /// public interface IXlReportGenerator : IReportGenerator { diff --git a/uml4net.Reporting/Generators/MarkdownReportGenerator.cs b/uml4net.Reporting/Generators/MarkdownReportGenerator.cs index 253bd646..ae9f949d 100644 --- a/uml4net.Reporting/Generators/MarkdownReportGenerator.cs +++ b/uml4net.Reporting/Generators/MarkdownReportGenerator.cs @@ -29,7 +29,7 @@ namespace uml4net.Reporting.Generators /// /// The purpose of the is to generate a Markdown report of an - /// Ecore Model + /// UML Model /// public class MarkdownReportGenerator : HandleBarsReportGenerator, IMarkdownReportGenerator { @@ -64,7 +64,7 @@ public string QueryReportType() /// Generates a table that contains all classes, attributes and their documentation /// /// - /// /// the path to the Ecore model of which the report is to be generated. + /// /// the path to the UML model of which the report is to be generated. /// /// /// the content of an HTML report in a string @@ -78,7 +78,7 @@ public string GenerateReport(FileInfo modelPath) /// Generates a Markdown document with a table that contains all classes, attributes and their documentation /// /// - /// the path to the Ecore model of which the report is to be generated. + /// the path to the UML model of which the report is to be generated. /// /// /// the path, including filename, where the output is to be generated. diff --git a/uml4net.Reporting/Generators/ModelInspector.cs b/uml4net.Reporting/Generators/ModelInspector.cs index a773a5e6..cce82d64 100644 --- a/uml4net.Reporting/Generators/ModelInspector.cs +++ b/uml4net.Reporting/Generators/ModelInspector.cs @@ -26,16 +26,19 @@ namespace uml4net.Reporting.Generators using System.IO; using System.Linq; using System.Text; - using Extensions; + using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; + using uml4net.Extend; + using uml4net.Extensions; + using uml4net.POCO.Classification; using uml4net.POCO.Packages; using uml4net.POCO.StructuredClassifiers; - + /// /// The purpose of the is to iterate through the model and report on the various kinds of - /// patters that exist in the ECore model that need to be taken into account for code-generation + /// patters that exist in the UML model that need to be taken into account for code-generation /// public class ModelInspector : ReportGenerator, IModelInspector { @@ -50,7 +53,7 @@ public class ModelInspector : ReportGenerator, IModelInspector private readonly List valueTypes = new(); - private readonly List enums = new(); + private readonly List enumerations = new(); /// /// Initializes a new instance of the class. @@ -76,7 +79,7 @@ public string QueryReportType() /// /// Inspect the content of the provided and returns the variation - /// of data-types, enums and multiplicity as an Analysis report + /// of data-types, enumerations and multiplicity as an Analysis report /// /// /// The that needs to be inspected @@ -89,7 +92,12 @@ public string QueryReportType() /// public string Inspect(IPackage package, bool recursive = false) { - this.logger.LogInformation("Start UML Model Inspection at IPackage {0}:{1}", package.XmiId, package.Name); + this.logger.LogInformation("Start UML Model Inspection at Package {0}:{1}", package.XmiId, package.Name); + + this.interestingClasses.Clear(); + this.referenceTypes.Clear(); + this.valueTypes.Clear(); + this.enumerations.Clear(); var sw = Stopwatch.StartNew(); @@ -113,13 +121,13 @@ public string Inspect(IPackage package, bool recursive = false) sb.AppendLine($"reference type: {referenceType}"); } - this.logger.LogInformation("MULTIPLICITY RESULTS - Inspecting the Enums"); + this.logger.LogInformation("MULTIPLICITY RESULTS - Inspecting the Enumerations"); - var orderedEnums = this.enums.OrderBy(x => x); + var orderedEnumerations = this.enumerations.OrderBy(x => x); - foreach (var @enum in orderedEnums) + foreach (var enumeration in orderedEnumerations) { - sb.AppendLine($"enum type: {@enum}"); + sb.AppendLine($"enumeration type: {enumeration}"); } this.logger.LogInformation("MULTIPLICITY RESULTS - Inspecting the Value Types"); @@ -144,86 +152,85 @@ public string Inspect(IPackage package, bool recursive = false) sb.AppendLine(""); - this.logger.LogInformation("ECore Model Inspection of EPackage {0}:{1} finished in {2} [ms]", package.XmiId, package.Name, sw.ElapsedMilliseconds); + this.logger.LogInformation("UML Model Inspection of Package {0}:{1} finished in {2} [ms]", package.XmiId, package.Name, sw.ElapsedMilliseconds); return sb.ToString(); } /// - /// Recursively inspects the content of the provided + /// Recursively inspects the content of the provided /// and adds the reported results to the provided /// /// - /// The which needs to be inspected + /// The which needs to be inspected /// /// /// The to which the results of hte inspection are reported /// /// - /// A value indicating whether the sub s need to be inspected as well + /// A value indicating whether the sub s need to be inspected as well /// private void Inspect(IPackage package, StringBuilder sb, bool recursive) { - this.logger.LogInformation("Inspecting the contents of EPackage {0}:{1}", package.XmiId, package.Name); + this.logger.LogInformation("Inspecting the contents of Package {0}:{1}", package.XmiId, package.Name); - foreach (var eClass in package.OwnedType.OfType().OrderBy(x => x.Name)) + foreach (var @class in package.PackagedElement.OfType().OrderBy(x => x.Name)) { - //this.logger.LogTrace("Inspecting EClass {0}:{1}", eClass.Identifier, eClass.Name); + this.logger.LogTrace("Inspecting Class {0}:{1}", @class.XmiId, @class.Name); - foreach (var property in eClass.OwnedAttribute) + foreach (var property in @class.OwnedAttribute) { if (property.IsDerived) { continue; } - //if (property is EReference reference) - //{ - // var referenceType = reference.IsContainment ? $"{reference.LowerBound}:{reference.UpperBound}:containment" : $"{reference.LowerBound}:{reference.UpperBound}"; - - // if (!this.referenceTypes.Contains(referenceType)) - // { - // this.logger.LogTrace("Inspecting reference type {0}", referenceType); - - // this.referenceTypes.Add(referenceType); - // this.interestingClasses.Add(eClass); - - // sb.AppendLine($"{package.Name}.{eClass.Name} -- REF {referenceType}"); - // } - //} - - //if (structuralFeature is EAttribute attribute) - //{ - // if (structuralFeature.QueryIsEnum()) - // { - // var @enum = $"{attribute.LowerBound}:{attribute.UpperBound}"; - - // this.logger.LogTrace("Inspecting enum attribute {0}", @enum); - - // if (!this.enums.Contains(@enum)) - // { - // this.enums.Add(@enum); - // this.interestingClasses.Add(eClass); - - // sb.AppendLine($"{eClass.Name} -- ENUM {@enum}"); - // } + if (property.QueryIsReferenceProperty()) + { + var referenceType = property.QueryIsContainment() ? $"{property.Lower}:{property.QueryUpperValue()}:containment" : $"{property.Lower}:{property.QueryUpperValue()}"; - // } - // else - // { - // var valueType = $"{attribute.EType.Name}:{attribute.LowerBound}:{attribute.UpperBound}"; + if (!this.referenceTypes.Contains(referenceType)) + { + this.logger.LogTrace("Inspecting reference type {0}", referenceType); - // if (!this.valueTypes.Contains(valueType)) - // { - // this.logger.LogTrace("Inspecting value attribute {0}", valueType); + this.referenceTypes.Add(referenceType); + this.interestingClasses.Add(@class); - // this.valueTypes.Add(valueType); - // this.interestingClasses.Add(eClass); + sb.AppendLine($"{package.Name}.{@class.Name} -- REF {referenceType}"); + } + } - // sb.AppendLine($"{eClass.Name} -- VAL {valueType}"); - // } - // } - //} + if (property.QueryIsValueProperty()) + { + if (property.QueryIsEnum()) + { + var enumeration = $"{property.Lower}:{property.QueryUpperValue()}"; + + this.logger.LogTrace("Inspecting Enumeration property {0}", enumeration); + + if (!this.enumerations.Contains(enumeration)) + { + this.enumerations.Add(enumeration); + this.interestingClasses.Add(@class); + + sb.AppendLine($"{@class.Name} -- ENUM {enumeration}"); + } + } + else + { + var valueType = $"{property.QueryTypeName()}:{property.Lower}:{ property.QueryUpperValue()}"; + + if (!this.valueTypes.Contains(valueType)) + { + this.logger.LogTrace("Inspecting value property {0}", valueType); + + this.valueTypes.Add(valueType); + this.interestingClasses.Add(@class); + + sb.AppendLine($"{@class.Name} -- VAL {valueType}"); + } + } + } } } @@ -237,11 +244,11 @@ private void Inspect(IPackage package, StringBuilder sb, bool recursive) } /// - /// Inspect the provided (by name) that is contained in the - /// and returns the variation of data-types, enums and multiplicity as an Analysis report + /// Inspect the provided (by name) that is contained in the + /// and returns the variation of data-types, enumerations and multiplicity as an Analysis report /// /// - /// The that contains the that + /// The that contains the that /// is to be inspected /// /// @@ -252,82 +259,86 @@ private void Inspect(IPackage package, StringBuilder sb, bool recursive) /// public string Inspect(IPackage package, string className) { - this.logger.LogInformation("Start ECore named Class '{2}' Inspection at EPackage {0}:{1}", package.XmiId, package.Name, className); + this.logger.LogInformation("Start UML named Class '{2}' Inspection at Package {0}:{1}", package.XmiId, package.Name, className); var sw = Stopwatch.StartNew(); var sb = new StringBuilder(); - var eClass = package.OwnedType.OfType().Single(x => x.Name == className); + var @class = package.PackagedElement.OfType().Single(x => x.Name == className); - sb.AppendLine($"{package.Name}.{eClass.Name}:"); + sb.AppendLine($"{package.Name}.{@class.Name}:"); sb.AppendLine("----------------------------------"); - //foreach (var structuralFeature in eClass.AllEStructuralFeaturesOrderByName) - //{ - // if (structuralFeature.Derived || structuralFeature.Transient) - // { - // continue; - // } - - // //if (structuralFeature is EReference reference) - // //{ - // // string referenceType; - // // if (reference.IsContainment) - // // { - // // referenceType = $"{reference.Name}:{reference.EType.Name} [{reference.LowerBound}..{reference.UpperBound}] - CONTAINED REFERENCE TYPE"; - // // } - // // else - // // { - // // referenceType = $"{reference.Name}:{reference.EType.Name} [{reference.LowerBound}..{reference.UpperBound}] - REFERENCE TYPE"; - // // } - - // // sb.AppendLine(referenceType); - // //} - - // //if (structuralFeature is EAttribute attribute) - // //{ - // // if (structuralFeature.QueryIsEnum()) - // // { - // // var @enum = $"{attribute.Name}:{attribute.EType.Name} [{attribute.LowerBound}..{attribute.UpperBound}] - ENUM TYPE"; - // // sb.AppendLine(@enum); - // // } - // // else - // // { - // // var valueType = $"{attribute.Name}:{attribute.EType.Name} [{attribute.LowerBound}..{attribute.UpperBound}] - VALUETYPE"; - // // sb.AppendLine(valueType); - // // } - // //} - //} + foreach (var property in @class.OwnedAttribute.OrderBy(x => x.Name)) + { + if (property.IsDerived) + { + continue; + } + + if (property.QueryIsReferenceProperty()) + { + string referenceType; + + if (property.QueryIsContainment()) + { + referenceType = $"{property.Name}:{property.QueryTypeName()} [{property.Lower}..{property.QueryUpperValue()}] - CONTAINED REFERENCE TYPE"; + } + else + { + referenceType = $"{property.Name}:{property.QueryTypeName()} [{property.Lower}..{property.QueryUpperValue()}] - REFERENCE TYPE"; + } + + sb.AppendLine(referenceType); + } + + if (property.QueryIsValueProperty()) + { + this.logger.LogInformation(property.Name); + + if (property.QueryIsEnum()) + { + var enumeration = $"{property.Name}:{property.QueryTypeName()} [{property.Lower}..{property.QueryUpperValue()}] - ENUM TYPE"; + sb.AppendLine(enumeration); + } + else + { + var valueType = $"{property.Name}:{property.QueryTypeName()} [{property.Lower}..{property.QueryUpperValue()}] - VALUETYPE"; + sb.AppendLine(valueType); + } + } + } sb.AppendLine("-DERIVED--------------------------"); - //foreach (var structuralFeature in eClass.AllEStructuralFeaturesOrderByName) - //{ - // if (structuralFeature.Derived) - // { - // //if (structuralFeature is EReference reference) - // //{ - // // var referenceType = $"{reference.Name}:{reference.EType.Name} [{reference.LowerBound}..{reference.UpperBound}] - REFERENCE TYPE"; - // // sb.AppendLine(referenceType); - // //} - - // //if (structuralFeature is EAttribute attribute) - // //{ - // // if (structuralFeature.QueryIsEnum()) - // // { - // // var @enum = $"{attribute.Name}:{attribute.EType.Name} [{attribute.LowerBound}..{attribute.UpperBound}] - ENUM TYPE"; - // // sb.AppendLine(@enum); - // // } - // // else - // // { - // // var valueType = $"{attribute.Name}:{attribute.EType.Name} [{attribute.LowerBound}..{attribute.UpperBound}] - VALUETYPE"; - // // sb.AppendLine(valueType); - // // } - // //} - // } - //} - - this.logger.LogInformation("ECore named Class '{2}' Inspection at EPackage {0}:{1} finished in {3} [ms]", package.XmiId, package.Name, className, sw.ElapsedMilliseconds); + foreach (var property in @class.OwnedAttribute.OrderBy(x => x.Name)) + { + if (property.IsDerived) + { + + if (property.QueryIsReferenceProperty()) + { + var referenceType = $"{property.Name}:{property.QueryTypeName()} [{property.Lower}..{property.QueryUpperValue()}] - REFERENCE TYPE"; + sb.AppendLine(referenceType); + } + + if (property.QueryIsValueProperty()) + { + if (property.QueryIsEnum()) + { + var enumeration = $"{property.Name}:{property.QueryTypeName()} [{property.Lower}..{property.QueryUpperValue()}] - ENUM TYPE"; + sb.AppendLine(enumeration); + } + else + { + var valueType = $"{property.Name} : {property.QueryTypeName()} [{property.Lower} .. {property.QueryUpperValue()}] - VALUETYPE"; + sb.AppendLine(valueType); + } + } + } + } + + this.logger.LogInformation("UML named Class '{2}' Inspection at Package {0}:{1} finished in {3} [ms]", package.XmiId, package.Name, className, sw.ElapsedMilliseconds); return sb.ToString(); } @@ -347,7 +358,7 @@ public string Inspect(IPackage package, string className) /// public string AnalyzeDocumentation(IPackage package, bool recursive = false) { - this.logger.LogInformation("Start inspection of EPackage documentation {0}:{1}", package.XmiId, package.Name); + this.logger.LogInformation("Start inspection of Package documentation {0}:{1}", package.XmiId, package.Name); var sw = Stopwatch.StartNew(); @@ -360,7 +371,7 @@ public string AnalyzeDocumentation(IPackage package, bool recursive = false) sb.AppendLine(""); - this.logger.LogInformation("Inspection of EPackage documentation {0}:{1} finished in {3} [ms]", package.XmiId, package.Name, sw.ElapsedMilliseconds); + this.logger.LogInformation("Inspection of Package documentation {0}:{1} finished in {3} [ms]", package.XmiId, package.Name, sw.ElapsedMilliseconds); return sb.ToString(); } @@ -370,31 +381,34 @@ public string AnalyzeDocumentation(IPackage package, bool recursive = false) /// /// /// - /// The which needs to be inspected + /// The which needs to be inspected + /// + /// + /// The to which the analysis results are written /// /// - /// A value indicating whether the sub s need to be Analyzed as well + /// A value indicating whether the sub s need to be Analyzed as well /// private void AnalyzeDocumentation(IPackage package, StringBuilder sb, bool recursive = false) { - sb.AppendLine($"Package.Class:Feature"); + sb.AppendLine("Package.Class:Property"); sb.AppendLine(); - //foreach (var eClass in package.EClassifiers.OfType().OrderBy(x => x.Name)) - //{ - // if (string.IsNullOrEmpty(eClass.QueryRawDocumentation())) - // { - // sb.AppendLine($"{package.Name}.{eClass.Name}"); - // } - - // foreach (var eStructuralFeature in eClass.EStructuralFeaturesOrderByName) - // { - // if (string.IsNullOrEmpty(eStructuralFeature.QueryRawDocumentation())) - // { - // sb.AppendLine($"{package.Name}.{eClass.Name}:{eStructuralFeature.Name}"); - // } - // } - //} + foreach (var @class in package.PackagedElement.OfType().OrderBy(x => x.Name)) + { + if (string.IsNullOrEmpty(@class.QueryRawDocumentation())) + { + sb.AppendLine($"{package.Name}.{@class.Name}"); + } + + foreach (var property in @class.OwnedAttribute.OrderBy(x => x.Name)) + { + if (string.IsNullOrEmpty(property.QueryRawDocumentation())) + { + sb.AppendLine($"{package.Name}.{@class.Name}:{property.Name}"); + } + } + } if (recursive) { @@ -430,7 +444,7 @@ public override Tuple IsValidReportExtension(FileInfo outputPath) /// Generates a table that contains all classes, attributes and their documentation /// /// - /// the path to the Ecore model of which the report is to be generated. + /// the path to the UML model of which the report is to be generated. /// /// /// the path, including filename, where the output is to be generated. @@ -451,14 +465,16 @@ public void GenerateReport(FileInfo modelPath, FileInfo outputPath) this.logger.LogInformation("Start Generating Inspection Report"); - //var rootPackage = this.LoadRootPackage(modelPath); - IPackage rootPackage = null; - + var packages = this.LoadPackages(modelPath, modelPath.Directory); + var result = new StringBuilder(); - result.Append(this.ReportHeader()); - result.Append(this.Inspect(rootPackage, true)); - result.Append(this.AnalyzeDocumentation(rootPackage, true)); + foreach (var package in packages) + { + result.Append(this.ReportHeader()); + result.Append(this.Inspect(package, true)); + result.Append(this.AnalyzeDocumentation(package, true)); + } if (outputPath.Exists) { @@ -484,9 +500,9 @@ private string ReportHeader() var header = new StringBuilder(); header.AppendLine("The purpose of this report is to provide an overview of the"); - header.AppendLine("contents of an ECore model."); + header.AppendLine("contents of a UML model."); header.AppendLine(""); - header.AppendLine("1. This report shows the variation of value-types reference-types"); + header.AppendLine("1. This report shows the variation of value-types, reference-types"); header.AppendLine(" and enumerations"); header.AppendLine("2. The report provides an overview of the variation of"); header.AppendLine(" used multiplicities. "); diff --git a/uml4net.Reporting/Generators/ReportGenerator.cs b/uml4net.Reporting/Generators/ReportGenerator.cs index 3e1ef889..5f0807b5 100644 --- a/uml4net.Reporting/Generators/ReportGenerator.cs +++ b/uml4net.Reporting/Generators/ReportGenerator.cs @@ -26,8 +26,10 @@ namespace uml4net.Reporting.Generators using Microsoft.Extensions.Logging.Abstractions; using System; - using System.Resources; - using POCO.Packages; + using System.Collections.Generic; + + using uml4net.POCO.Packages; + using uml4net.xmi; /// /// abstract class from which all report generators need to derive @@ -68,5 +70,31 @@ protected ReportGenerator(ILoggerFactory loggerFactory = null) /// Either stating that the extension is valid or not. /// public abstract Tuple IsValidReportExtension(FileInfo outputPath); + + /// + /// Loads the root UML package from the provided model + /// + /// + /// the path to the Uml model that is to be loaded + /// + /// + /// The base directory path used as the local root for resolving referenced XMI files. + /// + /// + /// a list of s + /// + protected IEnumerable LoadPackages(FileInfo modelPath, DirectoryInfo rootDirectory) + { + this.logger.LogInformation("Loading UML model from {0}", modelPath.FullName); + + using var reader = XmiReaderBuilder.Create() + .UsingSettings(x => x.LocalReferenceBasePath = rootDirectory.FullName) + .WithLogger(this.loggerFactory) + .Build(); + + var packages = reader.Read(modelPath.FullName); + + return packages; + } } } \ No newline at end of file diff --git a/uml4net.Reporting/Generators/XlReportGenerator.cs b/uml4net.Reporting/Generators/XlReportGenerator.cs index 18f95d3a..f270647a 100644 --- a/uml4net.Reporting/Generators/XlReportGenerator.cs +++ b/uml4net.Reporting/Generators/XlReportGenerator.cs @@ -36,7 +36,7 @@ namespace uml4net.Reporting.Generators /// /// The purpose of the is to generate reports of an - /// Ecore Model + /// UML Model /// public class XlReportGenerator : ReportGenerator, IXlReportGenerator { @@ -71,7 +71,7 @@ public string QueryReportType() /// Generates a table that contains all classes, attributes and their documentation /// /// - /// the path to the Ecore model of which the report is to be generated. + /// the path to the UML model of which the report is to be generated. /// /// /// the path, including filename, where the output is to be generated. @@ -143,19 +143,19 @@ private void AddInfoSheet(XLWorkbook workbook, IPackage rootPackage) } /// - /// Adds a worksheet to the workbook with EClass data + /// Adds a worksheet to the workbook with Class data /// /// - /// The target to which the EClass worksheet is added + /// The target to which the Class worksheet is added /// /// - /// The s that contain the EClass instances to report on + /// The s that contain the Class instances to report on /// private void AddIClassSheet(XLWorkbook workbook, IEnumerable packages) { this.logger.LogDebug("Add IClass reports"); - var classWorksheet = workbook.Worksheets.Add("EClass"); + var classWorksheet = workbook.Worksheets.Add("Class"); var dataTable = new DataTable(); diff --git a/uml4net.Reporting/Payload/HandlebarsPayload.cs b/uml4net.Reporting/Payload/HandlebarsPayload.cs index fb80305c..a1ad7c9e 100644 --- a/uml4net.Reporting/Payload/HandlebarsPayload.cs +++ b/uml4net.Reporting/Payload/HandlebarsPayload.cs @@ -38,16 +38,16 @@ public class HandlebarsPayload /// initializes an instance of the class. /// /// - /// The root of the ECore model + /// The root of the UML model /// /// - /// the s in the ECore model + /// the s in the UML model /// /// - /// the s in the ECore model + /// the s in the UML model /// /// - /// the es in the ECore model + /// the es in the UML model /// public HandlebarsPayload(IPackage rootPackage, IEnumerable enums, IEnumerable dataTypes, IEnumerable classes) { diff --git a/uml4net.Reporting/uml4net.Reporting.csproj b/uml4net.Reporting/uml4net.Reporting.csproj index bad3b3b0..8d7a4371 100644 --- a/uml4net.Reporting/uml4net.Reporting.csproj +++ b/uml4net.Reporting/uml4net.Reporting.csproj @@ -38,6 +38,7 @@ + \ No newline at end of file diff --git a/uml4net.xmi.Tests/AssemblerTestFixture.cs b/uml4net.xmi.Tests/AssemblerTestFixture.cs index e42bb762..68ffe2bc 100644 --- a/uml4net.xmi.Tests/AssemblerTestFixture.cs +++ b/uml4net.xmi.Tests/AssemblerTestFixture.cs @@ -24,6 +24,8 @@ namespace uml4net.xmi.Tests using Microsoft.Extensions.Logging; using NUnit.Framework; using System; + using POCO.Classification; + using POCO.SimpleClassifiers; using uml4net.POCO.CommonStructure; using uml4net.POCO.StructuredClassifiers; using uml4net.POCO.Values; @@ -245,5 +247,30 @@ public void Synchronize_ShouldThrow_WhenElementNotIReferenceable() Assert.That(classElement.NameExpression, Is.Null); }); } + + [Test] + public void Synchronize_verify_that_type_is_set() + { + var property = new Property() + { + XmiId = "Property-aggregation", + Name = "aggregation" + }; + + property.SingleValueReferencePropertyIdentifiers.Add("type", "AggregationKind"); + + var enumeration = new Enumeration() + { + XmiId = "AggregationKind", + Name = "AggregationKind", + }; + + this.cache.Add(property.XmiId, property); + this.cache.Add(enumeration.XmiId, enumeration); + + this.assembler.Synchronize(); + + Assert.That(property.Type, Is.EqualTo(enumeration)); + } } } diff --git a/uml4net.xmi.Tests/UMLXmiReaderTestFixture.cs b/uml4net.xmi.Tests/UMLXmiReaderTestFixture.cs index 3266b0a6..5481c879 100644 --- a/uml4net.xmi.Tests/UMLXmiReaderTestFixture.cs +++ b/uml4net.xmi.Tests/UMLXmiReaderTestFixture.cs @@ -26,6 +26,7 @@ namespace uml4net.xmi.Tests using Microsoft.Extensions.Logging; using NUnit.Framework; + using uml4net.POCO.Values; using uml4net.POCO.Packages; using uml4net.POCO.SimpleClassifiers; @@ -139,6 +140,12 @@ public void Verify_that_UML_XMI_can_be_read() var classLowerValue = (ILiteralInteger)classOwnedAttribute.LowerValue; Assert.That(classLowerValue.Value, Is.EqualTo(0)); + + var classificationPackage = package.PackagedElement.OfType().Single(x => x.Name == "Classification"); + + var aggregationKind = classificationPackage.PackagedElement.OfType().Single(x => x.Name == "AggregationKind"); + + Assert.That(aggregationKind.XmiId, Is.EqualTo("AggregationKind")); } } } diff --git a/uml4net.xmireader/Cache/Assembler.cs b/uml4net.xmireader/Cache/Assembler.cs index 87ac0de1..498d71c2 100644 --- a/uml4net.xmireader/Cache/Assembler.cs +++ b/uml4net.xmireader/Cache/Assembler.cs @@ -126,9 +126,27 @@ public void ResolveReferences(IXmiElement element) /// true if the referenced element was successfully retrieved; otherwise, false. private bool TryGetReferencedElement(string referenceIdKey, out IXmiElement element) { - return this.cache.TryResolveContext(referenceIdKey, out var resolvedContextAndResource) - ? this.cache.TryGetValue(resolvedContextAndResource.Context, resolvedContextAndResource.ResourceId, out element) - : this.cache.Cache.TryGetValue(referenceIdKey, out element); + var isContextResolved = this.cache.TryResolveContext(referenceIdKey, out var resolvedContextAndResource); + + if (isContextResolved) + { + var isValueFound = this.cache.TryGetValue(resolvedContextAndResource.Context, resolvedContextAndResource.ResourceId, out element); + return isValueFound; + } + + foreach (var globalCacheKey in this.cache.GlobalCache.Keys) + { + var cache = this.cache.GlobalCache[globalCacheKey]; + var isFallbackFound = cache.TryGetValue(referenceIdKey, out element); + + if (isFallbackFound) + { + return true; + } + } + + element = null; + return false; } /// diff --git a/uml4net.xmireader/Readers/IXmiReader.cs b/uml4net.xmireader/Readers/IXmiReader.cs index fd76a8d3..a72a63b3 100644 --- a/uml4net.xmireader/Readers/IXmiReader.cs +++ b/uml4net.xmireader/Readers/IXmiReader.cs @@ -32,7 +32,7 @@ namespace uml4net.xmi.Readers public interface IXmiReader : IDisposable { /// - /// Reads the content of a UML XMI 2.5.1 file asynchronously. + /// Reads the content of a UML XMI 2.5.1 file /// /// /// The URI of the XMI file to be read. @@ -43,7 +43,7 @@ public interface IXmiReader : IDisposable IEnumerable Read(string fileUri); /// - /// Reads the content of a UML XMI 2.5.1 stream asynchronously. + /// Reads the content of a UML XMI 2.5.1 stream. /// /// /// The that contains the XMI content to be read. diff --git a/uml4net.xmireader/Readers/SimpleClassifiers/EnumerationReader.cs b/uml4net.xmireader/Readers/SimpleClassifiers/EnumerationReader.cs index f6bc41e4..b9cb4209 100644 --- a/uml4net.xmireader/Readers/SimpleClassifiers/EnumerationReader.cs +++ b/uml4net.xmireader/Readers/SimpleClassifiers/EnumerationReader.cs @@ -107,12 +107,10 @@ public override IEnumeration Read(XmlReader xmlReader) { var enumerationLiteral = this.EnumerationLiteralReader.Read(ownedLiteralXmlReader); enumeration.OwnedLiteral.Add(enumerationLiteral); - - this.Logger.LogInformation("ClassReader.ownedRule not yet implemented"); } break; default: - throw new NotImplementedException($"ClassReader: {xmlReader.LocalName}"); + throw new NotImplementedException($"EnumerationReader: {xmlReader.LocalName}"); } } } diff --git a/uml4net.xmireader/Readers/XmiElementReader.cs b/uml4net.xmireader/Readers/XmiElementReader.cs index 8664af56..fef9c33f 100644 --- a/uml4net.xmireader/Readers/XmiElementReader.cs +++ b/uml4net.xmireader/Readers/XmiElementReader.cs @@ -37,7 +37,7 @@ public abstract class XmiElementReader where TXmiElement : IXmiElem protected readonly ILogger> Logger; /// - /// The (injected) used to setup logging + /// The (injected) used cache the s /// protected readonly IXmiReaderCache Cache; diff --git a/uml4net.xmireader/Readers/XmiReader.cs b/uml4net.xmireader/Readers/XmiReader.cs index f5bcaa83..80a60dbd 100644 --- a/uml4net.xmireader/Readers/XmiReader.cs +++ b/uml4net.xmireader/Readers/XmiReader.cs @@ -92,7 +92,7 @@ public XmiReader(IAssembler assembler, IXmiReaderCache cache, ILogger } /// - /// Reads the content of a UML XMI 2.5.1 file asynchronously. + /// Reads the content of a UML XMI 2.5.1 file. /// /// /// The URI of the XMI file to be read. @@ -116,7 +116,7 @@ public IEnumerable Read(string fileUri) } /// - /// Reads the content of a UML XMI 2.5.1 stream asynchronously. + /// Reads the content of a UML XMI 2.5.1 stream. /// /// /// The that contains the XMI content to be read. @@ -130,7 +130,7 @@ public IEnumerable Read(Stream stream) } /// - /// Reads the content of a UML XMI 2.5.1 stream asynchronously. + /// Reads the content of a UML XMI 2.5.1 stream. /// /// /// The that contains the XMI content to be read. diff --git a/uml4net/Extend/ClassifierExtensions.cs b/uml4net/Extend/ClassifierExtensions.cs new file mode 100644 index 00000000..be07f8f0 --- /dev/null +++ b/uml4net/Extend/ClassifierExtensions.cs @@ -0,0 +1,44 @@ +// ------------------------------------------------------------------------------------------------- +// +// +// Copyright 2019-2024 Starion Group S.A. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, softwareUseCases +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// +// ------------------------------------------------------------------------------------------------ + +namespace uml4net.Extend +{ + using System.Collections.Generic; + using System.Linq; + + using uml4net.POCO.Classification; + + /// + /// The class provides extensions methods for the + /// + public static class ClassifierExtensions + { + /// + /// Gets the collection of s that represent the generalizations of the specified . + /// + /// The for which to retrieve the generalizations. + /// + /// A list of objects that represent the generalizations of the specified . + /// If the element does not have any generalizations, an empty list will be returned. + /// + public static List QueryGeneral(this IClassifier element) + => element.Generalization.Select(x => x.General).ToList(); + } +} \ No newline at end of file diff --git a/uml4net/Extensions/ElementExtensions.cs b/uml4net/Extend/ElementExtensions.cs similarity index 66% rename from uml4net/Extensions/ElementExtensions.cs rename to uml4net/Extend/ElementExtensions.cs index c4272c7a..ac7d47c5 100644 --- a/uml4net/Extensions/ElementExtensions.cs +++ b/uml4net/Extend/ElementExtensions.cs @@ -18,16 +18,10 @@ // // ------------------------------------------------------------------------------------------------ -namespace uml4net.Extensions +namespace uml4net.Extend { - using POCO.Classification; using POCO.CommonStructure; - using System.Collections.Generic; - using System.Linq; - using System.Xml.Linq; - - using Utils; - + /// /// The class provides extensions methods for the /// @@ -42,16 +36,5 @@ public static class ElementExtensions /// or null if the element does not have a container. /// public static IElement QueryOwner(this IElement element) => element.Container; - - /// - /// Gets the collection of s that represent the generalizations of the specified . - /// - /// The for which to retrieve the generalizations. - /// - /// A list of objects that represent the generalizations of the specified . - /// If the element does not have any generalizations, an empty list will be returned. - /// - public static List QueryGeneral(this IClassifier element) - => element.Generalization.Select(x => x.General).ToList(); } } diff --git a/uml4net/Extend/MultiplicityElementExtensions.cs b/uml4net/Extend/MultiplicityElementExtensions.cs new file mode 100644 index 00000000..e953413b --- /dev/null +++ b/uml4net/Extend/MultiplicityElementExtensions.cs @@ -0,0 +1,83 @@ +// ------------------------------------------------------------------------------------------------- +// +// +// Copyright 2019-2024 Starion Group S.A. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, softwareUseCases +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// +// ------------------------------------------------------------------------------------------------ + +namespace uml4net.Extend +{ + using System; + using POCO.Values; + + using uml4net.POCO.CommonStructure; + + /// + /// Extension methods for interface + /// + public static class MultiplicityElementExtensions + { + /// + /// Queries the lower value of the + /// + /// + /// The for which the lower value is queried + /// + /// + /// an integer + /// + public static int QueryLower(this IMultiplicityElement multiplicityElement) + { + switch (multiplicityElement.LowerValue) + { + case null: + return 0; + + case ILiteralInteger literalInteger: + return literalInteger.Value; + + default: + throw new NotSupportedException(""); + } + + } + + /// + /// Queries the upper value of the + /// + /// + /// The for which the upper value is queried + /// + /// + /// an instance of or null + /// + public static ILiteralUnlimitedNatural QueryUpper(this IMultiplicityElement multiplicityElement) + { + switch (multiplicityElement.UpperValue) + { + case null: + return null; + + case ILiteralUnlimitedNatural literalUnlimitedNatural: + return literalUnlimitedNatural; + + default: + throw new NotSupportedException("UpperValue is not of type ILiteralUnlimitedNatural."); + } + + } + } +} diff --git a/uml4net/Extensions/PackageExtensions.cs b/uml4net/Extend/PackageExtensions.cs similarity index 96% rename from uml4net/Extensions/PackageExtensions.cs rename to uml4net/Extend/PackageExtensions.cs index a2a5ce29..bd6a83e8 100644 --- a/uml4net/Extensions/PackageExtensions.cs +++ b/uml4net/Extend/PackageExtensions.cs @@ -18,11 +18,11 @@ // // ------------------------------------------------------------------------------------------------ -namespace uml4net.Extensions +namespace uml4net.Extend { using System.Collections.Generic; - using System.Collections.ObjectModel; using System.Linq; + using uml4net.POCO.Packages; /// diff --git a/uml4net/POCO/Actions/AcceptCallAction.cs b/uml4net/POCO/Actions/AcceptCallAction.cs index cc1665a6..87d36dd6 100644 --- a/uml4net/POCO/Actions/AcceptCallAction.cs +++ b/uml4net/POCO/Actions/AcceptCallAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/AcceptEventAction.cs b/uml4net/POCO/Actions/AcceptEventAction.cs index 727b8106..ed755920 100644 --- a/uml4net/POCO/Actions/AcceptEventAction.cs +++ b/uml4net/POCO/Actions/AcceptEventAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ActionInputPin.cs b/uml4net/POCO/Actions/ActionInputPin.cs index 6eb57c9d..7ad29894 100644 --- a/uml4net/POCO/Actions/ActionInputPin.cs +++ b/uml4net/POCO/Actions/ActionInputPin.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/AddStructuralFeatureValueAction.cs b/uml4net/POCO/Actions/AddStructuralFeatureValueAction.cs index db07fd8e..7af10e22 100644 --- a/uml4net/POCO/Actions/AddStructuralFeatureValueAction.cs +++ b/uml4net/POCO/Actions/AddStructuralFeatureValueAction.cs @@ -20,19 +20,16 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; - /// /// An AddStructuralFeatureValueAction is a WriteStructuralFeatureAction for adding values to a StructuralFeature. /// diff --git a/uml4net/POCO/Actions/AddVariableValueAction.cs b/uml4net/POCO/Actions/AddVariableValueAction.cs index 8d99229e..b3db9705 100644 --- a/uml4net/POCO/Actions/AddVariableValueAction.cs +++ b/uml4net/POCO/Actions/AddVariableValueAction.cs @@ -20,19 +20,16 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; - /// /// An AddVariableValueAction is a WriteVariableAction for adding values to a Variable. /// diff --git a/uml4net/POCO/Actions/BroadcastSignalAction.cs b/uml4net/POCO/Actions/BroadcastSignalAction.cs index 63ad977e..afc8e9d3 100644 --- a/uml4net/POCO/Actions/BroadcastSignalAction.cs +++ b/uml4net/POCO/Actions/BroadcastSignalAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/CallBehaviorAction.cs b/uml4net/POCO/Actions/CallBehaviorAction.cs index 5de60063..8f1e9a1e 100644 --- a/uml4net/POCO/Actions/CallBehaviorAction.cs +++ b/uml4net/POCO/Actions/CallBehaviorAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/CallOperationAction.cs b/uml4net/POCO/Actions/CallOperationAction.cs index b27c7eca..1fe96445 100644 --- a/uml4net/POCO/Actions/CallOperationAction.cs +++ b/uml4net/POCO/Actions/CallOperationAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/Clause.cs b/uml4net/POCO/Actions/Clause.cs index dcdee754..a2440c75 100644 --- a/uml4net/POCO/Actions/Clause.cs +++ b/uml4net/POCO/Actions/Clause.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Actions/ClearAssociationAction.cs b/uml4net/POCO/Actions/ClearAssociationAction.cs index 033236d3..e48ab8a0 100644 --- a/uml4net/POCO/Actions/ClearAssociationAction.cs +++ b/uml4net/POCO/Actions/ClearAssociationAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ClearStructuralFeatureAction.cs b/uml4net/POCO/Actions/ClearStructuralFeatureAction.cs index c8061bbb..f0f22f04 100644 --- a/uml4net/POCO/Actions/ClearStructuralFeatureAction.cs +++ b/uml4net/POCO/Actions/ClearStructuralFeatureAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ClearVariableAction.cs b/uml4net/POCO/Actions/ClearVariableAction.cs index 96ec8b8b..73fbe9cb 100644 --- a/uml4net/POCO/Actions/ClearVariableAction.cs +++ b/uml4net/POCO/Actions/ClearVariableAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ConditionalNode.cs b/uml4net/POCO/Actions/ConditionalNode.cs index cd8a4d2e..31ece230 100644 --- a/uml4net/POCO/Actions/ConditionalNode.cs +++ b/uml4net/POCO/Actions/ConditionalNode.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/CreateLinkAction.cs b/uml4net/POCO/Actions/CreateLinkAction.cs index a756d2c1..50c20760 100644 --- a/uml4net/POCO/Actions/CreateLinkAction.cs +++ b/uml4net/POCO/Actions/CreateLinkAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/CreateLinkObjectAction.cs b/uml4net/POCO/Actions/CreateLinkObjectAction.cs index ee9decc1..ce5e20df 100644 --- a/uml4net/POCO/Actions/CreateLinkObjectAction.cs +++ b/uml4net/POCO/Actions/CreateLinkObjectAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/CreateObjectAction.cs b/uml4net/POCO/Actions/CreateObjectAction.cs index 6ade87e9..53f09aa4 100644 --- a/uml4net/POCO/Actions/CreateObjectAction.cs +++ b/uml4net/POCO/Actions/CreateObjectAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/DestroyLinkAction.cs b/uml4net/POCO/Actions/DestroyLinkAction.cs index 78cc5542..f8cbe6be 100644 --- a/uml4net/POCO/Actions/DestroyLinkAction.cs +++ b/uml4net/POCO/Actions/DestroyLinkAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/DestroyObjectAction.cs b/uml4net/POCO/Actions/DestroyObjectAction.cs index 28712369..c8c52707 100644 --- a/uml4net/POCO/Actions/DestroyObjectAction.cs +++ b/uml4net/POCO/Actions/DestroyObjectAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ExpansionNode.cs b/uml4net/POCO/Actions/ExpansionNode.cs index 2f8894fe..f5c254a7 100644 --- a/uml4net/POCO/Actions/ExpansionNode.cs +++ b/uml4net/POCO/Actions/ExpansionNode.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ExpansionRegion.cs b/uml4net/POCO/Actions/ExpansionRegion.cs index 65e3765c..5e7a372c 100644 --- a/uml4net/POCO/Actions/ExpansionRegion.cs +++ b/uml4net/POCO/Actions/ExpansionRegion.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/InputPin.cs b/uml4net/POCO/Actions/InputPin.cs index 28e92554..5e73844e 100644 --- a/uml4net/POCO/Actions/InputPin.cs +++ b/uml4net/POCO/Actions/InputPin.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/LinkEndCreationData.cs b/uml4net/POCO/Actions/LinkEndCreationData.cs index b0e728ba..61d73ed6 100644 --- a/uml4net/POCO/Actions/LinkEndCreationData.cs +++ b/uml4net/POCO/Actions/LinkEndCreationData.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Actions/LinkEndData.cs b/uml4net/POCO/Actions/LinkEndData.cs index 41ed67fa..3a97b445 100644 --- a/uml4net/POCO/Actions/LinkEndData.cs +++ b/uml4net/POCO/Actions/LinkEndData.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Actions/LinkEndDestructionData.cs b/uml4net/POCO/Actions/LinkEndDestructionData.cs index ac83da99..5d5f866d 100644 --- a/uml4net/POCO/Actions/LinkEndDestructionData.cs +++ b/uml4net/POCO/Actions/LinkEndDestructionData.cs @@ -20,13 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; + using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Actions/LoopNode.cs b/uml4net/POCO/Actions/LoopNode.cs index 8504ceae..288a715d 100644 --- a/uml4net/POCO/Actions/LoopNode.cs +++ b/uml4net/POCO/Actions/LoopNode.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/OpaqueAction.cs b/uml4net/POCO/Actions/OpaqueAction.cs index 18b12cab..ab47f218 100644 --- a/uml4net/POCO/Actions/OpaqueAction.cs +++ b/uml4net/POCO/Actions/OpaqueAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/OutputPin.cs b/uml4net/POCO/Actions/OutputPin.cs index 589bde0a..6600c919 100644 --- a/uml4net/POCO/Actions/OutputPin.cs +++ b/uml4net/POCO/Actions/OutputPin.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/QualifierValue.cs b/uml4net/POCO/Actions/QualifierValue.cs index 37fa7905..71940584 100644 --- a/uml4net/POCO/Actions/QualifierValue.cs +++ b/uml4net/POCO/Actions/QualifierValue.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Actions/RaiseExceptionAction.cs b/uml4net/POCO/Actions/RaiseExceptionAction.cs index e7faf491..749e05a6 100644 --- a/uml4net/POCO/Actions/RaiseExceptionAction.cs +++ b/uml4net/POCO/Actions/RaiseExceptionAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ReadExtentAction.cs b/uml4net/POCO/Actions/ReadExtentAction.cs index f5daf411..4de54056 100644 --- a/uml4net/POCO/Actions/ReadExtentAction.cs +++ b/uml4net/POCO/Actions/ReadExtentAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ReadIsClassifiedObjectAction.cs b/uml4net/POCO/Actions/ReadIsClassifiedObjectAction.cs index a0ad3fc9..69e03929 100644 --- a/uml4net/POCO/Actions/ReadIsClassifiedObjectAction.cs +++ b/uml4net/POCO/Actions/ReadIsClassifiedObjectAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ReadLinkAction.cs b/uml4net/POCO/Actions/ReadLinkAction.cs index 97a78a79..9ac89c21 100644 --- a/uml4net/POCO/Actions/ReadLinkAction.cs +++ b/uml4net/POCO/Actions/ReadLinkAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ReadLinkObjectEndAction.cs b/uml4net/POCO/Actions/ReadLinkObjectEndAction.cs index 60e35113..464e9fc0 100644 --- a/uml4net/POCO/Actions/ReadLinkObjectEndAction.cs +++ b/uml4net/POCO/Actions/ReadLinkObjectEndAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ReadLinkObjectEndQualifierAction.cs b/uml4net/POCO/Actions/ReadLinkObjectEndQualifierAction.cs index feb00df8..1581974c 100644 --- a/uml4net/POCO/Actions/ReadLinkObjectEndQualifierAction.cs +++ b/uml4net/POCO/Actions/ReadLinkObjectEndQualifierAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ReadSelfAction.cs b/uml4net/POCO/Actions/ReadSelfAction.cs index 311d491a..05757f27 100644 --- a/uml4net/POCO/Actions/ReadSelfAction.cs +++ b/uml4net/POCO/Actions/ReadSelfAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ReadStructuralFeatureAction.cs b/uml4net/POCO/Actions/ReadStructuralFeatureAction.cs index 7e836152..977b5e89 100644 --- a/uml4net/POCO/Actions/ReadStructuralFeatureAction.cs +++ b/uml4net/POCO/Actions/ReadStructuralFeatureAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ReadVariableAction.cs b/uml4net/POCO/Actions/ReadVariableAction.cs index 78a6c132..4cc1d456 100644 --- a/uml4net/POCO/Actions/ReadVariableAction.cs +++ b/uml4net/POCO/Actions/ReadVariableAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ReclassifyObjectAction.cs b/uml4net/POCO/Actions/ReclassifyObjectAction.cs index 31fa2c65..a8c2ac4b 100644 --- a/uml4net/POCO/Actions/ReclassifyObjectAction.cs +++ b/uml4net/POCO/Actions/ReclassifyObjectAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ReduceAction.cs b/uml4net/POCO/Actions/ReduceAction.cs index e2b1bd9f..a3d38de8 100644 --- a/uml4net/POCO/Actions/ReduceAction.cs +++ b/uml4net/POCO/Actions/ReduceAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/RemoveStructuralFeatureValueAction.cs b/uml4net/POCO/Actions/RemoveStructuralFeatureValueAction.cs index c7b4185d..8c59ad30 100644 --- a/uml4net/POCO/Actions/RemoveStructuralFeatureValueAction.cs +++ b/uml4net/POCO/Actions/RemoveStructuralFeatureValueAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/RemoveVariableValueAction.cs b/uml4net/POCO/Actions/RemoveVariableValueAction.cs index af8b4b88..3cc6779a 100644 --- a/uml4net/POCO/Actions/RemoveVariableValueAction.cs +++ b/uml4net/POCO/Actions/RemoveVariableValueAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ReplyAction.cs b/uml4net/POCO/Actions/ReplyAction.cs index fd267816..87a19e02 100644 --- a/uml4net/POCO/Actions/ReplyAction.cs +++ b/uml4net/POCO/Actions/ReplyAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/SendObjectAction.cs b/uml4net/POCO/Actions/SendObjectAction.cs index bf804ffa..be3f8794 100644 --- a/uml4net/POCO/Actions/SendObjectAction.cs +++ b/uml4net/POCO/Actions/SendObjectAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/SendSignalAction.cs b/uml4net/POCO/Actions/SendSignalAction.cs index b4fba2b0..0e1b0262 100644 --- a/uml4net/POCO/Actions/SendSignalAction.cs +++ b/uml4net/POCO/Actions/SendSignalAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/SequenceNode.cs b/uml4net/POCO/Actions/SequenceNode.cs index 68357532..8ebbfd6c 100644 --- a/uml4net/POCO/Actions/SequenceNode.cs +++ b/uml4net/POCO/Actions/SequenceNode.cs @@ -20,13 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; + using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/StartClassifierBehaviorAction.cs b/uml4net/POCO/Actions/StartClassifierBehaviorAction.cs index 50ab945b..7afdc85f 100644 --- a/uml4net/POCO/Actions/StartClassifierBehaviorAction.cs +++ b/uml4net/POCO/Actions/StartClassifierBehaviorAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/StartObjectBehaviorAction.cs b/uml4net/POCO/Actions/StartObjectBehaviorAction.cs index 1b92c1d2..46aa30ce 100644 --- a/uml4net/POCO/Actions/StartObjectBehaviorAction.cs +++ b/uml4net/POCO/Actions/StartObjectBehaviorAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/StructuredActivityNode.cs b/uml4net/POCO/Actions/StructuredActivityNode.cs index 0a38c27c..653d3eda 100644 --- a/uml4net/POCO/Actions/StructuredActivityNode.cs +++ b/uml4net/POCO/Actions/StructuredActivityNode.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/TestIdentityAction.cs b/uml4net/POCO/Actions/TestIdentityAction.cs index 4a4cdb7f..348fdf83 100644 --- a/uml4net/POCO/Actions/TestIdentityAction.cs +++ b/uml4net/POCO/Actions/TestIdentityAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/UnmarshallAction.cs b/uml4net/POCO/Actions/UnmarshallAction.cs index c72a798d..ed20ef6e 100644 --- a/uml4net/POCO/Actions/UnmarshallAction.cs +++ b/uml4net/POCO/Actions/UnmarshallAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ValuePin.cs b/uml4net/POCO/Actions/ValuePin.cs index b99a032e..604aa09e 100644 --- a/uml4net/POCO/Actions/ValuePin.cs +++ b/uml4net/POCO/Actions/ValuePin.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/ValueSpecificationAction.cs b/uml4net/POCO/Actions/ValueSpecificationAction.cs index efdbd7e7..d82fd9e6 100644 --- a/uml4net/POCO/Actions/ValueSpecificationAction.cs +++ b/uml4net/POCO/Actions/ValueSpecificationAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Actions/WriteVariableAction.cs b/uml4net/POCO/Actions/WriteVariableAction.cs index 00295655..4d1b8e47 100644 --- a/uml4net/POCO/Actions/WriteVariableAction.cs +++ b/uml4net/POCO/Actions/WriteVariableAction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Actions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/ActivityFinalNode.cs b/uml4net/POCO/Activities/ActivityFinalNode.cs index 03fb7ee7..e2b83dd7 100644 --- a/uml4net/POCO/Activities/ActivityFinalNode.cs +++ b/uml4net/POCO/Activities/ActivityFinalNode.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/ActivityParameterNode.cs b/uml4net/POCO/Activities/ActivityParameterNode.cs index 2a6c0427..4e4c0b94 100644 --- a/uml4net/POCO/Activities/ActivityParameterNode.cs +++ b/uml4net/POCO/Activities/ActivityParameterNode.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/ActivityPartition.cs b/uml4net/POCO/Activities/ActivityPartition.cs index cf9e900a..91e3fb65 100644 --- a/uml4net/POCO/Activities/ActivityPartition.cs +++ b/uml4net/POCO/Activities/ActivityPartition.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/CentralBufferNode.cs b/uml4net/POCO/Activities/CentralBufferNode.cs index 97f9694b..d65602df 100644 --- a/uml4net/POCO/Activities/CentralBufferNode.cs +++ b/uml4net/POCO/Activities/CentralBufferNode.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/ControlFlow.cs b/uml4net/POCO/Activities/ControlFlow.cs index 8fab1a4b..8aadf518 100644 --- a/uml4net/POCO/Activities/ControlFlow.cs +++ b/uml4net/POCO/Activities/ControlFlow.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/DataStoreNode.cs b/uml4net/POCO/Activities/DataStoreNode.cs index d1194a79..c6df58dd 100644 --- a/uml4net/POCO/Activities/DataStoreNode.cs +++ b/uml4net/POCO/Activities/DataStoreNode.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/DecisionNode.cs b/uml4net/POCO/Activities/DecisionNode.cs index 2c8bc9da..3da68dce 100644 --- a/uml4net/POCO/Activities/DecisionNode.cs +++ b/uml4net/POCO/Activities/DecisionNode.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/ExceptionHandler.cs b/uml4net/POCO/Activities/ExceptionHandler.cs index fe42b23a..50233139 100644 --- a/uml4net/POCO/Activities/ExceptionHandler.cs +++ b/uml4net/POCO/Activities/ExceptionHandler.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Activities/FlowFinalNode.cs b/uml4net/POCO/Activities/FlowFinalNode.cs index 7abed3f8..0e688303 100644 --- a/uml4net/POCO/Activities/FlowFinalNode.cs +++ b/uml4net/POCO/Activities/FlowFinalNode.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/ForkNode.cs b/uml4net/POCO/Activities/ForkNode.cs index 773399c3..5d77afd5 100644 --- a/uml4net/POCO/Activities/ForkNode.cs +++ b/uml4net/POCO/Activities/ForkNode.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/InitialNode.cs b/uml4net/POCO/Activities/InitialNode.cs index c2d011c5..d54e64da 100644 --- a/uml4net/POCO/Activities/InitialNode.cs +++ b/uml4net/POCO/Activities/InitialNode.cs @@ -20,13 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; + using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/InterruptibleActivityRegion.cs b/uml4net/POCO/Activities/InterruptibleActivityRegion.cs index 2c37c9f8..fea0521c 100644 --- a/uml4net/POCO/Activities/InterruptibleActivityRegion.cs +++ b/uml4net/POCO/Activities/InterruptibleActivityRegion.cs @@ -20,13 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; + using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/JoinNode.cs b/uml4net/POCO/Activities/JoinNode.cs index 895afdd9..83857c42 100644 --- a/uml4net/POCO/Activities/JoinNode.cs +++ b/uml4net/POCO/Activities/JoinNode.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/MergeNode.cs b/uml4net/POCO/Activities/MergeNode.cs index 32713e8a..e2b117a5 100644 --- a/uml4net/POCO/Activities/MergeNode.cs +++ b/uml4net/POCO/Activities/MergeNode.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/ObjectFlow.cs b/uml4net/POCO/Activities/ObjectFlow.cs index b0261e0c..3dd54352 100644 --- a/uml4net/POCO/Activities/ObjectFlow.cs +++ b/uml4net/POCO/Activities/ObjectFlow.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/ObjectNode.cs b/uml4net/POCO/Activities/ObjectNode.cs index d8ebe7ad..cd93c5a5 100644 --- a/uml4net/POCO/Activities/ObjectNode.cs +++ b/uml4net/POCO/Activities/ObjectNode.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Activities/Variable.cs b/uml4net/POCO/Activities/Variable.cs index 50a3f907..3063edf5 100644 --- a/uml4net/POCO/Activities/Variable.cs +++ b/uml4net/POCO/Activities/Variable.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Activities { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Classification/ClassifierTemplateParameter.cs b/uml4net/POCO/Classification/ClassifierTemplateParameter.cs index 300ea045..aa96520f 100644 --- a/uml4net/POCO/Classification/ClassifierTemplateParameter.cs +++ b/uml4net/POCO/Classification/ClassifierTemplateParameter.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Classification { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.CommonStructure; /// diff --git a/uml4net/POCO/Classification/Generalization.cs b/uml4net/POCO/Classification/Generalization.cs index 38da1692..73c3a21e 100644 --- a/uml4net/POCO/Classification/Generalization.cs +++ b/uml4net/POCO/Classification/Generalization.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Classification { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.CommonStructure; /// diff --git a/uml4net/POCO/Classification/GeneralizationSet.cs b/uml4net/POCO/Classification/GeneralizationSet.cs index 6ab1abf8..2252b1c8 100644 --- a/uml4net/POCO/Classification/GeneralizationSet.cs +++ b/uml4net/POCO/Classification/GeneralizationSet.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Classification { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Classification/InstanceSpecification.cs b/uml4net/POCO/Classification/InstanceSpecification.cs index 6770259d..b01c1070 100644 --- a/uml4net/POCO/Classification/InstanceSpecification.cs +++ b/uml4net/POCO/Classification/InstanceSpecification.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Classification { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Classification/InstanceValue.cs b/uml4net/POCO/Classification/InstanceValue.cs index b9eea66f..5c6febbd 100644 --- a/uml4net/POCO/Classification/InstanceValue.cs +++ b/uml4net/POCO/Classification/InstanceValue.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Classification { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Classification/Operation.cs b/uml4net/POCO/Classification/Operation.cs index 005e45d4..397719f3 100644 --- a/uml4net/POCO/Classification/Operation.cs +++ b/uml4net/POCO/Classification/Operation.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Classification { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.CommonBehavior; using uml4net.POCO.CommonStructure; using uml4net.POCO.SimpleClassifiers; diff --git a/uml4net/POCO/Classification/OperationTemplateParameter.cs b/uml4net/POCO/Classification/OperationTemplateParameter.cs index 29fe0675..32b372b1 100644 --- a/uml4net/POCO/Classification/OperationTemplateParameter.cs +++ b/uml4net/POCO/Classification/OperationTemplateParameter.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Classification { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.CommonStructure; /// diff --git a/uml4net/POCO/Classification/Parameter.cs b/uml4net/POCO/Classification/Parameter.cs index 9ed50138..f163a697 100644 --- a/uml4net/POCO/Classification/Parameter.cs +++ b/uml4net/POCO/Classification/Parameter.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Classification { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Classification/ParameterSet.cs b/uml4net/POCO/Classification/ParameterSet.cs index 3d564571..dbe41a58 100644 --- a/uml4net/POCO/Classification/ParameterSet.cs +++ b/uml4net/POCO/Classification/ParameterSet.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Classification { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Classification/Property.cs b/uml4net/POCO/Classification/Property.cs index abf5aa8e..54793cb2 100644 --- a/uml4net/POCO/Classification/Property.cs +++ b/uml4net/POCO/Classification/Property.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Classification { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.CommonStructure; using uml4net.POCO.SimpleClassifiers; using uml4net.POCO.StructuredClassifiers; @@ -102,7 +100,7 @@ public IContainerList OwnedComment /// [Property(aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isDerived: true)] [Implements(implementation: "IMultiplicityElement.Lower")] - public int Lower => throw new NotImplementedException(); + public int Lower => this.QueryLower(); /// /// The specification of the lower bound for this multiplicity. @@ -116,7 +114,7 @@ public IContainerList OwnedComment /// [Property(aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isDerived: true)] [Implements(implementation: "IMultiplicityElement.Upper")] - public ILiteralUnlimitedNatural Upper => throw new NotImplementedException(); + public ILiteralUnlimitedNatural Upper => this.QueryUpper(); /// /// The specification of the upper bound for this multiplicity. diff --git a/uml4net/POCO/Classification/RedefinableTemplateSignature.cs b/uml4net/POCO/Classification/RedefinableTemplateSignature.cs index e203f15e..4df78d64 100644 --- a/uml4net/POCO/Classification/RedefinableTemplateSignature.cs +++ b/uml4net/POCO/Classification/RedefinableTemplateSignature.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Classification { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Classification/Slot.cs b/uml4net/POCO/Classification/Slot.cs index e0aaffbd..de26dd73 100644 --- a/uml4net/POCO/Classification/Slot.cs +++ b/uml4net/POCO/Classification/Slot.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Classification { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Classification/Substitution.cs b/uml4net/POCO/Classification/Substitution.cs index 8277df02..39bff5c6 100644 --- a/uml4net/POCO/Classification/Substitution.cs +++ b/uml4net/POCO/Classification/Substitution.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Classification { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/CommonBehavior/AnyReceiveEvent.cs b/uml4net/POCO/CommonBehavior/AnyReceiveEvent.cs index 3af56de4..aa12991c 100644 --- a/uml4net/POCO/CommonBehavior/AnyReceiveEvent.cs +++ b/uml4net/POCO/CommonBehavior/AnyReceiveEvent.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonBehavior { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/CommonBehavior/CallEvent.cs b/uml4net/POCO/CommonBehavior/CallEvent.cs index 38200e96..31665f3f 100644 --- a/uml4net/POCO/CommonBehavior/CallEvent.cs +++ b/uml4net/POCO/CommonBehavior/CallEvent.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonBehavior { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/CommonBehavior/ChangeEvent.cs b/uml4net/POCO/CommonBehavior/ChangeEvent.cs index 138f7599..05ab9e9b 100644 --- a/uml4net/POCO/CommonBehavior/ChangeEvent.cs +++ b/uml4net/POCO/CommonBehavior/ChangeEvent.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonBehavior { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/CommonBehavior/FunctionBehavior.cs b/uml4net/POCO/CommonBehavior/FunctionBehavior.cs index e9cf05ec..2ba03636 100644 --- a/uml4net/POCO/CommonBehavior/FunctionBehavior.cs +++ b/uml4net/POCO/CommonBehavior/FunctionBehavior.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonBehavior { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; @@ -424,7 +422,16 @@ public IContainerList Generalization [SubsettedProperty("Classifier-attribute")] [SubsettedProperty("Namespace-ownedMember")] [Implements(implementation: "IClass.OwnedAttribute")] - public List OwnedAttribute { get; set; } = new(); + public IContainerList OwnedAttribute + { + get => this.ownedAttribute ??= new ContainerList(this); + set => this.ownedAttribute = value; + } + + /// + /// Backing field for + /// + private IContainerList ownedAttribute; /// /// The Operations owned by the Class. diff --git a/uml4net/POCO/CommonBehavior/OpaqueBehavior.cs b/uml4net/POCO/CommonBehavior/OpaqueBehavior.cs index 026d3d0b..5f1ccdf1 100644 --- a/uml4net/POCO/CommonBehavior/OpaqueBehavior.cs +++ b/uml4net/POCO/CommonBehavior/OpaqueBehavior.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonBehavior { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; @@ -425,7 +423,16 @@ public IContainerList Generalization [SubsettedProperty("Classifier-attribute")] [SubsettedProperty("Namespace-ownedMember")] [Implements(implementation: "IClass.OwnedAttribute")] - public List OwnedAttribute { get; set; } = new(); + public IContainerList OwnedAttribute + { + get => this.ownedAttribute ??= new ContainerList(this); + set => this.ownedAttribute = value; + } + + /// + /// Backing field for + /// + private IContainerList ownedAttribute; /// /// The Operations owned by the Class. diff --git a/uml4net/POCO/CommonBehavior/SignalEvent.cs b/uml4net/POCO/CommonBehavior/SignalEvent.cs index 64590512..b3ebad91 100644 --- a/uml4net/POCO/CommonBehavior/SignalEvent.cs +++ b/uml4net/POCO/CommonBehavior/SignalEvent.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonBehavior { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/CommonBehavior/TimeEvent.cs b/uml4net/POCO/CommonBehavior/TimeEvent.cs index c041461e..66410049 100644 --- a/uml4net/POCO/CommonBehavior/TimeEvent.cs +++ b/uml4net/POCO/CommonBehavior/TimeEvent.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonBehavior { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/CommonBehavior/Trigger.cs b/uml4net/POCO/CommonBehavior/Trigger.cs index d136201a..22e1d612 100644 --- a/uml4net/POCO/CommonBehavior/Trigger.cs +++ b/uml4net/POCO/CommonBehavior/Trigger.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonBehavior { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/CommonStructure/Abstraction.cs b/uml4net/POCO/CommonStructure/Abstraction.cs index c94fd9a9..35dcf080 100644 --- a/uml4net/POCO/CommonStructure/Abstraction.cs +++ b/uml4net/POCO/CommonStructure/Abstraction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonStructure { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.Values; diff --git a/uml4net/POCO/CommonStructure/Comment.cs b/uml4net/POCO/CommonStructure/Comment.cs index 5e1d8edf..4dcf6a6f 100644 --- a/uml4net/POCO/CommonStructure/Comment.cs +++ b/uml4net/POCO/CommonStructure/Comment.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonStructure { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; /// diff --git a/uml4net/POCO/CommonStructure/Constraint.cs b/uml4net/POCO/CommonStructure/Constraint.cs index 601a920e..6e80c43f 100644 --- a/uml4net/POCO/CommonStructure/Constraint.cs +++ b/uml4net/POCO/CommonStructure/Constraint.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonStructure { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.Values; diff --git a/uml4net/POCO/CommonStructure/Dependency.cs b/uml4net/POCO/CommonStructure/Dependency.cs index 948ce111..40a8a1e3 100644 --- a/uml4net/POCO/CommonStructure/Dependency.cs +++ b/uml4net/POCO/CommonStructure/Dependency.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonStructure { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.Values; diff --git a/uml4net/POCO/CommonStructure/ElementImport.cs b/uml4net/POCO/CommonStructure/ElementImport.cs index 09b4b573..15b1f52a 100644 --- a/uml4net/POCO/CommonStructure/ElementImport.cs +++ b/uml4net/POCO/CommonStructure/ElementImport.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonStructure { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; /// diff --git a/uml4net/POCO/CommonStructure/PackageImport.cs b/uml4net/POCO/CommonStructure/PackageImport.cs index dc678f94..e1eb6152 100644 --- a/uml4net/POCO/CommonStructure/PackageImport.cs +++ b/uml4net/POCO/CommonStructure/PackageImport.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonStructure { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.Packages; diff --git a/uml4net/POCO/CommonStructure/Realization.cs b/uml4net/POCO/CommonStructure/Realization.cs index 642d1fe6..116aaf9a 100644 --- a/uml4net/POCO/CommonStructure/Realization.cs +++ b/uml4net/POCO/CommonStructure/Realization.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonStructure { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.Values; diff --git a/uml4net/POCO/CommonStructure/TemplateBinding.cs b/uml4net/POCO/CommonStructure/TemplateBinding.cs index 4559ebe3..9ab5eb5b 100644 --- a/uml4net/POCO/CommonStructure/TemplateBinding.cs +++ b/uml4net/POCO/CommonStructure/TemplateBinding.cs @@ -20,14 +20,13 @@ namespace uml4net.POCO.CommonStructure { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; + using uml4net.POCO.Classification; /// diff --git a/uml4net/POCO/CommonStructure/TemplateParameter.cs b/uml4net/POCO/CommonStructure/TemplateParameter.cs index 12a48c06..7ef7858a 100644 --- a/uml4net/POCO/CommonStructure/TemplateParameter.cs +++ b/uml4net/POCO/CommonStructure/TemplateParameter.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonStructure { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; /// diff --git a/uml4net/POCO/CommonStructure/TemplateParameterSubstitution.cs b/uml4net/POCO/CommonStructure/TemplateParameterSubstitution.cs index 2f6f3a19..6fa74bb6 100644 --- a/uml4net/POCO/CommonStructure/TemplateParameterSubstitution.cs +++ b/uml4net/POCO/CommonStructure/TemplateParameterSubstitution.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonStructure { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; /// diff --git a/uml4net/POCO/CommonStructure/TemplateSignature.cs b/uml4net/POCO/CommonStructure/TemplateSignature.cs index 0b03d12e..f5ad40d0 100644 --- a/uml4net/POCO/CommonStructure/TemplateSignature.cs +++ b/uml4net/POCO/CommonStructure/TemplateSignature.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonStructure { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; /// diff --git a/uml4net/POCO/CommonStructure/Usage.cs b/uml4net/POCO/CommonStructure/Usage.cs index 76857c0d..7681f6fe 100644 --- a/uml4net/POCO/CommonStructure/Usage.cs +++ b/uml4net/POCO/CommonStructure/Usage.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.CommonStructure { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Deployments/Artifact.cs b/uml4net/POCO/Deployments/Artifact.cs index da9735c8..3c7fc42c 100644 --- a/uml4net/POCO/Deployments/Artifact.cs +++ b/uml4net/POCO/Deployments/Artifact.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Deployments { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; diff --git a/uml4net/POCO/Deployments/CommunicationPath.cs b/uml4net/POCO/Deployments/CommunicationPath.cs index 9a461814..2a29daa4 100644 --- a/uml4net/POCO/Deployments/CommunicationPath.cs +++ b/uml4net/POCO/Deployments/CommunicationPath.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Deployments { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; diff --git a/uml4net/POCO/Deployments/Deployment.cs b/uml4net/POCO/Deployments/Deployment.cs index f2f3d97b..e8b79953 100644 --- a/uml4net/POCO/Deployments/Deployment.cs +++ b/uml4net/POCO/Deployments/Deployment.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Deployments { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Deployments/DeploymentSpecification.cs b/uml4net/POCO/Deployments/DeploymentSpecification.cs index 52a26d0c..dedc3026 100644 --- a/uml4net/POCO/Deployments/DeploymentSpecification.cs +++ b/uml4net/POCO/Deployments/DeploymentSpecification.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Deployments { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; diff --git a/uml4net/POCO/Deployments/DeploymentTarget.cs b/uml4net/POCO/Deployments/DeploymentTarget.cs index 678e7a08..81eee7a7 100644 --- a/uml4net/POCO/Deployments/DeploymentTarget.cs +++ b/uml4net/POCO/Deployments/DeploymentTarget.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Deployments { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Deployments/Device.cs b/uml4net/POCO/Deployments/Device.cs index 55b4ac0b..6704fb7f 100644 --- a/uml4net/POCO/Deployments/Device.cs +++ b/uml4net/POCO/Deployments/Device.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Deployments { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; @@ -425,7 +423,16 @@ public IContainerList Generalization [SubsettedProperty("Classifier-attribute")] [SubsettedProperty("Namespace-ownedMember")] [Implements(implementation: "IClass.OwnedAttribute")] - public List OwnedAttribute { get; set; } = new(); + public IContainerList OwnedAttribute + { + get => this.ownedAttribute ??= new ContainerList(this); + set => this.ownedAttribute = value; + } + + /// + /// Backing field for + /// + private IContainerList ownedAttribute; /// /// The Operations owned by the Class. diff --git a/uml4net/POCO/Deployments/ExecutionEnvironment.cs b/uml4net/POCO/Deployments/ExecutionEnvironment.cs index ce4aeea5..57439322 100644 --- a/uml4net/POCO/Deployments/ExecutionEnvironment.cs +++ b/uml4net/POCO/Deployments/ExecutionEnvironment.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Deployments { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; @@ -425,7 +423,16 @@ public IContainerList Generalization [SubsettedProperty("Classifier-attribute")] [SubsettedProperty("Namespace-ownedMember")] [Implements(implementation: "IClass.OwnedAttribute")] - public List OwnedAttribute { get; set; } = new(); + public IContainerList OwnedAttribute + { + get => this.ownedAttribute ??= new ContainerList(this); + set => this.ownedAttribute = value; + } + + /// + /// Backing field for + /// + private IContainerList ownedAttribute; /// /// The Operations owned by the Class. diff --git a/uml4net/POCO/Deployments/Manifestation.cs b/uml4net/POCO/Deployments/Manifestation.cs index d5817902..a0641a53 100644 --- a/uml4net/POCO/Deployments/Manifestation.cs +++ b/uml4net/POCO/Deployments/Manifestation.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Deployments { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Deployments/Node.cs b/uml4net/POCO/Deployments/Node.cs index a3d5fb2f..833160c1 100644 --- a/uml4net/POCO/Deployments/Node.cs +++ b/uml4net/POCO/Deployments/Node.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Deployments { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; @@ -426,7 +424,16 @@ public IContainerList Generalization [SubsettedProperty("Classifier-attribute")] [SubsettedProperty("Namespace-ownedMember")] [Implements(implementation: "IClass.OwnedAttribute")] - public List OwnedAttribute { get; set; } = new(); + public IContainerList OwnedAttribute + { + get => this.ownedAttribute ??= new ContainerList(this); + set => this.ownedAttribute = value; + } + + /// + /// Backing field for + /// + private IContainerList ownedAttribute; /// /// The Operations owned by the Class. diff --git a/uml4net/POCO/InformationFlows/InformationFlow.cs b/uml4net/POCO/InformationFlows/InformationFlow.cs index 701c8d6b..c72f3942 100644 --- a/uml4net/POCO/InformationFlows/InformationFlow.cs +++ b/uml4net/POCO/InformationFlows/InformationFlow.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.InformationFlows { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/InformationFlows/InformationItem.cs b/uml4net/POCO/InformationFlows/InformationItem.cs index 07c86d7b..63d9e031 100644 --- a/uml4net/POCO/InformationFlows/InformationItem.cs +++ b/uml4net/POCO/InformationFlows/InformationItem.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.InformationFlows { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; diff --git a/uml4net/POCO/Interactions/ActionExecutionSpecification.cs b/uml4net/POCO/Interactions/ActionExecutionSpecification.cs index ae00aec5..75695e03 100644 --- a/uml4net/POCO/Interactions/ActionExecutionSpecification.cs +++ b/uml4net/POCO/Interactions/ActionExecutionSpecification.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/BehaviorExecutionSpecification.cs b/uml4net/POCO/Interactions/BehaviorExecutionSpecification.cs index 4a684881..ef997e36 100644 --- a/uml4net/POCO/Interactions/BehaviorExecutionSpecification.cs +++ b/uml4net/POCO/Interactions/BehaviorExecutionSpecification.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/CombinedFragment.cs b/uml4net/POCO/Interactions/CombinedFragment.cs index 4d745082..e68b1bb6 100644 --- a/uml4net/POCO/Interactions/CombinedFragment.cs +++ b/uml4net/POCO/Interactions/CombinedFragment.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/ConsiderIgnoreFragment.cs b/uml4net/POCO/Interactions/ConsiderIgnoreFragment.cs index 1089a3fe..ad0ea256 100644 --- a/uml4net/POCO/Interactions/ConsiderIgnoreFragment.cs +++ b/uml4net/POCO/Interactions/ConsiderIgnoreFragment.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/Continuation.cs b/uml4net/POCO/Interactions/Continuation.cs index 643d38dd..003a325c 100644 --- a/uml4net/POCO/Interactions/Continuation.cs +++ b/uml4net/POCO/Interactions/Continuation.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/DestructionOccurrenceSpecification.cs b/uml4net/POCO/Interactions/DestructionOccurrenceSpecification.cs index 7962c222..835b91a7 100644 --- a/uml4net/POCO/Interactions/DestructionOccurrenceSpecification.cs +++ b/uml4net/POCO/Interactions/DestructionOccurrenceSpecification.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/ExecutionOccurrenceSpecification.cs b/uml4net/POCO/Interactions/ExecutionOccurrenceSpecification.cs index 642718c4..0f6c3b39 100644 --- a/uml4net/POCO/Interactions/ExecutionOccurrenceSpecification.cs +++ b/uml4net/POCO/Interactions/ExecutionOccurrenceSpecification.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/Gate.cs b/uml4net/POCO/Interactions/Gate.cs index 99f8bf78..30f3a0e3 100644 --- a/uml4net/POCO/Interactions/Gate.cs +++ b/uml4net/POCO/Interactions/Gate.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/GeneralOrdering.cs b/uml4net/POCO/Interactions/GeneralOrdering.cs index 13ab3f4d..480338d9 100644 --- a/uml4net/POCO/Interactions/GeneralOrdering.cs +++ b/uml4net/POCO/Interactions/GeneralOrdering.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/Interaction.cs b/uml4net/POCO/Interactions/Interaction.cs index 535c0f8f..717a7bea 100644 --- a/uml4net/POCO/Interactions/Interaction.cs +++ b/uml4net/POCO/Interactions/Interaction.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; @@ -424,7 +422,16 @@ public IContainerList Generalization [SubsettedProperty("Classifier-attribute")] [SubsettedProperty("Namespace-ownedMember")] [Implements(implementation: "IClass.OwnedAttribute")] - public List OwnedAttribute { get; set; } = new(); + public IContainerList OwnedAttribute + { + get => this.ownedAttribute ??= new ContainerList(this); + set => this.ownedAttribute = value; + } + + /// + /// Backing field for + /// + private IContainerList ownedAttribute; /// /// The Operations owned by the Class. diff --git a/uml4net/POCO/Interactions/InteractionConstraint.cs b/uml4net/POCO/Interactions/InteractionConstraint.cs index 7842697c..25c2e600 100644 --- a/uml4net/POCO/Interactions/InteractionConstraint.cs +++ b/uml4net/POCO/Interactions/InteractionConstraint.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/InteractionOperand.cs b/uml4net/POCO/Interactions/InteractionOperand.cs index 8f5e769d..d9dff765 100644 --- a/uml4net/POCO/Interactions/InteractionOperand.cs +++ b/uml4net/POCO/Interactions/InteractionOperand.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/InteractionUse.cs b/uml4net/POCO/Interactions/InteractionUse.cs index 66d14297..4e9aa2c3 100644 --- a/uml4net/POCO/Interactions/InteractionUse.cs +++ b/uml4net/POCO/Interactions/InteractionUse.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/Lifeline.cs b/uml4net/POCO/Interactions/Lifeline.cs index e25829ac..de0c5815 100644 --- a/uml4net/POCO/Interactions/Lifeline.cs +++ b/uml4net/POCO/Interactions/Lifeline.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/Message.cs b/uml4net/POCO/Interactions/Message.cs index 5880ff5a..7311061f 100644 --- a/uml4net/POCO/Interactions/Message.cs +++ b/uml4net/POCO/Interactions/Message.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/MessageOccurrenceSpecification.cs b/uml4net/POCO/Interactions/MessageOccurrenceSpecification.cs index d48ce0a7..4b58c9f9 100644 --- a/uml4net/POCO/Interactions/MessageOccurrenceSpecification.cs +++ b/uml4net/POCO/Interactions/MessageOccurrenceSpecification.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/OccurrenceSpecification.cs b/uml4net/POCO/Interactions/OccurrenceSpecification.cs index e12a6380..54c45c9f 100644 --- a/uml4net/POCO/Interactions/OccurrenceSpecification.cs +++ b/uml4net/POCO/Interactions/OccurrenceSpecification.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/PartDecomposition.cs b/uml4net/POCO/Interactions/PartDecomposition.cs index 45de647e..891425c3 100644 --- a/uml4net/POCO/Interactions/PartDecomposition.cs +++ b/uml4net/POCO/Interactions/PartDecomposition.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Interactions/StateInvariant.cs b/uml4net/POCO/Interactions/StateInvariant.cs index 32295de8..adb099ed 100644 --- a/uml4net/POCO/Interactions/StateInvariant.cs +++ b/uml4net/POCO/Interactions/StateInvariant.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Interactions { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Packages/Extension.cs b/uml4net/POCO/Packages/Extension.cs index 6899c442..6d881564 100644 --- a/uml4net/POCO/Packages/Extension.cs +++ b/uml4net/POCO/Packages/Extension.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Packages { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.StructuredClassifiers; diff --git a/uml4net/POCO/Packages/ExtensionEnd.cs b/uml4net/POCO/Packages/ExtensionEnd.cs index d2f1bc7c..af97a3dd 100644 --- a/uml4net/POCO/Packages/ExtensionEnd.cs +++ b/uml4net/POCO/Packages/ExtensionEnd.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Packages { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.SimpleClassifiers; diff --git a/uml4net/POCO/Packages/Image.cs b/uml4net/POCO/Packages/Image.cs index db77c97c..e60b8d25 100644 --- a/uml4net/POCO/Packages/Image.cs +++ b/uml4net/POCO/Packages/Image.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Packages { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Packages/Model.cs b/uml4net/POCO/Packages/Model.cs index b7845c09..dd41ebc2 100644 --- a/uml4net/POCO/Packages/Model.cs +++ b/uml4net/POCO/Packages/Model.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Packages { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Packages/Package.cs b/uml4net/POCO/Packages/Package.cs index 4d47d7c0..d45fd877 100644 --- a/uml4net/POCO/Packages/Package.cs +++ b/uml4net/POCO/Packages/Package.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Packages { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; - + using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Packages/PackageMerge.cs b/uml4net/POCO/Packages/PackageMerge.cs index 1c788d4f..3d978c42 100644 --- a/uml4net/POCO/Packages/PackageMerge.cs +++ b/uml4net/POCO/Packages/PackageMerge.cs @@ -20,13 +20,12 @@ namespace uml4net.POCO.Packages { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; + using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Packages/Profile.cs b/uml4net/POCO/Packages/Profile.cs index 4c29ad2a..2fba7947 100644 --- a/uml4net/POCO/Packages/Profile.cs +++ b/uml4net/POCO/Packages/Profile.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Packages { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; - + using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/Packages/ProfileApplication.cs b/uml4net/POCO/Packages/ProfileApplication.cs index 1b67a425..a8de8be6 100644 --- a/uml4net/POCO/Packages/ProfileApplication.cs +++ b/uml4net/POCO/Packages/ProfileApplication.cs @@ -20,13 +20,12 @@ namespace uml4net.POCO.Packages { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; + using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Packages/Stereotype.cs b/uml4net/POCO/Packages/Stereotype.cs index 8937cd5e..32c2f009 100644 --- a/uml4net/POCO/Packages/Stereotype.cs +++ b/uml4net/POCO/Packages/Stereotype.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Packages { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; - + using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.SimpleClassifiers; @@ -413,7 +411,16 @@ IContainerList IClassifier.Generalization [SubsettedProperty("Classifier-attribute")] [SubsettedProperty("Namespace-ownedMember")] [Implements(implementation: "IClass.OwnedAttribute")] - public List OwnedAttribute { get; set; } = new(); + public IContainerList OwnedAttribute + { + get => this.ownedAttribute ??= new ContainerList(this); + set => this.ownedAttribute = value; + } + + /// + /// Backing field for + /// + private IContainerList ownedAttribute; /// /// The Operations owned by the Class. diff --git a/uml4net/POCO/SimpleClassifiers/DataType.cs b/uml4net/POCO/SimpleClassifiers/DataType.cs index 6ca5cae9..275a45c8 100644 --- a/uml4net/POCO/SimpleClassifiers/DataType.cs +++ b/uml4net/POCO/SimpleClassifiers/DataType.cs @@ -20,14 +20,13 @@ namespace uml4net.POCO.SimpleClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; + using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; diff --git a/uml4net/POCO/SimpleClassifiers/Enumeration.cs b/uml4net/POCO/SimpleClassifiers/Enumeration.cs index 25539d7d..c810e61a 100644 --- a/uml4net/POCO/SimpleClassifiers/Enumeration.cs +++ b/uml4net/POCO/SimpleClassifiers/Enumeration.cs @@ -20,14 +20,13 @@ namespace uml4net.POCO.SimpleClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; + using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; diff --git a/uml4net/POCO/SimpleClassifiers/EnumerationLiteral.cs b/uml4net/POCO/SimpleClassifiers/EnumerationLiteral.cs index 576d69cf..aad164af 100644 --- a/uml4net/POCO/SimpleClassifiers/EnumerationLiteral.cs +++ b/uml4net/POCO/SimpleClassifiers/EnumerationLiteral.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.SimpleClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/SimpleClassifiers/Interface.cs b/uml4net/POCO/SimpleClassifiers/Interface.cs index 4b8b31cb..efc47701 100644 --- a/uml4net/POCO/SimpleClassifiers/Interface.cs +++ b/uml4net/POCO/SimpleClassifiers/Interface.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.SimpleClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; - using System.Linq; + using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; diff --git a/uml4net/POCO/SimpleClassifiers/InterfaceRealization.cs b/uml4net/POCO/SimpleClassifiers/InterfaceRealization.cs index 5aac39f9..eed46b18 100644 --- a/uml4net/POCO/SimpleClassifiers/InterfaceRealization.cs +++ b/uml4net/POCO/SimpleClassifiers/InterfaceRealization.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.SimpleClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/SimpleClassifiers/PrimitiveType.cs b/uml4net/POCO/SimpleClassifiers/PrimitiveType.cs index 427b793f..35048f5a 100644 --- a/uml4net/POCO/SimpleClassifiers/PrimitiveType.cs +++ b/uml4net/POCO/SimpleClassifiers/PrimitiveType.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.SimpleClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; diff --git a/uml4net/POCO/SimpleClassifiers/Reception.cs b/uml4net/POCO/SimpleClassifiers/Reception.cs index 2d98dfc4..d7249799 100644 --- a/uml4net/POCO/SimpleClassifiers/Reception.cs +++ b/uml4net/POCO/SimpleClassifiers/Reception.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.SimpleClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonBehavior; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/SimpleClassifiers/Signal.cs b/uml4net/POCO/SimpleClassifiers/Signal.cs index c27b4846..e3b360ba 100644 --- a/uml4net/POCO/SimpleClassifiers/Signal.cs +++ b/uml4net/POCO/SimpleClassifiers/Signal.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.SimpleClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; diff --git a/uml4net/POCO/StateMachines/ConnectionPointReference.cs b/uml4net/POCO/StateMachines/ConnectionPointReference.cs index cfeccf73..61fba5f3 100644 --- a/uml4net/POCO/StateMachines/ConnectionPointReference.cs +++ b/uml4net/POCO/StateMachines/ConnectionPointReference.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StateMachines { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/StateMachines/FinalState.cs b/uml4net/POCO/StateMachines/FinalState.cs index fb3fabb2..2c0a8ae3 100644 --- a/uml4net/POCO/StateMachines/FinalState.cs +++ b/uml4net/POCO/StateMachines/FinalState.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StateMachines { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/StateMachines/ProtocolConformance.cs b/uml4net/POCO/StateMachines/ProtocolConformance.cs index 4fe8ea83..a46f25ef 100644 --- a/uml4net/POCO/StateMachines/ProtocolConformance.cs +++ b/uml4net/POCO/StateMachines/ProtocolConformance.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StateMachines { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/StateMachines/ProtocolStateMachine.cs b/uml4net/POCO/StateMachines/ProtocolStateMachine.cs index 2ca9a110..4100f672 100644 --- a/uml4net/POCO/StateMachines/ProtocolStateMachine.cs +++ b/uml4net/POCO/StateMachines/ProtocolStateMachine.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StateMachines { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; @@ -431,7 +429,16 @@ public IContainerList Generalization [SubsettedProperty("Classifier-attribute")] [SubsettedProperty("Namespace-ownedMember")] [Implements(implementation: "IClass.OwnedAttribute")] - public List OwnedAttribute { get; set; } = new(); + public IContainerList OwnedAttribute + { + get => this.ownedAttribute ??= new ContainerList(this); + set => this.ownedAttribute = value; + } + + /// + /// Backing field for + /// + private IContainerList ownedAttribute; /// /// The Operations owned by the Class. diff --git a/uml4net/POCO/StateMachines/ProtocolTransition.cs b/uml4net/POCO/StateMachines/ProtocolTransition.cs index d75a9289..24d6710d 100644 --- a/uml4net/POCO/StateMachines/ProtocolTransition.cs +++ b/uml4net/POCO/StateMachines/ProtocolTransition.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StateMachines { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/StateMachines/Pseudostate.cs b/uml4net/POCO/StateMachines/Pseudostate.cs index a4369d98..1a9ccec1 100644 --- a/uml4net/POCO/StateMachines/Pseudostate.cs +++ b/uml4net/POCO/StateMachines/Pseudostate.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StateMachines { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/StateMachines/Region.cs b/uml4net/POCO/StateMachines/Region.cs index 59db5ea0..75aceeb0 100644 --- a/uml4net/POCO/StateMachines/Region.cs +++ b/uml4net/POCO/StateMachines/Region.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StateMachines { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/StateMachines/State.cs b/uml4net/POCO/StateMachines/State.cs index 1a1b13c3..7d0e37ed 100644 --- a/uml4net/POCO/StateMachines/State.cs +++ b/uml4net/POCO/StateMachines/State.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StateMachines { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/StateMachines/StateMachine.cs b/uml4net/POCO/StateMachines/StateMachine.cs index 05e1636e..1bf5febf 100644 --- a/uml4net/POCO/StateMachines/StateMachine.cs +++ b/uml4net/POCO/StateMachines/StateMachine.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StateMachines { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; @@ -428,7 +426,16 @@ public IContainerList Generalization [SubsettedProperty("Classifier-attribute")] [SubsettedProperty("Namespace-ownedMember")] [Implements(implementation: "IClass.OwnedAttribute")] - public List OwnedAttribute { get; set; } = new(); + public IContainerList OwnedAttribute + { + get => this.ownedAttribute ??= new ContainerList(this); + set => this.ownedAttribute = value; + } + + /// + /// Backing field for + /// + private IContainerList ownedAttribute; /// /// The Operations owned by the Class. diff --git a/uml4net/POCO/StateMachines/Transition.cs b/uml4net/POCO/StateMachines/Transition.cs index 34d8057d..1188fb2d 100644 --- a/uml4net/POCO/StateMachines/Transition.cs +++ b/uml4net/POCO/StateMachines/Transition.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StateMachines { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/StructuredClassifiers/Association.cs b/uml4net/POCO/StructuredClassifiers/Association.cs index bc9843d9..30156245 100644 --- a/uml4net/POCO/StructuredClassifiers/Association.cs +++ b/uml4net/POCO/StructuredClassifiers/Association.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StructuredClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; diff --git a/uml4net/POCO/StructuredClassifiers/AssociationClass.cs b/uml4net/POCO/StructuredClassifiers/AssociationClass.cs index 426155f1..2168cdc9 100644 --- a/uml4net/POCO/StructuredClassifiers/AssociationClass.cs +++ b/uml4net/POCO/StructuredClassifiers/AssociationClass.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StructuredClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; @@ -474,7 +472,17 @@ public IContainerList Generalization [SubsettedProperty("Classifier-attribute")] [SubsettedProperty("Namespace-ownedMember")] [Implements(implementation: "IClass.OwnedAttribute")] - public List OwnedAttribute { get; set; } = new(); + public IContainerList OwnedAttribute + { + get => this.ownedAttribute ??= new ContainerList(this); + set => this.ownedAttribute = value; + } + + + /// + /// Backing field for + /// + private IContainerList ownedAttribute; /// /// The Operations owned by the Class. diff --git a/uml4net/POCO/StructuredClassifiers/Class.cs b/uml4net/POCO/StructuredClassifiers/Class.cs index e07c5723..35356b10 100644 --- a/uml4net/POCO/StructuredClassifiers/Class.cs +++ b/uml4net/POCO/StructuredClassifiers/Class.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StructuredClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; - using System.Linq; + using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; @@ -62,7 +60,7 @@ public IContainerList OwnedComment /// [Property(aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isReadOnly: true, isDerived: true, isDerivedUnion: true)] [Implements(implementation: "IElement.OwnedElement")] - public List OwnedElement { get; set; } = new List(); + public List OwnedElement => throw new NotImplementedException(); /// /// The Element that owns this Element. @@ -140,6 +138,7 @@ public IContainerList ElementImport /// Backing field for /// private IContainerList elementImport; + /// /// References the PackageableElements that are members of this Namespace as a result of either PackageImports or ElementImports. /// @@ -425,7 +424,16 @@ public IContainerList Generalization [SubsettedProperty("Classifier-attribute")] [SubsettedProperty("Namespace-ownedMember")] [Implements(implementation: "IClass.OwnedAttribute")] - public List OwnedAttribute { get; set; } = new(); + public IContainerList OwnedAttribute + { + get => this.ownedAttribute ??= new ContainerList(this); + set => this.ownedAttribute = value; + } + + /// + /// Backing field for + /// + private IContainerList ownedAttribute; /// /// The Operations owned by the Class. diff --git a/uml4net/POCO/StructuredClassifiers/Collaboration.cs b/uml4net/POCO/StructuredClassifiers/Collaboration.cs index 0eadcbea..9c718766 100644 --- a/uml4net/POCO/StructuredClassifiers/Collaboration.cs +++ b/uml4net/POCO/StructuredClassifiers/Collaboration.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StructuredClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; diff --git a/uml4net/POCO/StructuredClassifiers/CollaborationUse.cs b/uml4net/POCO/StructuredClassifiers/CollaborationUse.cs index 77acdd21..ae1fa43b 100644 --- a/uml4net/POCO/StructuredClassifiers/CollaborationUse.cs +++ b/uml4net/POCO/StructuredClassifiers/CollaborationUse.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StructuredClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/StructuredClassifiers/Component.cs b/uml4net/POCO/StructuredClassifiers/Component.cs index b629eb49..d4736c1a 100644 --- a/uml4net/POCO/StructuredClassifiers/Component.cs +++ b/uml4net/POCO/StructuredClassifiers/Component.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StructuredClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; @@ -424,7 +422,16 @@ public IContainerList Generalization [SubsettedProperty("Classifier-attribute")] [SubsettedProperty("Namespace-ownedMember")] [Implements(implementation: "IClass.OwnedAttribute")] - public List OwnedAttribute { get; set; } = new(); + public IContainerList OwnedAttribute + { + get => this.ownedAttribute ??= new ContainerList(this); + set => this.ownedAttribute = value; + } + + /// + /// Backing field for + /// + private IContainerList ownedAttribute; /// /// The Operations owned by the Class. diff --git a/uml4net/POCO/StructuredClassifiers/ComponentRealization.cs b/uml4net/POCO/StructuredClassifiers/ComponentRealization.cs index d119778f..6e949e97 100644 --- a/uml4net/POCO/StructuredClassifiers/ComponentRealization.cs +++ b/uml4net/POCO/StructuredClassifiers/ComponentRealization.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StructuredClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/StructuredClassifiers/ConnectableElementTemplateParameter.cs b/uml4net/POCO/StructuredClassifiers/ConnectableElementTemplateParameter.cs index 23056513..5cf2aafa 100644 --- a/uml4net/POCO/StructuredClassifiers/ConnectableElementTemplateParameter.cs +++ b/uml4net/POCO/StructuredClassifiers/ConnectableElementTemplateParameter.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StructuredClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/StructuredClassifiers/Connector.cs b/uml4net/POCO/StructuredClassifiers/Connector.cs index 610507a2..292616cc 100644 --- a/uml4net/POCO/StructuredClassifiers/Connector.cs +++ b/uml4net/POCO/StructuredClassifiers/Connector.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StructuredClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/StructuredClassifiers/ConnectorEnd.cs b/uml4net/POCO/StructuredClassifiers/ConnectorEnd.cs index 14c02f71..7f59c70b 100644 --- a/uml4net/POCO/StructuredClassifiers/ConnectorEnd.cs +++ b/uml4net/POCO/StructuredClassifiers/ConnectorEnd.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StructuredClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/StructuredClassifiers/EncapsulatedClassifier.cs b/uml4net/POCO/StructuredClassifiers/EncapsulatedClassifier.cs index 7b528511..e977bd36 100644 --- a/uml4net/POCO/StructuredClassifiers/EncapsulatedClassifier.cs +++ b/uml4net/POCO/StructuredClassifiers/EncapsulatedClassifier.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StructuredClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; diff --git a/uml4net/POCO/StructuredClassifiers/IClass.cs b/uml4net/POCO/StructuredClassifiers/IClass.cs index 751be433..47f29cc5 100644 --- a/uml4net/POCO/StructuredClassifiers/IClass.cs +++ b/uml4net/POCO/StructuredClassifiers/IClass.cs @@ -26,6 +26,7 @@ namespace uml4net.POCO.StructuredClassifiers using uml4net.POCO.Classification; using uml4net.POCO.Packages; using uml4net.POCO.SimpleClassifiers; + using uml4net.Utils; /// /// A Class classifies a set of objects and specifies the features that characterize the structure and behavior @@ -71,7 +72,7 @@ public interface IClass : IBehavioredClassifier, IEncapsulatedClassifier [RedefinedProperty("StructuredClassifier-ownedAttribute")] [SubsettedProperty("Classifier-attribute")] [SubsettedProperty("Namespace-ownedMember")] - public List OwnedAttribute { get; set; } + public IContainerList OwnedAttribute { get; set; } /// /// The Operations owned by the Class. diff --git a/uml4net/POCO/StructuredClassifiers/Port.cs b/uml4net/POCO/StructuredClassifiers/Port.cs index 2e36aeab..d6d7e632 100644 --- a/uml4net/POCO/StructuredClassifiers/Port.cs +++ b/uml4net/POCO/StructuredClassifiers/Port.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.StructuredClassifiers { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.SimpleClassifiers; diff --git a/uml4net/POCO/UseCases/Actor.cs b/uml4net/POCO/UseCases/Actor.cs index 3888c9e3..55db0699 100644 --- a/uml4net/POCO/UseCases/Actor.cs +++ b/uml4net/POCO/UseCases/Actor.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.UseCases { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; diff --git a/uml4net/POCO/UseCases/Extend.cs b/uml4net/POCO/UseCases/Extend.cs index 70b4978b..25659183 100644 --- a/uml4net/POCO/UseCases/Extend.cs +++ b/uml4net/POCO/UseCases/Extend.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.UseCases { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/UseCases/ExtensionPoint.cs b/uml4net/POCO/UseCases/ExtensionPoint.cs index 604a2d53..1dd1e1c6 100644 --- a/uml4net/POCO/UseCases/ExtensionPoint.cs +++ b/uml4net/POCO/UseCases/ExtensionPoint.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.UseCases { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/UseCases/Include.cs b/uml4net/POCO/UseCases/Include.cs index b12150f8..4f3207b5 100644 --- a/uml4net/POCO/UseCases/Include.cs +++ b/uml4net/POCO/UseCases/Include.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.UseCases { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Values; diff --git a/uml4net/POCO/UseCases/UseCase.cs b/uml4net/POCO/UseCases/UseCase.cs index 11503ce6..2ed52100 100644 --- a/uml4net/POCO/UseCases/UseCase.cs +++ b/uml4net/POCO/UseCases/UseCase.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.UseCases { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; using uml4net.POCO.Packages; diff --git a/uml4net/POCO/Values/Duration.cs b/uml4net/POCO/Values/Duration.cs index a083d8ef..26259f4d 100644 --- a/uml4net/POCO/Values/Duration.cs +++ b/uml4net/POCO/Values/Duration.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/DurationConstraint.cs b/uml4net/POCO/Values/DurationConstraint.cs index 5576515b..1c69f18b 100644 --- a/uml4net/POCO/Values/DurationConstraint.cs +++ b/uml4net/POCO/Values/DurationConstraint.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/DurationInterval.cs b/uml4net/POCO/Values/DurationInterval.cs index 991ea7cd..d8a4d05b 100644 --- a/uml4net/POCO/Values/DurationInterval.cs +++ b/uml4net/POCO/Values/DurationInterval.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/DurationObservation.cs b/uml4net/POCO/Values/DurationObservation.cs index 8e544125..f4416e44 100644 --- a/uml4net/POCO/Values/DurationObservation.cs +++ b/uml4net/POCO/Values/DurationObservation.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/Expression.cs b/uml4net/POCO/Values/Expression.cs index 641667c2..f8bbd880 100644 --- a/uml4net/POCO/Values/Expression.cs +++ b/uml4net/POCO/Values/Expression.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/Interval.cs b/uml4net/POCO/Values/Interval.cs index 49e1b160..fec61f9d 100644 --- a/uml4net/POCO/Values/Interval.cs +++ b/uml4net/POCO/Values/Interval.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/IntervalConstraint.cs b/uml4net/POCO/Values/IntervalConstraint.cs index da01f1a4..bd3141f4 100644 --- a/uml4net/POCO/Values/IntervalConstraint.cs +++ b/uml4net/POCO/Values/IntervalConstraint.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/LiteralBoolean.cs b/uml4net/POCO/Values/LiteralBoolean.cs index b426cd8e..66359e2b 100644 --- a/uml4net/POCO/Values/LiteralBoolean.cs +++ b/uml4net/POCO/Values/LiteralBoolean.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/LiteralInteger.cs b/uml4net/POCO/Values/LiteralInteger.cs index 7410ad9b..2a4a3f26 100644 --- a/uml4net/POCO/Values/LiteralInteger.cs +++ b/uml4net/POCO/Values/LiteralInteger.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/LiteralNull.cs b/uml4net/POCO/Values/LiteralNull.cs index bae1bed3..a89e2f59 100644 --- a/uml4net/POCO/Values/LiteralNull.cs +++ b/uml4net/POCO/Values/LiteralNull.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/LiteralReal.cs b/uml4net/POCO/Values/LiteralReal.cs index efe1801f..a47c3ae2 100644 --- a/uml4net/POCO/Values/LiteralReal.cs +++ b/uml4net/POCO/Values/LiteralReal.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/LiteralString.cs b/uml4net/POCO/Values/LiteralString.cs index d4bdaf23..f7d63393 100644 --- a/uml4net/POCO/Values/LiteralString.cs +++ b/uml4net/POCO/Values/LiteralString.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/LiteralUnlimitedNatural.cs b/uml4net/POCO/Values/LiteralUnlimitedNatural.cs index 22771a43..3916098b 100644 --- a/uml4net/POCO/Values/LiteralUnlimitedNatural.cs +++ b/uml4net/POCO/Values/LiteralUnlimitedNatural.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/OpaqueExpression.cs b/uml4net/POCO/Values/OpaqueExpression.cs index 3db41129..f85927ec 100644 --- a/uml4net/POCO/Values/OpaqueExpression.cs +++ b/uml4net/POCO/Values/OpaqueExpression.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonBehavior; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/StringExpression.cs b/uml4net/POCO/Values/StringExpression.cs index 294be1b3..ea85d399 100644 --- a/uml4net/POCO/Values/StringExpression.cs +++ b/uml4net/POCO/Values/StringExpression.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/TimeConstraint.cs b/uml4net/POCO/Values/TimeConstraint.cs index 012d3d79..6566e4e0 100644 --- a/uml4net/POCO/Values/TimeConstraint.cs +++ b/uml4net/POCO/Values/TimeConstraint.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/TimeExpression.cs b/uml4net/POCO/Values/TimeExpression.cs index 3f43cad1..09409840 100644 --- a/uml4net/POCO/Values/TimeExpression.cs +++ b/uml4net/POCO/Values/TimeExpression.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/TimeInterval.cs b/uml4net/POCO/Values/TimeInterval.cs index 9b64ce6f..9261fbb5 100644 --- a/uml4net/POCO/Values/TimeInterval.cs +++ b/uml4net/POCO/Values/TimeInterval.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure; diff --git a/uml4net/POCO/Values/TimeObservation.cs b/uml4net/POCO/Values/TimeObservation.cs index dad997d9..529cb04c 100644 --- a/uml4net/POCO/Values/TimeObservation.cs +++ b/uml4net/POCO/Values/TimeObservation.cs @@ -20,14 +20,12 @@ namespace uml4net.POCO.Values { - using Extensions; - - using Utils; - using System; using System.Collections.Generic; using uml4net.Decorators; + using uml4net.Extend; + using uml4net.Utils; using uml4net.POCO.Classification; using uml4net.POCO.CommonStructure;