CQWorkflowTransitionWrapper.java 3.35 KB
/*
 * Decompiled with CFR 0_118.
 * 
 * Could not load the following classes:
 *  com.adobe.granite.workflow.metadata.MetaDataMap
 *  com.adobe.granite.workflow.model.WorkflowNode
 *  com.adobe.granite.workflow.model.WorkflowTransition
 *  com.day.cq.workflow.metadata.MetaDataMap
 *  com.day.cq.workflow.model.WorkflowNode
 *  com.day.cq.workflow.model.WorkflowTransition
 */
package com.day.cq.workflow.impl.model;

import com.adobe.granite.workflow.metadata.MetaDataMap;
import com.adobe.granite.workflow.model.WorkflowNode;
import com.adobe.granite.workflow.model.WorkflowTransition;
import com.day.cq.workflow.impl.metadata.CQMetaDataMap;
import com.day.cq.workflow.impl.model.CQWorkflowNodeWrapper;
import com.day.cq.workflow.impl.util.LegacyMetaDataWrapperImpl;
import java.util.Dictionary;
import java.util.Map;

public class CQWorkflowTransitionWrapper
implements com.day.cq.workflow.model.WorkflowTransition {
    WorkflowTransition graniteTransition;
    private CQWorkflowNodeWrapper targetNode = null;
    private CQWorkflowNodeWrapper fromNode = null;

    public CQWorkflowTransitionWrapper(WorkflowTransition graniteTransition) {
        if (graniteTransition == null) {
            throw new RuntimeException("Workflow Wrappers cannot be instantiated with null values");
        }
        this.graniteTransition = graniteTransition;
    }

    WorkflowTransition getGraniteTransition() {
        return this.graniteTransition;
    }

    public com.day.cq.workflow.model.WorkflowNode getFrom() {
        if (this.fromNode == null && this.graniteTransition.getFrom() != null) {
            this.fromNode = new CQWorkflowNodeWrapper(this.graniteTransition.getFrom());
        }
        return this.fromNode;
    }

    public void setFrom(com.day.cq.workflow.model.WorkflowNode from) {
        this.fromNode = null;
        if (!(from instanceof CQWorkflowTransitionWrapper)) {
            throw new UnsupportedOperationException("invalid type of WorkflowNode: " + from.getClass());
        }
        this.graniteTransition.setFrom(((CQWorkflowTransitionWrapper)from).getGraniteTransition().getFrom());
    }

    public com.day.cq.workflow.model.WorkflowNode getTo() {
        if (this.targetNode == null && this.graniteTransition.getTo() != null) {
            this.targetNode = new CQWorkflowNodeWrapper(this.graniteTransition.getTo());
        }
        return this.targetNode;
    }

    public void setTo(com.day.cq.workflow.model.WorkflowNode to) {
        this.targetNode = null;
        if (!(to instanceof CQWorkflowTransitionWrapper)) {
            throw new UnsupportedOperationException("invalid type of WorkflowNode: " + to.getClass());
        }
        this.graniteTransition.setFrom(((CQWorkflowTransitionWrapper)to).getGraniteTransition().getTo());
    }

    public String getRule() {
        return this.graniteTransition.getRule();
    }

    public void setRule(String rule) {
        this.graniteTransition.setRule(rule);
    }

    public Dictionary<String, String> getMetaData() {
        if (this.graniteTransition.getMetaDataMap() != null) {
            return new LegacyMetaDataWrapperImpl(this.graniteTransition.getMetaDataMap());
        }
        return null;
    }

    public com.day.cq.workflow.metadata.MetaDataMap getMetaDataMap() {
        CQMetaDataMap map = new CQMetaDataMap();
        map.putAll((Map)this.graniteTransition.getMetaDataMap());
        return map;
    }
}