Package in.partake.model

Source Code of in.partake.model.UserEx

package in.partake.model;

import in.partake.app.PartakeConfiguration;
import in.partake.base.SafeJSONable;
import in.partake.model.dto.User;
import in.partake.model.dto.UserTwitterLink;

import java.util.Set;

import org.codehaus.jackson.node.ObjectNode;

/**
* user with related data.
* @author shinyak
*
*/
public class UserEx extends User implements SafeJSONable {
    private UserTwitterLink twitterLinkage;

    public UserEx(User user, UserTwitterLink twitterLinkage) {
        super(user);
        this.twitterLinkage = twitterLinkage;
    }

    public UserTwitterLink getTwitterLinkage() {
        return twitterLinkage;
    }

    public String getTwitterScreenName() {
        return twitterLinkage.getScreenName();
    }

    public String getTwitterProfileImageURL() {
        return twitterLinkage.getProfileImageURL();
    }

    public boolean isAdministrator() {
        String screenName = twitterLinkage.getScreenName();
        Set<String> adminScreenNames = PartakeConfiguration.administratorScreenNames();
        return adminScreenNames.contains(screenName);
    }


    public ObjectNode toSafeJSON() {
        ObjectNode obj = super.toSafeJSON();

        if (twitterLinkage != null)
            obj.put("twitter", twitterLinkage.toSafeJSON());

        return obj;
    }
}
TOP

Related Classes of in.partake.model.UserEx

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.