Challenge Overview
��
Domain Shared Contacts
Objective
- Create a RESTful web service that uses the��Google Apps Domain Shared Contacts API Version 2.0��to perform CRUD (Create, Read, Update and Delete) actions on Domain Shared Contacts for a Google Domain. ��
- In addition, an Admin end-user should be able to upload a CSV file that can be parsed and fed into the Domain Shared Contacts.
Technical Requirements
This solution shall be written in Java to run in Google App Engine.
Deliverables: Java source code.
Create a UserServices class that extends the provided class PowerToolsGenericServlet. PowerToolsGenericServlet is an abstract class that extends HTTP servlet, and uses the template method pattern to delegate the implementation of each one of the HTTP methods to subclasses.��
Reference��Contact kind��for details of contact properties.
Exception Handling:
Your code should expect to receive HTTP 5XX responses from the API server indicating that your quota has been exceeded or inconsequential server errors have occurred. If you get these responses, use an exponential back-off algorithm to retry your requests. ����A recommended exponential��back-off algorithm is provided here.
The Post method can insert entries based on��these instructions.
in the following structure:
Property |
Description |
authToken |
Authentication token to be used to access the Google provisioning API |
authMethod |
"ClientLogin" or "OAuth". Defines the type of authentication being used, and determines how the authToken should be used. |
domain |
The Google apps domain from which to connect, e.g. "appirio.com" |
requestPayload |
JSON structure with input information to execute a specific operation. For the specification of the payload format for each different use case, please refer to the Use Cases section below. �� This is loaded with the content of the http request. and is a JsonObject. |