Skip to content

Commit b67b78c

Browse files
authored
Merge pull request #332 from AmericaSCORESBayArea/fix/update-remaining-error-handling-cases
Sandbox: Update Remaining Error Handling Cases
2 parents f3422df + 8c4202f commit b67b78c

File tree

8 files changed

+115
-300
lines changed

8 files changed

+115
-300
lines changed

src/main/mule/attendances.xml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,10 @@ payload map ( payload01 , indexOfPayload01 ) -> {
4242
doc:name="Upsert successful?"
4343
doc:id="033792a0-3de2-43bc-8b8e-e792264fa3eb">
4444
<when
45-
expression="#[(payload.items..*statusCode default []) contains 'UNABLE_TO_LOCK_ROW']">
46-
<raise-error
47-
doc:name="Raise error"
48-
doc:id="31566e63-753c-4bae-9492-05a5ac7da221"
49-
type="SALESFORCE-CUSTOM:UNABLE_TO_LOCK_ROW" />
45+
expression="#[payload.successful == false]">
46+
<set-variable value="#['SALESFORCE_ATTENDANCE_CREATE:' ++ (payload.items[0].statusCode default 'UNKNOWN')]" doc:name="Set Custom Error Type" doc:id="be1b9699-37ed-4d17-96b7-3c400670cfea" variableName="errorCustomType" />
47+
<set-variable value="#[payload.items[0].message default 'Unknown Error']" doc:name="Set Custom Error Message" doc:id="1af6ccb4-8ef5-4b7e-b50a-dc286d8677be" variableName="errorCustomMessage" />
48+
<raise-error doc:name="Raise error" doc:id="2494818a-ac68-43c1-931e-10c19593e6ef" type="CUSTOM:CUSTOM_ERROR" description="Something went wrong while creating an attendance record." />
5049
</when>
5150
</choice>
5251
</try>

src/main/mule/coach.xml

Lines changed: 23 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -585,6 +585,13 @@ payload map ( payload01 , indexOfPayload01 ) -> {
585585
ExternalId__c: payload01.StudentId ++ '-' ++ vars.sessionId
586586
}]]]></salesforce:records>
587587
</salesforce:upsert>
588+
<choice doc:name="Upsert successful?" doc:id="ec201558-e363-41ba-90be-362ae01fbc41">
589+
<when expression="#[payload.successful == false]">
590+
<set-variable value="#['SALESFORCE_ATTENDANCE_CREATE:' ++ (payload.items[0].statusCode default 'UNKNOWN')]" doc:name="Set Custom Error Type" doc:id="fcf6ce12-9747-44d5-a210-1bdf9a8e87c7" variableName="errorCustomType" />
591+
<set-variable value='#[%dw 2.0&#10;output text/plain&#10;---&#10;(payload.items[0].message default "Error While Creating Attendances.") ++ &#10;(&#10; payload.items map ((payload01, indexOfPayload01) -&gt; &#10; " Message: " ++ write(payload01.payload default "", "application/json")&#10; ) joinBy ""&#10;)]' doc:name="Set Custom Error Message" doc:id="d63cc331-c4c7-42ca-86b3-97f9ab84820f" variableName="errorCustomMessage" />
592+
<raise-error doc:name="Raise error" doc:id="0186bc58-0909-4a09-a760-10b16852fbec" type="CUSTOM:CUSTOM_ERROR" description="Something went wrong while updating an attendance record." />
593+
</when>
594+
</choice>
588595
<logger
589596
level="INFO"
590597
doc:name="Log Upsert"
@@ -1182,31 +1189,14 @@ payload map ( payload01 , indexOfPayload01 ) -> {
11821189
Attended__c: payload01.Attended,
11831190
}]]]></salesforce:records>
11841191
</salesforce:update>
1185-
<choice
1186-
doc:name="Update successful?"
1187-
doc:id="3cf4d8b6-1188-40ca-af80-45874cd50d38">
1188-
<when expression="#[payload.items[0].successful == false]">
1189-
<ee:transform
1190-
doc:name="Create Error Response"
1191-
doc:id="52593c7f-e10a-4e17-89f4-17311b977136">
1192-
<ee:message>
1193-
<ee:set-payload><![CDATA[%dw 2.0
1194-
output application/json
1195-
---
1196-
{
1197-
message: payload.items[0].message
1198-
}]]></ee:set-payload>
1199-
</ee:message>
1200-
<ee:variables>
1201-
<ee:set-variable variableName="httpStatus"><![CDATA[400]]></ee:set-variable>
1202-
</ee:variables>
1203-
</ee:transform>
1192+
<choice doc:name="Update successful?" doc:id="81cab58f-3b0f-4844-9155-b03821c88f6f">
1193+
<when expression="#[payload.successful == false]">
1194+
<set-variable value="#['SALESFORCE_ATTENDANCE_UPDATE:' ++ (payload.items[0].statusCode default 'UNKNOWN')]" doc:name="Set Custom Error Type" doc:id="de0127f1-9543-4247-98f0-4919cad5e132" variableName="errorCustomType" />
1195+
<set-variable value='#[%dw 2.0&#10;output text/plain&#10;---&#10;(payload.items[0].message default "Error While Updating Attendances.") ++ &#10;(&#10; payload.items map ((payload01, indexOfPayload01) -&gt; &#10; " Message: " ++ write(payload01.payload default "", "application/json")&#10; ) joinBy ""&#10;)]' doc:name="Set Custom Error Message" doc:id="8d77c108-0e3c-4930-9f49-9734837df79c" variableName="errorCustomMessage" />
1196+
<raise-error doc:name="Raise error" doc:id="a938155b-3242-4787-a33d-46ab6e9cdfaa" type="CUSTOM:CUSTOM_ERROR" description="Something went while updating an attendance record." />
12041197
</when>
1205-
<otherwise>
1206-
<ee:transform
1207-
doc:name="Create Response"
1208-
doc:id="fb3860fc-e16f-4661-ac7a-6df2a8cb4053"
1209-
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd">
1198+
</choice>
1199+
<ee:transform doc:name="Create Response" doc:id="fb3860fc-e16f-4661-ac7a-6df2a8cb4053" xsi:schemaLocation="http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd">
12101200
<ee:message>
12111201
<ee:set-payload><![CDATA[%dw 2.0
12121202
output application/json
@@ -1216,13 +1206,7 @@ output application/json
12161206
}]]></ee:set-payload>
12171207
</ee:message>
12181208
</ee:transform>
1219-
</otherwise>
1220-
</choice>
1221-
<logger
1222-
level="INFO"
1223-
doc:name="Log Created Response"
1224-
doc:id="6277debb-2aa4-4703-97d1-66d20cd0d8e0"
1225-
message="#[payload]" />
1209+
<logger level="INFO" doc:name="Log Created Response" doc:id="6277debb-2aa4-4703-97d1-66d20cd0d8e0" message="#[payload]" />
12261210
</flow>
12271211
<flow
12281212
name="post:\coach\(coachId)\teamseasons\(teamSeasonId)\sessions\(sessionId)\assessments:application\json:salesforce-data-api-config">
@@ -1266,31 +1250,14 @@ output application/json
12661250
doc:name="Create"
12671251
doc:id="b126f117-35b4-46a1-b69d-df1514f0915c"
12681252
config-ref="Salesforce_Config" />
1269-
<choice
1270-
doc:name="Assessment creation successful?"
1271-
doc:id="1c1e9ccb-357f-4ef7-8c80-10ce38ec8913">
1272-
<when expression="#[payload.items[0].successful == false]">
1273-
<ee:transform
1274-
doc:name="Create Error Response"
1275-
doc:id="7f75a24d-38cd-4ac0-b13a-3383a1bd303e">
1276-
<ee:message>
1277-
<ee:set-payload><![CDATA[%dw 2.0
1278-
output application/json
1279-
---
1280-
{
1281-
message: payload.items[0].message
1282-
}]]></ee:set-payload>
1283-
</ee:message>
1284-
<ee:variables>
1285-
<ee:set-variable variableName="httpStatus"><![CDATA[400]]></ee:set-variable>
1286-
</ee:variables>
1287-
</ee:transform>
1253+
<choice doc:name="Upsert successful?" doc:id="dfe49b47-2fee-468f-94de-a249c892f867">
1254+
<when expression="#[payload.successful == false]">
1255+
<set-variable value="#['SALESFORCE_ASSESSMENT_CREATE:' ++ (payload.items[0].statusCode default 'UNKNOWN')]" doc:name="Set Custom Error Type" doc:id="116d4fa4-38ec-4d54-aa7e-5a37736d91c3" variableName="errorCustomType" />
1256+
<set-variable value="#[payload.items[0].message default 'Unknown Error']" doc:name="Set Custom Error Message" doc:id="69573011-d907-4da1-9113-f1eff05db828" variableName="errorCustomMessage" />
1257+
<raise-error doc:name="Raise error" doc:id="2be38cb1-dd0f-47cc-be2f-6fa6cc505545" type="CUSTOM:CUSTOM_ERROR" description="Something went while creating an assessment record." />
12881258
</when>
1289-
<otherwise>
1290-
<ee:transform
1291-
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd"
1292-
doc:name="Create Response"
1293-
doc:id="aa2451bf-0b3f-4de0-9be9-fd354e65d674">
1259+
</choice>
1260+
<ee:transform xsi:schemaLocation="http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd" doc:name="Create Response" doc:id="aa2451bf-0b3f-4de0-9be9-fd354e65d674">
12941261
<ee:message>
12951262
<ee:set-payload><![CDATA[%dw 2.0
12961263
output application/json
@@ -1300,8 +1267,6 @@ output application/json
13001267
}]]></ee:set-payload>
13011268
</ee:message>
13021269
</ee:transform>
1303-
</otherwise>
1304-
</choice>
13051270
<logger
13061271
level="INFO"
13071272
doc:name="Log Created Response"
@@ -1327,7 +1292,7 @@ output application/json
13271292
output application/json
13281293
---
13291294
{
1330-
message: "Assessment updated"
1295+
message: "(not implemented)"
13311296
}]]></ee:set-payload>
13321297
</ee:message>
13331298
</ee:transform>

src/main/mule/contacts.xml

Lines changed: 10 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -181,14 +181,6 @@ payload]]>
181181
<logger doc:id="e9c02dd8-02dd-495d-8e01-b26db3d73ec2" doc:name="Logger" level="INFO" message="Fuzzy contact match found"></logger>
182182
<set-variable doc:name="Set Custom Error Type" value="#['SALESFORCE_CONTACT_CREATE:' ++ (payload.items[0].statusCode default 'UNKNOWN')]" variableName="errorCustomType" />
183183
<set-variable value="#[payload.items[0].message default 'Unknown Error']" doc:name="Set Custom Error Message" doc:id="3881f772-34d8-4c47-88d3-1aab40c248d1" variableName="errorCustomMessage" />
184-
<choice doc:name="Choice" doc:id="68822a13-1319-472a-8858-780e4566d86d">
185-
<when expression='#[vars.errorCustomType == "SALESFORCE_CONTACT_CREATE:DUPLICATES_DETECTED"]'>
186-
<set-variable value="409" doc:name="Set Status Code" doc:id="03654d66-3aed-477e-88a3-e97dd843b1b3" variableName="httpStatus" />
187-
</when>
188-
<when expression='#[vars.errorCustomType == "SALESFORCE_CONTACT_CREATE:MALFORMED_ID"]'>
189-
<set-variable value="400" doc:name="Set Status Code" doc:id="28d20a62-20e9-4298-8fb0-2c715fa266ef" variableName="httpStatus" />
190-
</when>
191-
</choice>
192184
<raise-error doc:id="ce9837bc-7e7b-40a4-a132-7f35e82f12bc" doc:name="Raise error" type="CUSTOM:CUSTOM_ERROR" description="Something went wrong while creating a contact. " />
193185
</when>
194186
<otherwise>
@@ -297,14 +289,6 @@ payload]]>
297289
<logger doc:id="7179ab2b-5642-4f83-a3d6-ff4161272ef3" doc:name="Logger" level="INFO" message="Fuzzy contact match found"></logger>
298290
<set-variable doc:name="Set Custom Error Type" value="#['SALESFORCE_CONTACT_CREATE:' ++ (payload.items[0].statusCode default 'UNKNOWN')]" variableName="errorCustomType" />
299291
<set-variable value="#[payload.items[0].message default 'Unknown Error']" doc:name="Set Custom Error Message" doc:id="3881f772-34d8-4c47-88d3-1aab40c248d1" variableName="errorCustomMessage" />
300-
<choice doc:name="Choice" doc:id="f7787813-3e7d-464d-8c06-e18f246213f9">
301-
<when expression='#[vars.errorCustomType == "SALESFORCE_CONTACT_CREATE:DUPLICATES_DETECTED"]'>
302-
<set-variable value="409" doc:name="Set Status Code" doc:id="796109aa-e4db-494c-b26c-b2bce9b90c44" variableName="httpStatus" />
303-
</when>
304-
<when expression='#[vars.errorCustomType == "SALESFORCE_CONTACT_CREATE:MALFORMED_ID"]'>
305-
<set-variable value="400" doc:name="Set Status Code" doc:id="65f5844b-33d7-4253-b66f-550d08d48f3f" variableName="httpStatus" />
306-
</when>
307-
</choice>
308292
<raise-error doc:id="ce9837bc-7e7b-40a4-a132-7f35e82f12bc" doc:name="Raise error" type="CUSTOM:CUSTOM_ERROR" description="Something went wrong while creating a contact. " />
309293
</when>
310294
<otherwise>
@@ -1158,37 +1142,15 @@ output application/java
11581142
</ee:message>
11591143
</ee:transform>
11601144
<salesforce:update config-ref="Salesforce_Config" doc:id="22d1f2d0-03bc-4987-82e8-200abcd9b67a" doc:name="Update" type="Contact"></salesforce:update>
1161-
<choice doc:id="61a478f2-2c8f-430b-a6ad-a5435c432f7a" doc:name="Update successful?">
1162-
<when expression="#[payload.items[0].successful == false]">
1163-
<ee:transform doc:id="7c3a7df0-eb2b-4a4d-9182-1fcfd74a48fb" doc:name="Transform Message">
1164-
<ee:message>
1165-
<ee:set-payload>
1166-
1167-
1168-
<![CDATA[%dw 2.0
1169-
output application/json
1170-
---
1171-
{
1172-
message: payload.items[0].message
1173-
}]]>
1174-
1175-
1176-
</ee:set-payload>
1177-
</ee:message>
1178-
<ee:variables>
1179-
<ee:set-variable variableName="httpStatus">
1180-
1181-
1182-
<![CDATA[400]]>
1183-
1184-
1185-
</ee:set-variable>
1186-
</ee:variables>
1187-
</ee:transform>
1188-
</when>
1189-
<otherwise>
1190-
<flow-ref name="get:\contacts\(contactId):salesforce-data-api-config"></flow-ref>
1191-
<ee:transform doc:name="Create Response" xsi:schemaLocation="http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd">
1145+
<choice doc:name="Update successful?" doc:id="c09390f1-d74b-458c-8fec-c93ce0b08f8f">
1146+
<when expression="#[payload.successful == false]">
1147+
<set-variable value="#['SALESFORCE_CONTACT_UPDATE:' ++ (payload.items[0].statusCode default 'UNKNOWN')]" doc:name="Set Custom Error Type" doc:id="7ad844ad-82d9-4148-9596-96f4a5f508b1" variableName="errorCustomType" />
1148+
<set-variable value="#[payload.items[0].message default 'Unknown Error']" doc:name="Set Custom Error Message" doc:id="fd73d10f-89d1-4744-b11d-9c8e02b886d6" variableName="errorCustomMessage" />
1149+
<raise-error doc:name="Raise error" doc:id="42cf2f5b-f5ef-4d5b-9ef5-6eae1595fb5e" type="CUSTOM:CUSTOM_ERROR" description="Something went while updating a contact record." />
1150+
</when>
1151+
</choice>
1152+
<flow-ref name="get:\contacts\(contactId):salesforce-data-api-config"></flow-ref>
1153+
<ee:transform doc:name="Create Response" xsi:schemaLocation="http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd">
11921154
<ee:message>
11931155
<ee:set-payload>
11941156

@@ -1205,9 +1167,7 @@ output application/json
12051167
</ee:set-payload>
12061168
</ee:message>
12071169
</ee:transform>
1208-
</otherwise>
1209-
</choice>
1210-
<logger doc:id="07b47086-0cbc-4db9-9012-faaabb58cff9" doc:name="Log Created Response" level="INFO" message="#[payload]"></logger>
1170+
<logger doc:id="07b47086-0cbc-4db9-9012-faaabb58cff9" doc:name="Log Created Response" level="INFO" message="#[payload]"></logger>
12111171
</flow>
12121172
<flow doc:id="912d6ddf-b2bf-4f75-837a-21b1feccf869" name="get:\contacts\(contactId)\waiver\(waiverId):salesforce-data-api-config">
12131173
<logger doc:id="c42d1dd4-9901-45ee-927f-9d59626fafc0" doc:name="Log entry-flow" level="INFO" message="Method and Request Path stored as vars: method=#[vars.method], request path=#[vars.requestPath]. queryparams=#[attributes.queryParams]"></logger>

src/main/mule/enrollments.xml

Lines changed: 8 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -246,31 +246,14 @@ output application/java
246246
doc:name="Update"
247247
doc:id="db1b614e-3b4c-4db6-8195-a6e9617257e4"
248248
config-ref="Salesforce_Config" />
249-
<choice
250-
doc:name="Update successful?"
251-
doc:id="eb93d985-08a5-4d18-8f5b-9597673b2a24">
252-
<when expression="#[payload.items[0].successful == false]">
253-
<ee:transform
254-
doc:name="Create Error Response"
255-
doc:id="36abc3b2-f428-48ee-b518-a1353e6f235a">
256-
<ee:message>
257-
<ee:set-payload><![CDATA[%dw 2.0
258-
output application/json
259-
---
260-
{
261-
message: payload.items[0].message
262-
}]]></ee:set-payload>
263-
</ee:message>
264-
<ee:variables>
265-
<ee:set-variable variableName="httpStatus"><![CDATA[400]]></ee:set-variable>
266-
</ee:variables>
267-
</ee:transform>
249+
<choice doc:name="Update successful?" doc:id="24b97665-02fd-4dec-bbf7-285f710ea489">
250+
<when expression="#[payload.successful == false]">
251+
<set-variable value="#['SALESFORCE_ENROLLMENT_UPDATE:' ++ (payload.items[0].statusCode default 'UNKNOWN')]" doc:name="Set Custom Error Type" doc:id="b9040877-1f5b-4788-a786-b5384e68f239" variableName="errorCustomType" />
252+
<set-variable value="#[payload.items[0].message default 'Unknown Error']" doc:name="Set Custom Error Message" doc:id="7c6fec7f-dbc4-46a3-917a-183fd5bc796b" variableName="errorCustomMessage" />
253+
<raise-error doc:name="Raise error" doc:id="844ccc3d-6ada-4719-aa14-1fad90ea1000" type="CUSTOM:CUSTOM_ERROR" description="Something went while updating an enrollment record." />
268254
</when>
269-
<otherwise>
270-
<ee:transform
271-
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd"
272-
doc:name="Create Response"
273-
doc:id="5cd8fa6a-e3d1-44de-9625-aff048e5fc8f">
255+
</choice>
256+
<ee:transform xsi:schemaLocation="http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd" doc:name="Create Response" doc:id="5cd8fa6a-e3d1-44de-9625-aff048e5fc8f">
274257
<ee:message>
275258
<ee:set-payload><![CDATA[%dw 2.0
276259
output application/json
@@ -280,8 +263,6 @@ output application/json
280263
}]]></ee:set-payload>
281264
</ee:message>
282265
</ee:transform>
283-
</otherwise>
284-
</choice>
285266
<logger
286267
level="INFO"
287268
doc:name="Log Created Response"
@@ -316,7 +297,7 @@ output application/java
316297
<when expression="#[payload.items[0].successful == false]">
317298
<set-variable value="#['SALESFORCE_ENROLLMENT_CREATE:' ++ (payload.items[0].statusCode default 'UNKNOWN')]" doc:name="Set Custom Error Type" doc:id="d5c68077-bb4c-4245-b6c5-68396295759c" variableName="errorCustomType" />
318299
<set-variable value="#[payload.items[0].message default 'Unknown Error']" doc:name="Set Custom Error Message" doc:id="f52e5839-b9ee-4a28-8944-62b63c974bc6" variableName="errorCustomMessage" />
319-
<raise-error doc:name="Raise error" doc:id="20ccb42b-2476-402d-a634-7c7ae8243959" type="CUSTOM:CUSTOM_ERROR" description="Something went wrong while creating a contact. " />
300+
<raise-error doc:name="Raise error" doc:id="20ccb42b-2476-402d-a634-7c7ae8243959" type="CUSTOM:CUSTOM_ERROR" description="Something went wrong while creating an enrollment record. " />
320301
</when>
321302
<otherwise>
322303
<ee:transform xsi:schemaLocation="http://www.mulesoft.org/schema/mule/ee/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd" doc:name="Create Response" doc:id="291c1936-dfea-4dd5-aaba-c30a5a5b4311">

0 commit comments

Comments
 (0)