Skip to content

Commit 883f555

Browse files
author
p16089
committed
Lab6-Error handling in Vote API v2
1 parent b0a9304 commit 883f555

2 files changed

Lines changed: 16 additions & 6 deletions

File tree

‎checksum.txt‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
vBUGDp95KcUsKsLdqrWyK-OYlOdlbDO32Sx9hyuw-kN_-VnQ87GmjyhrPOSPxnc0wAw58-KXBPRt9FVck1Q82fpyXbi3OsHRMonM7doR7bwhm9d_N1c7AxhE-39Op4pxkuiEH3ZhKlJ5xyX9bwFCdOrvukttON1TdVKWY-UUfuFjxwUuzrf1t2wRuKYqDwEGpwbzu7tk3jraeZFHW0WlitdoUg0a9nqmDxI7uqfNnldktgvHmxmjdrmXxacJeJDDwqwCwYUxkJlIT8Ucmj8ERLyDlJFSOSPv7oHLRPZcaTtm25vvigfdL6YuLoGyj4VM_GEX3sUvkeMbfxnUl-4W6a7SlAyYHCiZu3ZJLtcu3HG8Hyu-VRq2wxQsxmfkt-3DJeB_MYF9CVENWkS5t6WdYCC9vJgDKWmhBP1HJLXW9V6QAhBQI3Z_c0vGwthLwDVZNMrYD3Jb-LVtH3MoSZ-gOiMk4YIY-HtTktEr4v4hAFXKFTvqwZFsPvcPZjjfLr1HtGoXjsZwOhUpAvlolOFXjSlNTuUOaehMDb9u1JJxxNcs5aGdIyshApON7zPoebSHebBOHrX2gQUaikyZueuZH2OJ4rFidCun-9EiVPumViGK5tx0uHikZIANmiB_aXrbrgqByh76ALTg5onI9s7oI8s3_14FzaH0n54mHaC7klM
1+
asmDNXEkHUER7DYDa06uEdAIj5eTg3fuI9LojVcR17Geeb1oHL6YDFgn6zrEf1qZHQuQSLZvU6IMbxsOSfPKRKqz0j3HHHVkBpN2kdBxIoFPnJZ8fA_-nUXwLfZao6Pi5bs5on2jWCwse73Ior3fdl8idNRcKOkn-q20OGGHWPM9Kb0nz9NZg5CeLKcMrww1AYRewkjgGBWgTkYRlXEjqeutpjEj0PXGnJGjaqbhjbL0osv3tK8Xa_BuCrOW8EPbenyaCIL8hJl1MsywOFp3iJ2Gwgb6pGBN1eugCbi3o4DK9blbnS-KjKFom1adJqG3PkH9ggfTEfVu4niaJFxGdMTAMEnGRxEH-DEYYXR9aa4JQeLr3MgY40nRfGL09l9uyAyaevHR5j4DZCCmBRUXfopF7E1hbO-sZPpwx4J4ZvrNjBMvSAGnyeR2JMwJ9zooFPzbD-D3WfB5unIHfskrf77S9RzB8xK2850KwqWQ-ZROtCvcdNc7b_Onok2tA94IaddkVr3KXokKqkR_fUPXZqUk7CdlyWDapw02NOC2iBCFgx-yoToCF9sIRMEez2lGaPZtxtlkgA3VFgz5ZeEN6zW4v_0yVWSdn_QY7njrLsR5Ckzx5HH4MRUwtskoRg7vLw6H1ZlLilVuV15DCAg8XlqkdVZurxqnTlx7aKOisJw

‎update/sys_ws_operation_05fd9a6a134b1200ed373d62f244b0a1.xml‎

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,27 @@
1616
// Validate if poll record exists
1717
var pollRecord = new GlideRecordSecure("x_snc_polls_poll");
1818
pollRecord.get(pollId);
19+
if(!pollRecord.isValidRecord()){
20+
throw new sn_ws_err.NotFoundError("Poll Not found");
21+
}
1922
2023
var voteData = request.body.data.votes;
2124
25+
// Verify if already voted
26+
var pollResponseRecord = new GlideRecordSecure("x_snc_polls_poll_response");
27+
pollResponseRecord.addQuery("poll", pollId);
28+
pollResponseRecord.addQuery("sys_created_by", gs.getUserName());
29+
pollResponseRecord.query();
30+
if(pollResponseRecord.next()){
31+
throw new sn_ws_err.ConflictError("Already voted");
32+
}
33+
2234
// Record votes
2335
pollHelper.voteInPoll(voteData, pollId);
2436
2537
// Set response details
2638
response.setStatus(201);
27-
response.setContentType("application/json");
28-
var responseBody = '{"message":"Voting successful"}';
29-
response.getStreamWriter().writeString(responseBody);
39+
3040
})(request, response);]]></operation_script>
3141
<operation_uri>/api/x_snc_polls/v2/poll/{poll_id}/vote</operation_uri>
3242
<produces>application/json,application/xml,text/xml</produces>
@@ -41,15 +51,15 @@
4151
<sys_created_on>2016-04-30 22:43:41</sys_created_on>
4252
<sys_customer_update>true</sys_customer_update>
4353
<sys_id>05fd9a6a134b1200ed373d62f244b0a1</sys_id>
44-
<sys_mod_count>0</sys_mod_count>
54+
<sys_mod_count>1</sys_mod_count>
4555
<sys_name>Vote (v2)</sys_name>
4656
<sys_package display_value="Polls" source="x_snc_polls">cd1f2766133e1200ed373d62f244b082</sys_package>
4757
<sys_policy/>
4858
<sys_replace_on_upgrade>false</sys_replace_on_upgrade>
4959
<sys_scope display_value="Polls">cd1f2766133e1200ed373d62f244b082</sys_scope>
5060
<sys_update_name>sys_ws_operation_05fd9a6a134b1200ed373d62f244b0a1</sys_update_name>
5161
<sys_updated_by>admin</sys_updated_by>
52-
<sys_updated_on>2016-04-30 22:43:41</sys_updated_on>
62+
<sys_updated_on>2016-04-30 22:50:17</sys_updated_on>
5363
<web_service_definition display_value="Poll">e917dee6134b1200ed373d62f244b08f</web_service_definition>
5464
<web_service_version display_value="v2">0dfd9a6a134b1200ed373d62f244b09f</web_service_version>
5565
</sys_ws_operation>

0 commit comments

Comments
 (0)