use of com.liferay.ide.hook.core.model.CustomJsp 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 com.liferay.ide.hook.core.model.CustomJsp 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);
}
}
Aggregations