Package org.restlet.data

Examples of org.restlet.data.ChallengeResponse


   public boolean removeUserFromGroup(AuthCredentials cred,String alias,String name)
      throws AuthException
   {
      String groupURL = serviceBase.resolve("./groups/a/"+name+"/users").toString();
      Request request = new Request(Method.DELETE,groupURL);
      request.setChallengeResponse(new ChallengeResponse(ChallengeScheme.HTTP_BASIC,cred.getName(),cred.getPassword()));
      Response response = client.handle(request);
      boolean success = response.getStatus().isSuccess();
      if (!success && response.getStatus().getCode()!=404) {
         throw new AuthException("Failed to remove "+alias+" from group "+name+", status="+response.getStatus().getCode());
      }
View Full Code Here


   public User createUser(AuthCredentials cred,String alias,String name,String email,String password)
      throws AuthException
   {
      String usersURL = serviceBase.resolve("./users").toString();
      Request request = new Request(Method.POST,usersURL);
      request.setChallengeResponse(new ChallengeResponse(ChallengeScheme.HTTP_BASIC,cred.getName(),cred.getPassword()));
      String xml = "<user xmlns='"+NAMESPACE+"' alias='"+alias+"' password='"+password+"'>" +
              (name==null ? "" : "<name>"+name+"</name>") +
              (email==null ? "" : "<email>"+name+"</email>") +
              "</user>";
      request.setEntity(new StringRepresentation(xml,MediaType.APPLICATION_XML));
View Full Code Here

         String userAlias = top.getAttributeValue("alias");
         String groupsURL = serviceBase.resolve("./users/a/"+userAlias+"/groups").toString();
         // get groups
         Request request = new Request(Method.GET,groupsURL);
         request.setChallengeResponse(new ChallengeResponse(ChallengeScheme.HTTP_BASIC,cred.getName(),cred.getPassword()));
         Response response = client.handle(request);
         if (response.getStatus().isSuccess()) {
            Document groupsDoc = parser.load(response.getEntity());
            UUID uuid = UUID.fromString(top.getAttributeValue("id"));
            Element nameE = top.getFirstElementNamed(NAME);
View Full Code Here

   User fetchUser(AuthCredentials cred,String alias)
      throws AuthException
   {
      String userURL = serviceBase.resolve("./users/a/"+alias).toString();
      Request request = new Request(Method.GET,userURL);
      request.setChallengeResponse(new ChallengeResponse(ChallengeScheme.HTTP_BASIC,cred.getName(),cred.getPassword()));
      Response response = client.handle(request);
      if (response.getStatus().isSuccess()) {
         try {
            Document userDoc = parser.load(response.getEntity());
            User user = createUser(cred,userDoc);
View Full Code Here

   public Iterator<User> getUsers(final AuthCredentials cred)
      throws AuthException
   {
      String userURL = serviceBase.resolve("./users/").toString();
      Request request = new Request(Method.GET,userURL);
      request.setChallengeResponse(new ChallengeResponse(ChallengeScheme.HTTP_BASIC,cred.getName(),cred.getPassword()));
      Response response = client.handle(request);
      if (response.getStatus().isSuccess()) {
         try {
            // TODO: this should stream...
            Document usersDoc = parser.load(response.getEntity());
            final Iterator<Element> users = usersDoc.getDocumentElement().getElementsByName(USER);
            return new Iterator<User>() {
               public boolean hasNext() {
                  return users.hasNext();
               }
               public void remove() {
                  throw new UnsupportedOperationException("remove() is not supported.");
               }
               public User next() {
                  Element userE = users.next();
                  String alias = userE.getAttributeValue("alias");
                  try {
                     User user = userCache.get(null,alias);
                     if (user==null) {
                        // get groups
                        String groupsURL = serviceBase.resolve("./users/a/"+alias+"/groups").toString();
                        Request request = new Request(Method.GET,groupsURL);
                        request.setChallengeResponse(new ChallengeResponse(ChallengeScheme.HTTP_BASIC,cred.getName(),cred.getPassword()));
                        Response response = client.handle(request);
                        if (response.getStatus().isSuccess()) {
                           try {
                              Document groupsDoc = parser.load(response.getEntity());
                              UUID uuid = UUID.fromString(userE.getAttributeValue("id"));
View Full Code Here

   public boolean updateUser(AuthCredentials cred,String alias,String name,String email)
      throws AuthException
   {
      String userURL = serviceBase.resolve("./users/a/"+alias).toString();
      Request request = new Request(Method.PUT,userURL);
      request.setChallengeResponse(new ChallengeResponse(ChallengeScheme.HTTP_BASIC,cred.getName(),cred.getPassword()));
      String xml = "<user xmlns='"+NAMESPACE+"' alias='"+alias+"'>" +
              (name==null ? "" : "<name>"+name+"</name>") +
              (email==null ? "" : "<email>"+name+"</email>") +
              "</user>";
      request.setEntity(new StringRepresentation(xml,MediaType.APPLICATION_XML));
View Full Code Here

   public boolean setPassword(AuthCredentials cred,String alias,String password)
      throws AuthException
   {
      String userURL = serviceBase.resolve("./users/a/"+alias).toString();
      Request request = new Request(Method.POST,userURL);
      request.setChallengeResponse(new ChallengeResponse(ChallengeScheme.HTTP_BASIC,cred.getName(),cred.getPassword()));
      String xml = "<password xmlns='"+NAMESPACE+"'>" + password + "</password>";
      request.setEntity(new StringRepresentation(xml,MediaType.APPLICATION_XML));
      Response response = client.handle(request);
      boolean success = response.getStatus().isSuccess();
      if (!success && response.getStatus().getCode()!=404) {
View Full Code Here

         if (user!=null) {
            return user;
         }
      }
      Request request = new Request(Method.GET,authURL);
      request.setChallengeResponse(new ChallengeResponse(ChallengeScheme.HTTP_BASIC,alias,password));
      Response response = client.handle(request);
      if (response.getStatus().isSuccess()) {
         try {
            Document doc = parser.load(response.getEntity());
            user = parseUser(doc);
View Full Code Here

   {
      Client client = new Client(new Context(Logger.getLogger(IntrospectionClient.class.getName())),Protocol.valueOf(location.getScheme()));
      client.getContext().getAttributes().put("hostnameVerifier", org.apache.commons.ssl.HostnameVerifier.DEFAULT);
      Request request = new Request(Method.GET,location.toString());
      if (identity!=null) {
         request.setChallengeResponse(new ChallengeResponse(ChallengeScheme.HTTP_BASIC,identity.getName(),identity.getPassword()));
      }
      if (cookie!=null) {
         request.getCookies().add(cookie);
      }
      Response response = client.handle(request);
View Full Code Here

         return null;
      }
      Form requestForm = getRequest().getResourceRef().getQueryAsForm();
      //getContext().getLogger().info("Testing auth...");
      try {
         ChallengeResponse authorization = getRequest().getChallengeResponse();
         String idValue = AuthApplication.getStringAttribute(getRequest(),"session",null);
         if (authorization==null || idValue!=null) {
            if (idValue!=null) {
               try {
                  UUID id = UUID.fromString(idValue);
                  User.Authenticated authd = db.isAuthenticated(realm,id);
                  if (authd!=null) {
                     String userAlias = authd.getUser().getAlias();
                     UUID userId = authd.getUser().getUUID();
                     String name = authd.getUser().getName();
                     String email = authd.getUser().getEmail();
                     Iterator<Group> groups = null;
                     Iterator<Role> roles = authd.getUser().getRoles();
                     // If we have a realm, we need the realm user to get the right alias
                     if (realm!=null) {
                        RealmUser ruser = db.findRealmUser(realm,authd.getUser());
                        if (ruser!=null) {
                           userAlias = ruser.getAlias();
                           name = ruser.getName();
                           email = ruser.getEmail();
                           groups = ruser.getGroups();
                        }
                     }
                     getResponse().setStatus(Status.SUCCESS_OK);
                     return getSessionEntity(authd.getSession(),userId,userAlias,name,email,roles,groups);
                  }
               } catch (IllegalArgumentException ex) {
                  getResponse().setStatus(Status.CLIENT_ERROR_BAD_REQUEST);
                  return null;
               }
            }
            getResponse().setChallengeRequests(Collections.singletonList(new ChallengeRequest(ChallengeScheme.HTTP_BASIC,realm==null ? "users" : "realm "+realm.getName())));
            getResponse().setStatus(Status.CLIENT_ERROR_UNAUTHORIZED);
            return null;
         }
         String authid = authorization.getIdentifier().trim();
         String password = new String(authorization.getSecret());
         User user = null;
         if (realm!=null) {
            RealmUser ruser = findRealmUser(db,realm,authid);
            if (ruser!=null) {
               user = ruser.getUser();
View Full Code Here

TOP

Related Classes of org.restlet.data.ChallengeResponse

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.