package com.liferay.ide.project.core.model;
import com.liferay.ide.project.core.model.internal.LiferayVersionDefaultValueService;
import com.liferay.ide.project.core.model.internal.LiferayVersionPossibleValuesService;
import com.liferay.ide.project.core.model.internal.NewLiferayProfileIdDefaultValueService;
import com.liferay.ide.project.core.model.internal.NewLiferayProfileIdValidationService;
import com.liferay.ide.project.core.model.internal.NewLiferayProfileRuntimeValidationService;
import org.eclipse.sapphire.ElementType;
import org.eclipse.sapphire.Type;
import org.eclipse.sapphire.Value;
import org.eclipse.sapphire.ValueProperty;
import org.eclipse.sapphire.modeling.annotations.DefaultValue;
import org.eclipse.sapphire.modeling.annotations.Label;
import org.eclipse.sapphire.modeling.annotations.Required;
import org.eclipse.sapphire.modeling.annotations.Service;
import org.eclipse.sapphire.modeling.annotations.Services;
/**
* @author Gregory Amerson
*/
public interface NewLiferayProfile extends Profile, HasLiferayRuntime
{
ElementType TYPE = new ElementType( NewLiferayProfile.class );
// *** RuntimeName ***
@Service( impl = NewLiferayProfileRuntimeValidationService.class )
ValueProperty PROP_RUNTIME_NAME = new ValueProperty( TYPE, HasLiferayRuntime.PROP_RUNTIME_NAME );
// *** Id ***
@Services
(
value =
{
@Service( impl = NewLiferayProfileIdDefaultValueService.class ),
@Service( impl = NewLiferayProfileIdValidationService.class ),
}
)
@Label( standard = "new profile id" )
ValueProperty PROP_ID = new ValueProperty( TYPE, "Id" );
// *** ProfileLocation ***
@Type( base = ProfileLocation.class )
@Label( standard = "profile location" )
@DefaultValue( text = "projectPom" )
ValueProperty PROP_PROFILE_LOCATION = new ValueProperty( TYPE, "ProfileLocation" );
Value<ProfileLocation> getProfileLocation();
void setProfileLocation( String value );
void setProfileLocation( ProfileLocation value );
// *** LiferayVersion ***
@Label( standard = "liferay version" )
@Services
(
value =
{
@Service
(
impl = LiferayVersionPossibleValuesService.class,
params =
{
@Service.Param( name = "groupId", value = "com.liferay.portal" ),
@Service.Param( name = "artifactId", value = "portal-service" ),
}
),
@Service( impl = LiferayVersionDefaultValueService.class )
}
)
@Required
ValueProperty PROP_LIFERAY_VERSION = new ValueProperty( TYPE, "LiferayVersion" );
Value<String> getLiferayVersion();
void setLiferayVersion( String value );
}