use of org.eclipse.sapphire.modeling.Path in project liferay-ide by liferay.
the class PortalPropertiesFileListener method handleTypedEvent.
@Override
protected void handleTypedEvent(PropertyContentEvent event) {
Property prop = event.property();
if (Hook.PROP_PORTAL_PROPERTIES_FILE.equals(prop.definition())) {
Hook hook = prop.element().nearest(Hook.class);
PortalPropertiesFile ppf = hook.getPortalPropertiesFile().content(false);
if (ppf != null) {
Value<Path> value = ppf.getValue();
if (value != null) {
Path path = value.content(false);
if (path == null) {
ppf.initialize();
}
}
}
}
}
use of org.eclipse.sapphire.modeling.Path in project liferay-ide by liferay.
the class CreateSrcFileActionHandler method _getSrcFile.
private IFile _getSrcFile() {
IFile retval = null;
ValueProperty valueProperty = ValueProperty.class.cast(property().definition());
Value<Path> value = getModelElement().property(valueProperty);
if ((value != null) && !CoreUtil.isNullOrEmpty(value.text())) {
IPath defaultSrcFolderPath = _getDefaultSrcFolderPath();
if (defaultSrcFolderPath != null) {
IPath filePath = defaultSrcFolderPath.append(value.text());
IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
retval = root.getFile(filePath);
}
}
return retval;
}
use of org.eclipse.sapphire.modeling.Path in project liferay-ide by liferay.
the class HookXmlEditor method _copyCustomJspsToProject.
private void _copyCustomJspsToProject(IPath portalDir, ElementList<CustomJsp> customJsps) {
try {
Hook hook = getModelElement().nearest(Hook.class);
ElementHandle<CustomJspDir> element = hook.getCustomJspDir();
CustomJspDir customJspDirElement = element.content();
if ((customJspDirElement != null) && customJspDirElement.validation().ok()) {
Path customJspDir = customJspDirElement.getValue().content();
IWebProject webproject = LiferayCore.create(IWebProject.class, getProject());
if (webproject != null) {
IFolder defaultDocroot = webproject.getDefaultDocrootFolder();
IFolder customJspFolder = defaultDocroot.getFolder(customJspDir.toPortableString());
for (CustomJsp customJsp : customJsps) {
String content = customJsp.getValue().content();
if (!empty(content)) {
IFile customJspFile = customJspFolder.getFile(content);
if (!customJspFile.exists()) {
IPath portalJsp = portalDir.append(content);
try {
CoreUtil.makeFolders((IFolder) customJspFile.getParent());
if (portalJsp.toFile().exists()) {
customJspFile.create(Files.newInputStream(portalJsp.toFile().toPath()), true, null);
} else {
CoreUtil.createEmptyFile(customJspFile);
}
} catch (Exception e) {
HookUI.logError(e);
}
}
}
}
}
}
} catch (Exception e) {
HookUI.logError(e);
}
}
use of org.eclipse.sapphire.modeling.Path in project liferay-ide by liferay.
the class HookXmlEditor method doSave.
@Override
public void doSave(IProgressMonitor monitor) {
if (customModelDirty) {
Hook hook = getModelElement().nearest(Hook.class);
ElementList<CustomJsp> customJsps = hook.getCustomJsps();
ILiferayProject liferayProject = LiferayCore.create(getProject());
ILiferayPortal portal = liferayProject.adapt(ILiferayPortal.class);
if (portal != null) {
IPath portalDir = portal.getAppServerPortalDir();
if (portalDir != null) {
_copyCustomJspsToProject(portalDir, customJsps);
}
}
customModelDirty = false;
super.doSave(monitor);
firePropertyChange(IEditorPart.PROP_DIRTY);
ElementHandle<CustomJspDir> customJspDir = hook.getCustomJspDir();
if ((customJspDir != null) && !customJspDir.empty()) {
Value<Path> customJspPath = customJspDir.content().getValue();
Path path = customJspPath.content().makeRelative();
String customeJspValue = path.toPortableString();
_configureCustomJspValidation(getProject(), customeJspValue);
}
} else {
super.doSave(monitor);
}
}
use of org.eclipse.sapphire.modeling.Path in project liferay-ide by liferay.
the class CustomJspsEnablementService method compute.
@Override
protected Boolean compute() {
boolean enablement = true;
ElementHandle<CustomJspDir> elementHandle = _hook().getCustomJspDir();
CustomJspDir customJspDir = elementHandle.content();
if (customJspDir != null) {
IProject project = _hook().adapt(IProject.class);
Path customJspDirPath = customJspDir.getValue().content(true);
if ((project != null) && (customJspDirPath != null)) {
IWebProject lrproject = LiferayCore.create(IWebProject.class, project);
if (lrproject != null) {
IFolder defaultWebappDir = lrproject.getDefaultDocrootFolder();
if (FileUtil.exists(defaultWebappDir)) {
IFolder customJspFolder = defaultWebappDir.getFolder(PathBridge.create(customJspDirPath));
enablement = FileUtil.exists(customJspFolder);
}
}
}
}
return enablement;
}
Aggregations