/******************************************************************************* | |
* Copyright (c) 2007, 2012 Intel Corporation. | |
* 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: | |
* Oleg Danilov, Intel - Initial API and Implementation | |
* | |
*******************************************************************************/ | |
package org.eclipse.bpel.ui.adapters; | |
import org.eclipse.bpel.model.Expression; | |
import org.eclipse.bpel.model.PartnerLink; | |
import org.eclipse.bpel.model.Variable; | |
import org.eclipse.bpel.model.partnerlinktype.PartnerLinkType; | |
import org.eclipse.bpel.model.partnerlinktype.Role; | |
import org.eclipse.wst.wsdl.Message; | |
import org.eclipse.wst.wsdl.Operation; | |
import org.eclipse.xsd.XSDTypeDefinition; | |
public class AnnotationHelper { | |
private AnnotationHelper() { | |
} | |
public static String getAnnotation(Variable var) { | |
if (var == null || var.getName() == null) { | |
return null; | |
} | |
String type = null; | |
Message messageType = var.getMessageType(); | |
if (messageType != null && messageType.getQName() != null) { | |
String prefix = messageType.getQName().getPrefix(); | |
type = (prefix != null && prefix.length() > 0) ? | |
prefix + ":" + messageType.getQName().getLocalPart() : | |
messageType.getQName().getLocalPart(); | |
} else { | |
XSDTypeDefinition varType = var.getType(); | |
if (varType != null && varType.getName() != null) { | |
type = varType.getQName(); | |
} | |
} | |
if (type != null) { | |
return var.getName() + " (" + type + ")"; | |
} | |
return var.getName(); | |
} | |
public static String getAnnotation(PartnerLink pLink) { | |
if (pLink == null || pLink.getName() == null) { | |
return null; | |
} | |
PartnerLinkType plType = pLink.getPartnerLinkType(); | |
if (plType != null) { | |
return pLink.getName() + " (" + plType.getName() + ")"; | |
} | |
return pLink.getName(); | |
} | |
public static String getAnnotation(Role role) { | |
if (role == null) { | |
return Messages.NONE; | |
} | |
return role.getName(); | |
} | |
public static String getAnnotation(Operation operation) { | |
if (operation == null || operation.getName() == null) { | |
return null; | |
} | |
return operation.getName(); | |
} | |
public static String getAnnotation(Expression expression) { | |
if (expression == null) { | |
return null; | |
} | |
return (expression.getBody() instanceof String) ? | |
(String)expression.getBody() : null; | |
} | |
} |