Skip to content
TapSchemaEditingBean.java 1.91 KiB
Newer Older
package it.inaf.oats.ia2.tapschemamanager.webapp;

import it.inaf.oats.ia2.tapschemamanager.businesslayer.TapSchema;
import java.io.Serializable;
import javax.annotation.PostConstruct;
import javax.enterprise.context.Conversation;
import javax.enterprise.context.ConversationScoped;
import javax.faces.context.FacesContext;
import javax.inject.Inject;
import javax.inject.Named;
import javax.servlet.ServletContext;

/**
 *
 * @author Sonia Zorba <zorba at oats.inaf.it>
 */
@Named("tapSchemaEditing")
@ConversationScoped
public class TapSchemaEditingBean implements Serializable {

    @Inject
    private Conversation conversation;

    @Inject
    SchemaSelectionBean schemaSelection;

    private TapSchema tapSchema;

    private EditTapSchemaPageModel previousModel;
    private SearchUCDDialog searchUCDDialog;

    @PostConstruct
    public void init() {
        searchUCDDialog = new SearchUCDDialog();
    }

    public TapSchema getTapSchema() {
        return tapSchema;
    }

    public void setTapSchema(TapSchema tapSchema) {
        this.tapSchema = tapSchema;
        previousModel = new EditTapSchemaPageModel(tapSchema);
    }

    public void setPreviousModel(EditTapSchemaPageModel pageModel) {
        this.previousModel = pageModel;
    }

    public EditTapSchemaPageModel getPreviousModel() {
        return previousModel;
    }

    public SearchUCDDialog getSearchUCDDialog() {
        return searchUCDDialog;
    }

    public String getConversationId() {
        return conversation.getId();
    }

    public String getRESTPath() {
        ServletContext ctx = (ServletContext) FacesContext.getCurrentInstance().getExternalContext().getContext();
        return ctx.getContextPath() + "/rest/tapschema/";
    }

    public String back() {
        return "schemaSelection.xhtml?faces-redirect=true";
    }
    
    public String logout() {
        conversation.end();
        return "index.xhtml?faces-redirect=true";
    }
}