|
21 | 21 | import com.sendsafely.dto.EnterpriseInfo;
|
22 | 22 | import com.sendsafely.dto.PackageURL;
|
23 | 23 | import com.sendsafely.dto.UserInformation;
|
| 24 | +import com.sendsafely.dto.request.AddContactGroupAsRecipientRequest; |
24 | 25 | import com.sendsafely.dto.request.AddDropzoneRecipientRequest;
|
| 26 | +import com.sendsafely.dto.request.AddUserToContactGroupRequest; |
25 | 27 | import com.sendsafely.dto.request.AddMessageRequest;
|
26 | 28 | import com.sendsafely.dto.request.AddRecipientRequest;
|
27 | 29 | import com.sendsafely.dto.request.AddRecipientsRequest;
|
| 30 | +import com.sendsafely.dto.request.CreateContactGroupRequest; |
28 | 31 | import com.sendsafely.dto.request.GetDropzoneRecipientRequest;
|
29 | 32 | import com.sendsafely.dto.request.GetMessageRequest;
|
| 33 | +import com.sendsafely.dto.request.GetContactGroupsRequest; |
| 34 | +import com.sendsafely.dto.request.RemoveContactGroupAsRecipientRequest; |
| 35 | +import com.sendsafely.dto.request.RemoveContactGroupRequest; |
| 36 | +import com.sendsafely.dto.request.RemoveUserFromContactGroupRequest; |
30 | 37 | import com.sendsafely.enums.APIResponse;
|
31 | 38 | import com.sendsafely.enums.CountryCode;
|
32 | 39 | import com.sendsafely.enums.Endpoint;
|
|
35 | 42 | import com.sendsafely.exceptions.DropzoneRecipientFailedException;
|
36 | 43 | import com.sendsafely.exceptions.PasswordRequiredException;
|
37 | 44 | import com.sendsafely.exceptions.RecipientFailedException;
|
| 45 | +import com.sendsafely.exceptions.RemoveContactGroupAsRecipientFailedException; |
| 46 | +import com.sendsafely.exceptions.RemoveContactGroupFailedException; |
| 47 | +import com.sendsafely.exceptions.RemoveEmailContactGroupFailedException; |
| 48 | +import com.sendsafely.exceptions.ContactGroupException; |
| 49 | +import com.sendsafely.exceptions.AddEmailContactGroupFailedException; |
38 | 50 | import com.sendsafely.exceptions.ApproverRequiredException;
|
| 51 | +import com.sendsafely.exceptions.CreateContactGroupFailedException; |
39 | 52 | import com.sendsafely.exceptions.CreatePackageFailedException;
|
40 | 53 | import com.sendsafely.exceptions.DeletePackageException;
|
41 | 54 | import com.sendsafely.exceptions.EnterpriseInfoFailedException;
|
42 | 55 | import com.sendsafely.exceptions.FinalizePackageFailedException;
|
| 56 | +import com.sendsafely.exceptions.GetContactGroupsFailedException; |
43 | 57 | import com.sendsafely.exceptions.GetPackagesException;
|
44 | 58 | import com.sendsafely.exceptions.InvalidCredentialsException;
|
45 | 59 | import com.sendsafely.exceptions.LimitExceededException;
|
|
52 | 66 | import com.sendsafely.exceptions.UploadFileException;
|
53 | 67 | import com.sendsafely.exceptions.UserInformationFailedException;
|
54 | 68 | import com.sendsafely.file.FileManager;
|
| 69 | +import com.sendsafely.handlers.AddContactGroupAsRecipientHandler; |
55 | 70 | import com.sendsafely.handlers.AddDropzoneRecipientHandler;
|
| 71 | +import com.sendsafely.handlers.AddUserContactGroupHandler; |
56 | 72 | import com.sendsafely.handlers.AddFileHandler;
|
57 | 73 | import com.sendsafely.handlers.AddMessageHandler;
|
58 | 74 | import com.sendsafely.handlers.AddRecipientHandler;
|
59 | 75 | import com.sendsafely.handlers.AddRecipientsHandler;
|
| 76 | +import com.sendsafely.handlers.CreateContactGroupHandler; |
60 | 77 | import com.sendsafely.handlers.CreatePackageHandler;
|
61 | 78 | import com.sendsafely.handlers.DeletePackageHandler;
|
62 | 79 | import com.sendsafely.handlers.DownloadAndDecryptFileHandler;
|
63 | 80 | import com.sendsafely.handlers.EnterpriseInfoHandler;
|
64 | 81 | import com.sendsafely.handlers.FinalizePackageHandler;
|
| 82 | +import com.sendsafely.handlers.GetContactGroupsHandler; |
65 | 83 | import com.sendsafely.handlers.GetDropzoneRecipientHandler;
|
66 | 84 | import com.sendsafely.handlers.GetMessageHandler;
|
67 | 85 | import com.sendsafely.handlers.GetPackagesHandler;
|
68 | 86 | import com.sendsafely.handlers.GetRecipientHandler;
|
69 | 87 | import com.sendsafely.handlers.HandlerFactory;
|
70 | 88 | import com.sendsafely.handlers.PackageInformationHandler;
|
71 | 89 | import com.sendsafely.handlers.ParseLinksHandler;
|
| 90 | +import com.sendsafely.handlers.RemoveContactGroupAsRecipientHandler; |
| 91 | +import com.sendsafely.handlers.RemoveContactGroupHandler; |
72 | 92 | import com.sendsafely.handlers.RemoveDropzoneRecipientHandler;
|
| 93 | +import com.sendsafely.handlers.RemoveUserContactGroupHandler; |
73 | 94 | import com.sendsafely.handlers.RemoveRecipientHandler;
|
74 | 95 | import com.sendsafely.handlers.UpdatePackageLifeHandler;
|
75 | 96 | import com.sendsafely.handlers.UpdateRecipientHandler;
|
@@ -746,5 +767,101 @@ else if (!response.equals(APIResponse.SUCCESS.toString()))
|
746 | 767 | return defaultCredentials;
|
747 | 768 |
|
748 | 769 | }
|
| 770 | + |
| 771 | + /** |
| 772 | + * API to create a contact group |
| 773 | + * Use this to create a new contact group. Will accept a group name. Returned values will include a contact group Id that will be useful |
| 774 | + * for other calls against the api. |
| 775 | + * |
| 776 | + * @param groupName |
| 777 | + * @return String of groupId |
| 778 | + * @throws CreateContactGroupFailedException |
| 779 | +
|
| 780 | + */ |
| 781 | + public String createContactGroup(String groupName) throws CreateContactGroupFailedException{ |
| 782 | + CreateContactGroupHandler handler = new CreateContactGroupHandler(uploadManager, new CreateContactGroupRequest(uploadManager.getJsonManager(), groupName)); |
| 783 | + return handler.makeRequest(); |
| 784 | + } |
| 785 | + |
| 786 | + /** |
| 787 | + * API to remove a contact group |
| 788 | + * Use this to remove a contact group. Will accept a group id. No values will be returned. |
| 789 | + * If the api fails, the RemoveContactGroupFailedException will be triggered. |
| 790 | + * |
| 791 | + * @param groupId |
| 792 | + * @throws RemoveContactGroupFailedException |
| 793 | +
|
| 794 | + */ |
| 795 | + public void deleteContactGroup(String groupId) throws RemoveContactGroupFailedException{ |
| 796 | + RemoveContactGroupHandler handler = new RemoveContactGroupHandler(uploadManager, new RemoveContactGroupRequest(uploadManager.getJsonManager(), groupId)); |
| 797 | + handler.makeRequest(); |
| 798 | + } |
| 799 | + |
| 800 | + /** |
| 801 | + * API to add an email address to a contact group |
| 802 | + * Use this to add an email address to a contact group. Returns a string of recipient id. |
| 803 | + * |
| 804 | + * @param groupId |
| 805 | + * @param userEmail |
| 806 | + * @return |
| 807 | + * @throws AddEmailContactGroupFailedException |
| 808 | + */ |
| 809 | + public String addUserToContactGroup(String groupId, String userEmail) throws AddEmailContactGroupFailedException{ |
| 810 | + AddUserContactGroupHandler handler = new AddUserContactGroupHandler(uploadManager, new AddUserToContactGroupRequest(uploadManager.getJsonManager(), groupId, userEmail)); |
| 811 | + return handler.makeRequest(); |
| 812 | + } |
749 | 813 |
|
| 814 | + /** |
| 815 | + * API to remove an email address from a contact group |
| 816 | + * Use this to remove an email address from a contact group. Throws an exception if an error occurred. |
| 817 | + * |
| 818 | + * @param groupId |
| 819 | + * @param userId |
| 820 | + * @throws RemoveEmailContactGroupFailedException |
| 821 | +
|
| 822 | + */ |
| 823 | + public void removeUserFromContactGroup(String groupId, String userId) throws RemoveEmailContactGroupFailedException{ |
| 824 | + RemoveUserContactGroupHandler handler = new RemoveUserContactGroupHandler(uploadManager, new RemoveUserFromContactGroupRequest(uploadManager.getJsonManager(), groupId, userId)); |
| 825 | + handler.makeRequest(); |
| 826 | + } |
| 827 | + |
| 828 | + /** |
| 829 | + * API to add a contact group as a recipient on a package |
| 830 | + * Use this to add a contact group and all of the email members to a package as complete unit. Throws an exception if the call failed. |
| 831 | + * |
| 832 | + * @param packageId |
| 833 | + * @param groupId |
| 834 | + * @throws ContactGroupException |
| 835 | + */ |
| 836 | + public void addContactGroupToPackage(String packageId, String groupId) throws ContactGroupException{ |
| 837 | + AddContactGroupAsRecipientHandler handler = new AddContactGroupAsRecipientHandler(uploadManager, new AddContactGroupAsRecipientRequest(uploadManager.getJsonManager(), packageId, groupId)); |
| 838 | + handler.makeRequest(); |
| 839 | + } |
| 840 | + |
| 841 | + /** |
| 842 | + * API to remove a contact group as a recipient on a package |
| 843 | + * Use this to remove a contact group and all of the associated email members from a package as a complete unit. |
| 844 | + * Throws an exception if the call failed |
| 845 | + * |
| 846 | + * @param packageId |
| 847 | + * @param groupId |
| 848 | + * @throws RemoveContactGroupAsRecipientFailedException |
| 849 | + */ |
| 850 | + public void removeContactGroupFromPackage(String packageId,String groupId) throws RemoveContactGroupAsRecipientFailedException{ |
| 851 | + RemoveContactGroupAsRecipientHandler handler = new RemoveContactGroupAsRecipientHandler(uploadManager, new RemoveContactGroupAsRecipientRequest(uploadManager.getJsonManager(), packageId, groupId)); |
| 852 | + handler.makeRequest(); |
| 853 | + } |
| 854 | + |
| 855 | + /** |
| 856 | + * API to retrieve a list of contact groups, including all email addresses associated with the contact groups |
| 857 | + * Use this to get a list of contact groups and emails associated with each contact group. Throws an exception if the call fails |
| 858 | + * Returns a list of contact groups with email addresses within each contact group |
| 859 | + * |
| 860 | + * @return List<ContactGroupDTO> object of contact groups and email addresses |
| 861 | + * @throws GetContactGroupsFailedException |
| 862 | + */ |
| 863 | + public List<ContactGroup> getContactGroups() throws GetContactGroupsFailedException{ |
| 864 | + GetContactGroupsHandler handler = new GetContactGroupsHandler(uploadManager, new GetContactGroupsRequest(uploadManager.getJsonManager())); |
| 865 | + return handler.makeRequest(); |
| 866 | + } |
750 | 867 | }
|
0 commit comments