/******************************************************************************* * Copyright (c) 2012-2017 Codenvy, S.A. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Codenvy, S.A. - initial API and implementation *******************************************************************************/ package org.eclipse.che.ide.editor.orion.client.jso; import com.google.gwt.core.client.JavaScriptObject; import com.google.gwt.core.client.JsArrayString; /** * The "Service attributes" for registering orion 'orion.core.contenttype' service. * See <a href="https://wiki.eclipse.org/Orion/Documentation/Developer_Guide/Plugging_into_the_editor#orion.core.contenttype">Orion documentation</a> for details. * * @author Sven Efftinge */ public class OrionContentTypeOverlay extends JavaScriptObject { protected OrionContentTypeOverlay() { } public final static native OrionContentTypeOverlay create() /*-{ return {}; }-*/; public final native JavaScriptObject toServiceObject() /*-{ return { contentTypes : [this] }; }-*/; public final native void setId(String theId) /*-{ this.id = theId; }-*/; public final native void setName(String theName) /*-{ this.name = theName; }-*/; public final void setExtension(String ...fileExtensions) { JsArrayString arr = JavaScriptObject.createArray().cast(); for (String value : fileExtensions) { arr.push(value); } setExtension(arr); } public final void setFileName(String... fileNames) { JsArrayString arr = JavaScriptObject.createArray().cast(); for (String value : fileNames) { arr.push(value); } setFileName(arr); } public final native void setExtension(JsArrayString fileExtensions) /*-{ this.extension = fileExtensions; }-*/; public final native void setFileName(JsArrayString fileNames) /*-{ this.fileName = fileNames; }-*/; public final native void setExtends(String parentContentType) /*-{ this["extends"] = parentContentType; }-*/; public final native void setImage(String imageURL) /*-{ this.image = imageURL; }-*/; public final native void setImageClass(String theImageClass) /*-{ this.imageClass = theImageClass; }-*/; public final native String getId() /*-{ return this.id; }-*/; public final native String getName() /*-{ return this.name; }-*/; public final native JsArrayString getExtensions() /*-{ return this.extension; }-*/; }