blob: 5324923ddeffd57da4e8ca983f806c55d22358d3 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2003, 2004 IBM Corporation and others.
* 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:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.jst.j2ee.internal.deployables;
import org.eclipse.core.resources.IFolder;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.IPath;
import org.eclipse.jst.server.core.IJ2EEModule;
import org.eclipse.wst.common.componentcore.ModuleCoreNature;
import org.eclipse.wst.common.componentcore.internal.StructureEdit;
import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
import org.eclipse.wst.common.componentcore.resources.ComponentHandle;
import org.eclipse.wst.server.core.IModuleType;
import org.eclipse.wst.server.core.util.ProjectModule;
/**
* J2EE deployable superclass.
*/
public abstract class J2EEFlexProjDeployable extends ProjectModule implements IJ2EEModule {
private String factoryId;
protected WorkbenchComponent wbModule = null;
/**
* Constructor for J2EEFlexProjDeployable.
*
* @param project
*/
public J2EEFlexProjDeployable(IProject project, String aFactoryId, WorkbenchComponent aWorkbenchModule) {
super(project);
factoryId = aFactoryId;
wbModule = aWorkbenchModule;
}
public String getJ2EESpecificationVersion() {
return "1.2"; //$NON-NLS-1$
}
/*
* @see IJ2EEModule#getLocation()
*/
public IPath getLocation() {
IPath path = null;
if ( ModuleCoreNature.getModuleCoreNature(project) != null ) {
if( wbModule != null ){
IFolder outputContainer = StructureEdit.getOutputContainerRoot(wbModule);
path = outputContainer.getRawLocation();
}
}
return path;
}
/*
* @see IModule#getFactoryId()
*/
public String getFactoryId() {
return factoryId;
}
/**
* @see com.ibm.etools.server.j2ee.IJ2EEModule#isBinary()
*/
public boolean isBinary() {
return false;
}
public String getModuleTypeName() {
return getName();
}
public String getModuleTypeVersion() {
return getVersion();
}
public ComponentHandle getComponentHandle() {
return ComponentHandle.create(StructureEdit.getContainingProject(wbModule),wbModule.getHandle());
}
public String getVersion() {
return "1.2"; //$NON-NLS-1$
}
public String getType() {
return "j2ee.ear"; //$NON-NLS-1$
}
public IModuleType getModuleType() {
return new IModuleType() {
public String getId() {
return getType();
}
public String getName() {
return getModuleTypeName();
}
public String getVersion() {
return getModuleTypeVersion();
}
};
}
}