Package com.psddev.cms.db

Source Code of com.psddev.cms.db.Preview

package com.psddev.cms.db;

import com.psddev.dari.db.ObjectType;
import com.psddev.dari.db.Record;
import com.psddev.dari.db.State;

import java.util.Date;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.UUID;

/** Represents a preview of an object. */
public class Preview extends Record {

    @Indexed
    private Date createDate;

    @Indexed
    private ObjectType objectType;

    @Indexed
    private UUID objectId;

    private Map<String, Object> objectValues;
    private Site site;

    public Date getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Date date) {
        this.createDate = date;
    }

    public ObjectType getObjectType() {
        return objectType;
    }

    public void setObjectType(ObjectType type) {
        this.objectType = type;
    }

    public UUID getObjectId() {
        return objectId;
    }

    public void setObjectId(UUID id) {
        this.objectId = id;
    }

    public Map<String, Object> getObjectValues() {
        if (objectValues == null) {
            objectValues = new LinkedHashMap<String, Object>();
        }
        return objectValues;
    }

    public void setObjectValues(Map<String, Object> values) {
        this.objectValues = values;
    }

    public Site getSite() {
        return site;
    }

    public void setSite(Site site) {
        this.site = site;
    }

    /** Returns an object to be previewed. */
    public Object getObject() {
        if (objectType == null) {
            return null;
        } else {
            Object object = objectType.createObject(objectId);
            State state = State.getInstance(object);
            if (objectValues != null) {
                state.getValues().putAll(objectValues);
            }
            return object;
        }
    }
}
TOP

Related Classes of com.psddev.cms.db.Preview

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.