@@ -14,7 +14,7 @@ class Property extends InteractionAffordance implements DataSchema {
14
14
required super .forms,
15
15
super .uriVariables,
16
16
super .additionalFields,
17
- this .dataSchema,
17
+ required this .dataSchema,
18
18
this .observable = false ,
19
19
});
20
20
@@ -52,101 +52,105 @@ class Property extends InteractionAffordance implements DataSchema {
52
52
}
53
53
54
54
/// The internal [DataSchema] this property is based on.
55
- final DataSchema ? dataSchema;
55
+ final DataSchema dataSchema;
56
56
57
57
@override
58
- String ? get title => dataSchema? .title;
58
+ String ? get title => dataSchema.title;
59
59
60
60
@override
61
- Map <String , String >? get titles => dataSchema? .titles;
61
+ Map <String , String >? get titles => dataSchema.titles;
62
62
63
63
@override
64
- String ? get description => dataSchema? .description;
64
+ String ? get description => dataSchema.description;
65
65
66
66
@override
67
- Map <String , String >? get descriptions => dataSchema? .descriptions;
67
+ Map <String , String >? get descriptions => dataSchema.descriptions;
68
68
69
69
@override
70
- List <String >? get atType => dataSchema? .atType;
70
+ List <String >? get atType => dataSchema.atType;
71
71
72
72
@override
73
- Object ? get constant => dataSchema? .constant;
73
+ Object ? get constant => dataSchema.constant;
74
74
75
75
@override
76
- Object ? get defaultValue => dataSchema? .defaultValue;
76
+ Object ? get defaultValue => dataSchema.defaultValue;
77
77
78
78
@override
79
- List <Object ?>? get enumeration => dataSchema? .enumeration;
79
+ List <Object ?>? get enumeration => dataSchema.enumeration;
80
80
81
81
@override
82
- String ? get format => dataSchema? .format;
82
+ String ? get format => dataSchema.format;
83
83
84
84
@override
85
- List <DataSchema >? get oneOf => dataSchema? .oneOf;
85
+ List <DataSchema >? get oneOf => dataSchema.oneOf;
86
86
87
87
@override
88
- bool get readOnly => dataSchema? .readOnly ?? false ;
88
+ bool get readOnly => dataSchema.readOnly ?? false ;
89
89
90
90
@override
91
- String ? get type => dataSchema? .type;
91
+ String ? get type => dataSchema.type;
92
92
93
93
@override
94
- String ? get unit => dataSchema? .unit;
94
+ String ? get unit => dataSchema.unit;
95
95
96
96
@override
97
- bool get writeOnly => dataSchema? .writeOnly ?? false ;
97
+ bool get writeOnly => dataSchema.writeOnly ?? false ;
98
98
99
99
@override
100
- String ? get contentEncoding => dataSchema? .contentEncoding;
100
+ String ? get contentEncoding => dataSchema.contentEncoding;
101
101
102
102
@override
103
- String ? get contentMediaType => dataSchema? .contentMediaType;
103
+ String ? get contentMediaType => dataSchema.contentMediaType;
104
104
105
105
@override
106
- num ? get exclusiveMaximum => dataSchema? .exclusiveMaximum;
106
+ num ? get exclusiveMaximum => dataSchema.exclusiveMaximum;
107
107
108
108
@override
109
- num ? get exclusiveMinimum => dataSchema? .exclusiveMinimum;
109
+ num ? get exclusiveMinimum => dataSchema.exclusiveMinimum;
110
110
111
111
@override
112
- List <DataSchema >? get items => dataSchema? .items;
112
+ List <DataSchema >? get items => dataSchema.items;
113
113
114
114
@override
115
- int ? get maxItems => dataSchema? .maxItems;
115
+ int ? get maxItems => dataSchema.maxItems;
116
116
117
117
@override
118
- int ? get maxLength => dataSchema? .maxLength;
118
+ int ? get maxLength => dataSchema.maxLength;
119
119
120
120
@override
121
- num ? get maximum => dataSchema? .maximum;
121
+ num ? get maximum => dataSchema.maximum;
122
122
123
123
@override
124
- int ? get minItems => dataSchema? .minItems;
124
+ int ? get minItems => dataSchema.minItems;
125
125
126
126
@override
127
- int ? get minLength => dataSchema? .minItems;
127
+ int ? get minLength => dataSchema.minItems;
128
128
129
129
@override
130
- num ? get minimum => dataSchema? .minimum;
130
+ num ? get minimum => dataSchema.minimum;
131
131
132
132
@override
133
- num ? get multipleOf => dataSchema? .multipleOf;
133
+ num ? get multipleOf => dataSchema.multipleOf;
134
134
135
135
@override
136
- String ? get pattern => dataSchema? .pattern;
136
+ String ? get pattern => dataSchema.pattern;
137
137
138
138
@override
139
- Map <String , DataSchema >? get properties => dataSchema? .properties;
139
+ Map <String , DataSchema >? get properties => dataSchema.properties;
140
140
141
141
@override
142
- List <String >? get required => dataSchema? .required ;
142
+ List <String >? get required => dataSchema.required ;
143
143
144
144
/// A hint that indicates whether Servients hosting the Thing and
145
145
/// Intermediaries should provide a Protocol Binding that supports the
146
146
/// `observeproperty` and `unobserveproperty` operations for this Property.
147
147
final bool observable;
148
148
149
149
@override
150
- Map <String , dynamic > get additionalFields =>
151
- dataSchema? .additionalFields ?? {};
150
+ Map <String , dynamic > get additionalFields {
151
+ final additionalDataSchemaFields = dataSchema.additionalFields.entries
152
+ .where ((entry) => super .additionalFields.containsKey (entry.key));
153
+
154
+ return Map .fromEntries (additionalDataSchemaFields);
155
+ }
152
156
}
0 commit comments