bin/Be.Stateless.Dsl.Configuration.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Be.Stateless.Dsl.Configuration</name>
    </assembly>
    <members>
        <member name="T:Be.Stateless.Dsl.Configuration.ClrBitness">
            <summary>
            Used to specify the targeted bitness of the .NET Framework.
            </summary>
            <seealso href="https://docs.microsoft.com/en-us/dotnet/api/microsoft.build.utilities.dotnetframeworkarchitecture">DotNetFrameworkArchitecture Enum</seealso>
        </member>
        <member name="F:Be.Stateless.Dsl.Configuration.ClrBitness.Bitness32">
            <summary>
            Indicates the 32-bit .NET Framework.
            </summary>
        </member>
        <member name="F:Be.Stateless.Dsl.Configuration.ClrBitness.Bitness64">
            <summary>
            Indicates the 64-bit .NET Framework.
            </summary>
        </member>
        <member name="M:Be.Stateless.Dsl.Configuration.ConfigurationElement.Apply(Be.Stateless.Dsl.Configuration.SpecificationElement)">
            <summary>
            Apply the children <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/>s of the <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> <paramref
            name="specificationElement"/> to the children of the current <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/> while transforming
            &#8212;rewriting in place&#8212; the <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/>s into their inverse &#8212;undo&#8212; <see
            cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/>s on the fly.
            </summary>
            <param name="specificationElement">
            The <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> whose children <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/>s will be applied to the
            current <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/>.
            </param>
            <exception cref="T:System.InvalidOperationException">
            If a child <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> of the <paramref name="specificationElement"/> cannot be applied
            because it conflicts with an existing child of the current <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/>.
            </exception>
            <remarks>
            <para>
            The children of the <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> <paramref name="specificationElement"/> being applied are
            crawled according to a depth-first search path. Then, for each child <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> being
            applied, its processing will happen according to its <see cref="P:Be.Stateless.Dsl.Configuration.SpecificationElement.Operation"/> and whether the
            current <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/> has a child <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/> satisfying or equating
            this child <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/>.
            </para>
            <para>
            If the current <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/> has no child <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/> that satisfies or
            equates the child <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> being applied and the <see
            cref="P:Be.Stateless.Dsl.Configuration.SpecificationElement.Operation">SpecificationElement.Operation</see> is
            <list type="bullet">
            <item>
            an <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.INSERT"/> or <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.UPSERT"/> operation, then a new <see
            cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/> with the specified name and attributes will be inserted and the child <see
            cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> being applied will be transformed into its inverse <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/>
            with a <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.DELETE"/> operation.
            </item>
            <item>
            an <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.UPDATE"/> operation, then an <see cref="T:System.InvalidOperationException"/> will be thrown.
            </item>
            <item>
            a <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.DELETE"/> operation, then no child <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/> will be deleted and
            the child <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> being applied will be transformed into its inverse <see
            cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> with a <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.NONE"/> operation.
            </item>
            </list>
            </para>
            <para>
            If the current <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/> has one child <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/> that equates the
            child <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> being applied and the <see
            cref="P:Be.Stateless.Dsl.Configuration.SpecificationElement.Operation">SpecificationElement.Operation</see> is
            <list type="bullet">
            <item>
            an <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.INSERT"/> operation, then the equating child <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/> will be
            left untouched and the child <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> being applied will be transformed into its inverse
            <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> with a <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.NONE"/> operation.
            </item>
            <item>
            an <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.UPDATE"/> or <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.UPSERT"/> operation, then, depending on whether
            attributes of the equating child <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/> would have to be scrapped or not, the child
            <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> being applied will be transformed into its inverse <see
            cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> with either an <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.UPDATE"/> or a <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.NONE"/>
            operation.
            </item>
            <item>
            a <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.DELETE"/> operation, then the equating child <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/> will be
            deleted and the child <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> being applied will be transformed into its inverse <see
            cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> with a <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.INSERT"/> operation.
            </item>
            </list>
            <para>
            </para>
            If the current <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/> has one child <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/> that satisfies
            but does not equate the child <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> being applied and the <see
            cref="P:Be.Stateless.Dsl.Configuration.SpecificationElement.Operation">SpecificationElement.Operation</see> is
            <list type="bullet">
            <item>
            an <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.INSERT"/> or a <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.DELETE"/> operation, then an <see
            cref="T:System.InvalidOperationException"/> will be thrown.
            </item>
            <item>
            an <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.UPDATE"/> or <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.UPSERT"/> operation, then, depending on whether
            attributes of the equating child <see cref="T:Be.Stateless.Dsl.Configuration.ConfigurationElement"/> would have to be updated or not, the child <see
            cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/> being applied will be transformed into its inverse <see cref="T:Be.Stateless.Dsl.Configuration.SpecificationElement"/>
            with either an <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.UPDATE"/> or a <see cref="F:Be.Stateless.Dsl.Configuration.Specification.Annotations.Operation.NONE"/> operation.
            </item>
            </list>
            </para>
            </remarks>
            <seealso cref="M:Be.Stateless.Dsl.Configuration.SpecificationElement.IsEquatedBy(Be.Stateless.Dsl.Configuration.ConfigurationElement)"/>
            <seealso cref="M:Be.Stateless.Dsl.Configuration.SpecificationElement.IsSatisfiedBy(Be.Stateless.Dsl.Configuration.ConfigurationElement)"/>
        </member>
        <member name="M:Be.Stateless.Dsl.Configuration.Specification.GetTargetConfigurationFiles">
            <summary>
            Read the value of the mandatory root's <c>targetConfigurationFiles</c> attribute, i.e.
            <c>{urn:schemas.stateless.be:dsl:configuration:annotations:2020}targetConfigurationFiles</c>.
            </summary>
            <returns>
            The list of distinct target configuration files, possibly monikers.
            </returns>
            <exception cref="T:System.InvalidOperationException">
            When the attribute is not present at the root element.
            </exception>
            <remarks>
            Multiple files can be separated by a <c>|</c> character.
            </remarks>
            <seealso cref="T:Be.Stateless.Dsl.Configuration.Resolver.IConfigurationFileResolverStrategy"/>
        </member>
    </members>
</doc>