PackageFacadeLogicImpl.java
package org.andromda.metafacades.uml14;
import java.util.Collection;
import org.andromda.core.metafacade.MetafacadeFactory;
import org.andromda.metafacades.uml.FilteredCollection;
import org.andromda.metafacades.uml.ModelElementFacade;
import org.andromda.metafacades.uml.UMLMetafacadeProperties;
import org.apache.commons.lang.ObjectUtils;
import org.omg.uml.UmlPackage;
import org.omg.uml.foundation.core.ModelElement;
import org.omg.uml.foundation.core.UmlClass;
/**
* Metaclass facade implementation.
* @author Bob Fields
*/
public class PackageFacadeLogicImpl
extends PackageFacadeLogic
{
private static final long serialVersionUID = 34L;
/**
* @param metaObject
* @param context
*/
public PackageFacadeLogicImpl(
org.omg.uml.modelmanagement.UmlPackage metaObject,
String context)
{
super(metaObject, context);
}
/**
* @see org.andromda.metafacades.uml.PackageFacade#getClasses()
*/
@Override
public Collection<UmlClass> handleGetClasses()
{
return new FilteredCollection(metaObject.getOwnedElement())
{
private static final long serialVersionUID = 34L;
public boolean evaluate(Object object)
{
return object instanceof UmlClass;
}
};
}
/**
* @see org.andromda.metafacades.uml.PackageFacade#getSubPackages()
*/
@Override
protected Collection<org.omg.uml.modelmanagement.UmlPackage> handleGetSubPackages()
{
return new FilteredCollection(metaObject.getOwnedElement())
{
private static final long serialVersionUID = 34L;
public boolean evaluate(Object object)
{
return object instanceof org.omg.uml.modelmanagement.UmlPackage;
}
};
}
/**
* @see org.andromda.metafacades.uml.PackageFacade#getModelElements()
*/
@Override
protected Collection<ModelElement> handleGetModelElements()
{
return ((UmlPackage)MetafacadeFactory.getInstance().getModel().getModel()).getCore().getModelElement()
.refAllOfType();
}
/**
* @see org.andromda.metafacades.uml.PackageFacade#findModelElement(String)
*/
@Override
public ModelElementFacade handleFindModelElement(final String fullyQualifiedName)
{
return (ModelElementFacade)this.shieldedElement(
UML14MetafacadeUtils.findByFullyQualifiedName(
fullyQualifiedName,
ObjectUtils.toString(this.getConfiguredProperty(UMLMetafacadeProperties.NAMESPACE_SEPARATOR)),
true));
}
/**
* @see org.andromda.metafacades.uml.PackageFacade#getOwnedElements()
*/
@Override
protected Collection handleGetOwnedElements()
{
return metaObject.getOwnedElement();
}
/**
* return ""
* @see org.andromda.metafacades.uml14.PackageFacadeLogic#handleGetTablePrefix()
*/
@Override
protected String handleGetTablePrefix()
{
// TODO Auto-generated method stub
return "";
}
}