Code development platform for open source projects from the European Union institutions :large_blue_circle: EU Login authentication by SMS has been phased out. To see alternatives please check here

Skip to content
Snippets Groups Projects
Select Git revision
  • 3c03905bb23eaf9d1738a2d404276b4f75881e30
  • development default
  • bugfix/EDELIVERY-14172-domismp-accepts-requests-with-wrong-domain-header-value
  • EDELIVERY-15372-upgrade-libraries-and-plugins-and-update-httpclient-to-httpclient5
  • EDELIVERY-15377-migrate-to-angular-20
  • feature/EDELIVERY-15382-rest-api-jwt-authentication-for-dynamic-discovery-client
  • bugfix/EDELIVERY-14196-select-domain-select-resource-dropdown-should-be-order-alphabetically
  • feature/EDELIVERY-12753-sml-integration-migration-to-different-smp
  • feature/EDELIVERY-13757-extend-session-dialog-should-have-an-active-counter
  • EDELIVERY-15144-sql-update
  • bugfix/EDELIVERY-14326-ui-edit-resource-filters
  • feature/EDELIVERY-15144-domismp-system-notification-generalize-time-expiration-alerts
  • bugfix/EDELIVERY-15102-alert-is-not-appearing-when-adding-duplicated-certificate
  • bugfix/EDELIVERY-15203-small-left-grid-shows-no-data-found-for-1-2-seconds-before-loading-the-data
  • EDELIVERY-15219-search-filter-with-understore-char-does-not-work
  • bugfix/EDELIVERY-15226-certificates-error-when-trying-to-delete-certificates
  • bugfix/EDELIVERY-15224-error-when-trying-to-update-info-from-profile-page
  • bugfix/EDELIVERY-15225-emails-are-not-sent-in-domismp
  • release/5.1.x
  • feature/EDELIVERY-12746-external-secret-sharing-services-as-vaults
  • EDELIVERY-15229-upgrade-libraries-and-plugins
  • 5.1.1
  • 5.1
  • 5.1-TEST
  • 5.1-RC1
  • 5.0.1
  • 5.0
  • 5.0-RC1
  • 4.2
  • 4.2-RC1
  • 4.1.2
  • 4.1.1
  • 4.1.0
  • 4.1.0-RC1
  • 4.0.0
  • 4.0.0-RC1
  • 3.0.2
  • 3.0.1
  • 3.0.0
39 results

UserClient.java

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    UserClient.java 1.93 KiB
    package rest;
    
    import com.sun.jersey.api.client.ClientResponse;
    import org.json.JSONObject;
    import rest.models.UserModel;
    
    public class UserClient extends BaseRestClient {
        public UserClient(String username, String password) {
            super(username, password);
        }
    
        public JSONObject createUser(UserModel user) {
    
            JSONObject usrObj = new JSONObject(user);
    
            if (!isLoggedIn()) {
                try {
                    refreshCookies();
                } catch (Exception e) {
                    throw new RuntimeException(e);
                }
            }
    
            String usersPath = RestServicePaths.getUsersPath(data.userId);
    
            ClientResponse response = jsonPUT(resource.path(usersPath), usrObj);
            JSONObject responseBody = new JSONObject(response.getEntity(String.class));
            // extract userId to be used in the Paths of the requests
    
            String forUserId = (String) responseBody.get("userId");
    
            //Set password for user
            changePassword(forUserId, data.getNewPassword());
    
            if (response.getStatus() != 200) {
                try {
                    throw new SMPRestException("Could not create user", response);
                } catch (SMPRestException e) {
                    throw new RuntimeException(e);
                }
            }
            log.debug("User: " + user.getUsername() + "  has been created successfully!");
            return responseBody;
    
        }
    
        public JSONObject changePassword(String forUserId, String newPassword) {
    
    
            String changePasswordPath = RestServicePaths.getChangePasswordPath(data.userId, forUserId);
            JSONObject passwordChangeBody = new JSONObject();
            passwordChangeBody.put("currentPassword", password);
            passwordChangeBody.put("newPassword", newPassword);
    
    
            ClientResponse response = jsonPUT(resource.path(changePasswordPath), passwordChangeBody);
            JSONObject responseBody = new JSONObject(response.getEntity(String.class));
            return responseBody;
    
        }
    
    
    }