/*********************************************************************************************************************** | |
* Copyright (c) 2010 Attensity Europe GmbH. | |
* 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 | |
**********************************************************************************************************************/ | |
package org.eclipse.smila.processing.designer.ui.factories; | |
import org.eclipse.bpel.ui.factories.AbstractUIObjectFactory; | |
import org.eclipse.bpel.ui.factories.IExtensionUIObjectFactory; | |
import org.eclipse.emf.ecore.EClass; | |
import org.eclipse.emf.ecore.EObject; | |
import org.eclipse.jface.resource.ImageDescriptor; | |
import org.eclipse.smila.processing.designer.model.processor.InvokeService; | |
import org.eclipse.smila.processing.designer.model.processor.ProcessorPackage; | |
import org.eclipse.smila.processing.designer.ui.Activator; | |
import org.eclipse.smila.processing.designer.ui.SMILADesignerUIConstants; | |
import org.eclipse.swt.graphics.Image; | |
/** | |
* Offers the UI objects for the "invoke service" activity. | |
* | |
* Copyright (c) 2010 Attensity Europe GmbH | |
* | |
* @author Tobias Liefke | |
*/ | |
public class InvokeServiceUIFactory extends AbstractUIObjectFactory implements IExtensionUIObjectFactory | |
{ | |
private EClass modelType; | |
private EClass[] classArray = {ProcessorPackage.eINSTANCE.getInvokeService()}; | |
/** | |
* Creates a new instance of InvokePipeletUIFactory. | |
*/ | |
public InvokeServiceUIFactory() | |
{ | |
// Empty constructor | |
} | |
/** | |
* Creates a new instance of InvokePipeletUIFactory for the given class. | |
* | |
* @param modelType | |
*/ | |
public InvokeServiceUIFactory(EClass modelType) | |
{ | |
this.modelType = modelType; | |
} | |
@Override | |
public Image getLargeImage() | |
{ | |
return Activator.getDefault().getImageRegistry().get(SMILADesignerUIConstants.INVOKE_SERVICE_ICON_20); | |
} | |
@Override | |
public ImageDescriptor getLargeImageDescriptor() | |
{ | |
return Activator.getDefault().getImageDescriptor(SMILADesignerUIConstants.INVOKE_SERVICE_ICON_20); | |
} | |
@Override | |
public EClass getModelType() | |
{ | |
return this.modelType; | |
} | |
@Override | |
public Image getSmallImage() | |
{ | |
return Activator.getDefault().getImageRegistry().get(SMILADesignerUIConstants.INVOKE_SERVICE_ICON_16); | |
} | |
@Override | |
public ImageDescriptor getSmallImageDescriptor() | |
{ | |
return Activator.getDefault().getImageDescriptor(SMILADesignerUIConstants.INVOKE_SERVICE_ICON_16); | |
} | |
@Override | |
public String getTypeLabel() | |
{ | |
return getModelType().getName(); | |
} | |
@Override | |
public EClass[] getClassArray() | |
{ | |
return this.classArray; | |
} | |
@Override | |
public void setModelType(EClass modelType) | |
{ | |
this.modelType = modelType; | |
} | |
/** | |
* Initialize created objects. | |
* | |
* @see org.eclipse.bpel.ui.factories.AbstractUIObjectFactory#createInstance() | |
*/ | |
@Override | |
public <T extends EObject> T createInstance() | |
{ | |
T instance = super.createInstance(); | |
InvokeService service = (InvokeService) instance; | |
service.getVariables().setInput("request"); | |
service.getVariables().setOutput("request"); | |
return instance; | |
} | |
} |