Subversion Repositories bacoAlunos

Rev

Rev 187 | Blame | Compare with Previous | Last modification | View Log | RSS feed

package pt.estgp.estgweb.domain.views;

import pt.estgp.estgweb.domain.*;
import pt.estgp.estgweb.utils.ConfigProperties;
import pt.estgp.estgweb.utils.RoleManager;
import org.apache.log4j.Logger;

import java.util.List;
import java.io.Serializable;

/**
 * @author Jorge Machado
 * @date 2/Mar/2008
 * @time 19:34:49
 * @see pt.estgp.estgweb.domain.views
 */

public class BlogPostView extends DomainObjectView implements IOwned
{

    private static final 1.5.0/docs/api/java/util/logging/Logger.html">Logger logger = 1.5.0/docs/api/java/util/logging/Logger.html">Logger.getLogger(BlogPostView.class);

    public static final int DESC_SIZE = ConfigProperties.getIntProperty("blog.desc.summary.size");

    private long id;
    private 1.5.0/docs/api/java/lang/String.html">String title;
    private 1.5.0/docs/api/java/lang/String.html">String text;
    private 1.5.0/docs/api/java/awt/Image.html">Image image;
    private GenericUser owner;
    private boolean status;
    private BlogPost blogPost;
    private long blogId;

    public BlogPostView()
    {
    }

    public BlogPostView(BlogPost blogPost)
    {
        super(blogPost);
        this.blogPost = blogPost;
        this.title = blogPost.getTitle();
        this.text = blogPost.getText();
        this.image = blogPost.getImage();
        this.status = blogPost.isStatus();
        this.id = blogPost.getId();
        this.owner = blogPost.getOwner();
        this.blogId = blogPost.getBlog().getId();
    }

    public void persistViewInObject(BlogPost blogPost)
    {
        blogPost.setTitle(title);
        blogPost.setText(text);
        if(image != null)
            blogPost.setImage(image);
        blogPost.setStatus(status);
    }


    public long getBlogId()
    {
        return blogId;
    }

    public long getId()
    {
        return id;
    }

    public void setId(long id)
    {
        this.id = id;
    }

    public boolean isOwnedBy(GenericUser u)
    {
        return blogPost.isOwnedBy(u);
    }

    public GenericUser getOwner()
    {
        return owner;
    }

    /**
     * Not implemented in announcements
     * @return null
     */

    public List<String> getOwnerRoles()
    {
        logger.warn("Invoke not implemented method in class:" + getClass().getName());
        return null;
    }

    /**
     * Not implemented in announcements
     * @return null
     */

    public 1.5.0/docs/api/java/lang/String.html">String getChoosedOwnerRole()
    {
        logger.warn("Invoke not implemented method in class:" + getClass().getName());
        return null;
    }

    public 1.5.0/docs/api/java/lang/String.html">String getTitle()
    {
        return title;
    }

    public void setTitle(1.5.0/docs/api/java/lang/String.html">String title)
    {
        this.title = title;
    }

    public 1.5.0/docs/api/java/lang/String.html">String getText()
    {
        return text;
    }

    public void setText(1.5.0/docs/api/java/lang/String.html">String text)
    {
        this.text = text;
    }

    public 1.5.0/docs/api/java/awt/Image.html">Image getImage()
    {
        return image;
    }

    public void setImage(1.5.0/docs/api/java/awt/Image.html">Image image)
    {
        this.image = image;
    }

    public boolean isStatus()
    {
        return status;
    }

    public void setStatus(boolean status)
    {
        this.status = status;
    }

    public 1.5.0/docs/api/java/lang/String.html">String getDescSummary()
    {
        return getFragment(DESC_SIZE, getText());
    }

    public 1.5.0/docs/api/java/lang/Boolean.html">Boolean getHaveAllText()
    {
        return getText().length() > DESC_SIZE;
    }

    public 1.5.0/docs/api/java/lang/Class.html">Class getReferenceClass()
    {
        return BlogPost.class;
    }

    public 1.5.0/docs/api/java/io/Serializable.html">Serializable getSerializable()
    {
        return id;
    }

    public 1.5.0/docs/api/java/lang/String.html">String getOwnerEmail()
    {
        if (owner instanceof User)
            return ((User) owner).getEmail();
        else
            return null;
    }

    public 1.5.0/docs/api/java/lang/String.html">String getOwnerUsername()
    {
        if (owner instanceof User)
            return ((User) owner).getUsername();
        else
            return null;
    }
}