CustomEditConfig.java 5.22 KB
/*
 * Decompiled with CFR 0_118.
 * 
 * Could not load the following classes:
 *  com.day.cq.commons.JSONItem
 *  com.day.cq.wcm.api.components.ComponentContext
 *  com.day.cq.wcm.api.components.ComponentEditConfig
 *  com.day.cq.wcm.api.components.DialogMode
 *  com.day.cq.wcm.api.components.DropTarget
 *  com.day.cq.wcm.api.components.EditConfig
 *  com.day.cq.wcm.api.components.EditLayout
 *  com.day.cq.wcm.api.components.InplaceEditingConfig
 *  com.day.cq.wcm.api.components.Toolbar
 *  com.day.cq.wcm.api.designer.Cell
 *  org.apache.sling.commons.json.JSONException
 *  org.apache.sling.commons.json.io.JSONWriter
 */
package com.day.cq.wcm.core.components;

import com.day.cq.commons.JSONItem;
import com.day.cq.wcm.api.components.ComponentContext;
import com.day.cq.wcm.api.components.ComponentEditConfig;
import com.day.cq.wcm.api.components.DialogMode;
import com.day.cq.wcm.api.components.DropTarget;
import com.day.cq.wcm.api.components.EditConfig;
import com.day.cq.wcm.api.components.EditLayout;
import com.day.cq.wcm.api.components.InplaceEditingConfig;
import com.day.cq.wcm.api.components.Toolbar;
import com.day.cq.wcm.api.designer.Cell;
import com.day.cq.wcm.core.impl.components.EditConfigImpl;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.Writer;
import java.util.Map;
import org.apache.sling.commons.json.JSONException;
import org.apache.sling.commons.json.io.JSONWriter;

public class CustomEditConfig
implements EditConfig {
    private EditConfigImpl base;

    public CustomEditConfig(ComponentEditConfig cfg) {
        this.base = new EditConfigImpl(cfg, null);
    }

    public void drawEditing(PrintWriter out, String contentPath, String resourceType, String dlgPath, Cell cell, boolean isContainer) throws IOException {
        try {
            out.println("<script type=\"text/javascript\">");
            out.print("CQ.WCM.edit(");
            JSONWriter jw = new JSONWriter((Writer)out);
            jw.object();
            if (contentPath != null) {
                jw.key("path").value((Object)contentPath);
            }
            if (dlgPath != null) {
                jw.key("dialog").value((Object)dlgPath);
            }
            if (resourceType != null) {
                jw.key("type").value((Object)resourceType);
            }
            if (cell != null) {
                jw.key("csp").value((Object)cell.getSearchPath());
            }
            if (isContainer) {
                jw.key("isContainer").value(true);
            }
            jw.key("editConfig");
            this.write(jw);
            jw.endObject();
            out.println(");");
            out.println("</script>");
        }
        catch (JSONException e) {
            throw new IOException(e.toString());
        }
    }

    public void setLayout(EditLayout layout) {
        this.base.setLayout(layout);
    }

    public void setInsertBehavior(String insertBehavior) {
        this.base.setInsertBehavior(insertBehavior);
    }

    public void setDialogMode(DialogMode mode) {
        this.base.setDialogMode(mode);
    }

    public void setInplaceEditingConfig(InplaceEditingConfig inplaceEditingConfig) {
        this.base.setInplaceEditingConfig(inplaceEditingConfig);
    }

    public void setEmpty(boolean empty) {
        this.base.setEmpty(empty);
    }

    public void setEmptyText(String emptyText) {
        this.base.setEmptyText(emptyText);
    }

    public void setOrderable(Boolean orderable) {
        this.base.setOrderable(orderable);
    }

    public void setDeepCancel(Boolean deepCancel) {
        this.base.setDeepCancel(deepCancel);
    }

    public void setLiveRelationship(JSONItem liveRelationship) {
        this.base.setLiveRelationship(liveRelationship);
    }

    public boolean isDefault() {
        return this.base.isDefault();
    }

    public EditLayout getLayout() {
        return this.base.getLayout();
    }

    public Map<String, DropTarget> getDropTargets() {
        return this.base.getDropTargets();
    }

    public String getInsertBehavior() {
        return this.base.getInsertBehavior();
    }

    public Toolbar getToolbar() {
        return this.base.getToolbar();
    }

    public DialogMode getDialogMode() {
        return this.base.getDialogMode();
    }

    public InplaceEditingConfig getInplaceEditingConfig() {
        return this.base.getInplaceEditingConfig();
    }

    public boolean isEmpty() {
        return this.base.isEmpty();
    }

    public String getEmptyText() {
        return this.base.getEmptyText();
    }

    public Boolean isOrderable() {
        return this.base.isOrderable();
    }

    public Map<String, String> getFormParameters() {
        return this.base.getFormParameters();
    }

    public Map<String, String> getListeners() {
        return this.base.getListeners();
    }

    public JSONItem getLiveRelationship() {
        return this.base.getLiveRelationship();
    }

    public Boolean isDeepCancel() {
        return this.base.isDeepCancel();
    }

    public boolean isTargetingDisabled() {
        return this.base.isTargetingDisabled();
    }

    public void write(JSONWriter out) throws JSONException {
        this.base.write(out);
    }

    public Map<String, Object> getFormParameterMap() {
        return this.base.getFormParameterMap();
    }
}