Package org.beangle.emsapp.security.helper

Source Code of org.beangle.emsapp.security.helper.UserPropertyExtractor

/* Copyright c 2005-2012.
* Licensed under GNU  LESSER General Public License, Version 3.
* http://www.gnu.org/licenses
*/
package org.beangle.emsapp.security.helper;

import java.util.Collection;

import org.beangle.commons.text.TextResource;
import org.beangle.model.transfer.exporter.DefaultPropertyExtractor;
import org.beangle.ems.security.User;

public class UserPropertyExtractor extends DefaultPropertyExtractor {

  public UserPropertyExtractor() {
    super();
  }

  public UserPropertyExtractor(TextResource textResource) {
    super(textResource);
  }

  public Object getPropertyValue(Object target, String property) throws Exception {
    User user = (User) target;
    if ("enabled".equals(property)) {
      boolean enabled = user.isEnabled();
      if (enabled) return getText("action.activate");
      else return getText("action.freeze");
    }
    if ("groups".equals(property)) {
      return getPropertyIn(user.getGroups(), "group.name");
    } else {
      return super.getPropertyValue(target, property);
    }
  }

  public static final StringBuilder getUserNames(Collection<User> users) {
    StringBuilder sb = new StringBuilder();
    for (final User user : users) {
      sb.append(user.getFullname());
      sb.append('(').append(user.getName()).append(')').append(' ');
    }
    if (sb.length() > 0) {
      sb.deleteCharAt(sb.length() - 1);
    }
    return sb;
  }
}
TOP

Related Classes of org.beangle.emsapp.security.helper.UserPropertyExtractor

TOP
Copyright © 2018 www.massapi.com. 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.