@@ -101,7 +101,7 @@ private WriteOperationKind ConvertOperationCode(AtomicOperationObject atomicOper
101
101
private ( ResourceIdentityRequirements requirements , IIdentifiable ? primaryResource ) ConvertRef ( AtomicOperationObject atomicOperationObject ,
102
102
RequestAdapterState state )
103
103
{
104
- ResourceIdentityRequirements requirements = CreateIdentityRequirements ( state ) ;
104
+ ResourceIdentityRequirements requirements = CreateDataRequirements ( state ) ;
105
105
IIdentifiable ? primaryResource = null ;
106
106
107
107
AtomicReferenceResult ? refResult = atomicOperationObject . Ref != null
@@ -110,14 +110,7 @@ private WriteOperationKind ConvertOperationCode(AtomicOperationObject atomicOper
110
110
111
111
if ( refResult != null )
112
112
{
113
- requirements = new ResourceIdentityRequirements
114
- {
115
- ResourceType = refResult . ResourceType ,
116
- IdConstraint = requirements . IdConstraint ,
117
- IdValue = refResult . Resource . StringId ,
118
- LidValue = refResult . Resource . LocalId ,
119
- RelationshipName = refResult . Relationship ? . PublicName
120
- } ;
113
+ requirements = CreateRefRequirements ( refResult , requirements ) ;
121
114
122
115
state . WritableRequest ! . PrimaryId = refResult . Resource . StringId ;
123
116
state . WritableRequest . PrimaryResourceType = refResult . ResourceType ;
@@ -132,7 +125,7 @@ private WriteOperationKind ConvertOperationCode(AtomicOperationObject atomicOper
132
125
return ( requirements , primaryResource ) ;
133
126
}
134
127
135
- private ResourceIdentityRequirements CreateIdentityRequirements ( RequestAdapterState state )
128
+ private ResourceIdentityRequirements CreateDataRequirements ( RequestAdapterState state )
136
129
{
137
130
JsonElementConstraint ? idConstraint = state . Request . WriteOperation == WriteOperationKind . CreateResource
138
131
? _options . AllowClientGeneratedIds ? null : JsonElementConstraint . Forbidden
@@ -144,6 +137,18 @@ private ResourceIdentityRequirements CreateIdentityRequirements(RequestAdapterSt
144
137
} ;
145
138
}
146
139
140
+ private static ResourceIdentityRequirements CreateRefRequirements ( AtomicReferenceResult refResult , ResourceIdentityRequirements dataRequirements )
141
+ {
142
+ return new ResourceIdentityRequirements
143
+ {
144
+ ResourceType = refResult . ResourceType ,
145
+ IdConstraint = dataRequirements . IdConstraint ,
146
+ IdValue = refResult . Resource . StringId ,
147
+ LidValue = refResult . Resource . LocalId ,
148
+ RelationshipName = refResult . Relationship ? . PublicName
149
+ } ;
150
+ }
151
+
147
152
private void ConvertRefRelationship ( SingleOrManyData < ResourceObject > relationshipData , AtomicReferenceResult refResult , RequestAdapterState state )
148
153
{
149
154
if ( refResult . Relationship != null )
0 commit comments