Java tutorial
/* * Copyright 2010 JBoss Inc * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.drools.guvnor.client.ruleeditor; import org.drools.guvnor.client.common.DefaultContentUploadEditor; import org.drools.guvnor.client.messages.Constants; import org.drools.guvnor.client.packages.AssetAttachmentFileWidget; import org.drools.guvnor.client.rpc.RuleAsset; import org.drools.guvnor.client.util.Format; import com.google.gwt.core.client.GWT; import com.google.gwt.event.dom.client.ClickEvent; import com.google.gwt.event.dom.client.ClickHandler; import com.google.gwt.user.client.Window; import com.google.gwt.user.client.ui.Button; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.VerticalPanel; public class BPELWrapper extends Composite implements EditorWidget { private Constants constants = GWT.create(Constants.class); public BPELWrapper(RuleAsset asset, RuleViewer viewer) { final String uuid = asset.uuid; final String fileName = asset.metaData.name; final String dirName = asset.metaData.packageName; final String servletName = "workflowmanager"; final String isNew = (asset.content == null ? "true" : "false"); AssetAttachmentFileWidget uploadWidget = new DefaultContentUploadEditor(asset, viewer); VerticalPanel panel = new VerticalPanel(); panel.add(uploadWidget); Button viewSource = new Button(); viewSource.setText(constants.OpenEditorInNewWindow()); final String url = Format.format( "bpeleditor/BPELEditor.html?uuid={0}&fileName={1}&dirName={2}&servletName={3}&isNew={4}", new String[] { uuid, fileName, dirName, servletName, isNew }); viewSource.addClickHandler(new ClickHandler() { public void onClick(ClickEvent arg0) { Window.open(url, "_" + fileName, null); } }); panel.add(viewSource); initWidget(panel); this.setStyleName(getOverallStyleName()); } public String getOverallStyleName() { return "decision-Table-upload"; } }