Example usage for com.liferay.portal.kernel.webdav WebDAVRequest getUserId

List of usage examples for com.liferay.portal.kernel.webdav WebDAVRequest getUserId

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.webdav WebDAVRequest getUserId.

Prototype

public long getUserId();

Source Link

Usage

From source file:com.liferay.document.library.web.internal.webdav.DLWebDAVStorageImpl.java

License:Open Source License

@Override
public int moveCollectionResource(WebDAVRequest webDAVRequest, Resource resource, String destination,
        boolean overwrite) throws WebDAVException {

    try {//from   ww w .jav a2s.co m
        String[] destinationArray = WebDAVUtil.getPathArray(destination, true);

        Folder folder = (Folder) resource.getModel();

        long companyId = webDAVRequest.getCompanyId();

        long groupId = WebDAVUtil.getGroupId(companyId, destinationArray);

        long folderId = folder.getFolderId();
        long parentFolderId = getParentFolderId(companyId, destinationArray);
        String name = WebDAVUtil.getResourceName(destinationArray);
        String description = folder.getDescription();

        ServiceContext serviceContext = new ServiceContext();

        serviceContext.setUserId(webDAVRequest.getUserId());

        int status = HttpServletResponse.SC_CREATED;

        if (overwrite) {
            if (deleteResource(groupId, parentFolderId, name, webDAVRequest.getLockUuid())) {

                status = HttpServletResponse.SC_NO_CONTENT;
            }
        }

        if (parentFolderId != folder.getParentFolderId()) {
            _dlAppService.moveFolder(folderId, parentFolderId, serviceContext);
        }

        if (!name.equals(folder.getName())) {
            _dlAppService.updateFolder(folderId, name, description, serviceContext);
        }

        return status;
    } catch (PrincipalException pe) {
        if (_log.isDebugEnabled()) {
            _log.debug(pe, pe);
        }

        return HttpServletResponse.SC_FORBIDDEN;
    } catch (DuplicateFolderNameException dfne) {
        if (_log.isDebugEnabled()) {
            _log.debug(dfne, dfne);
        }

        return HttpServletResponse.SC_PRECONDITION_FAILED;
    } catch (Exception e) {
        throw new WebDAVException(e);
    }
}

From source file:com.liferay.dynamic.data.mapping.webdav.DDMWebDav.java

License:Open Source License

public int addResource(WebDAVRequest webDavRequest, long classNameId) throws Exception {

    String[] pathArray = webDavRequest.getPathArray();

    if (pathArray.length != 4) {
        return HttpServletResponse.SC_FORBIDDEN;
    }/*w w  w.j av  a2  s . c o  m*/

    String type = pathArray[2];
    String typeId = pathArray[3];

    if (type.equals(TYPE_STRUCTURES)) {
        HttpServletRequest request = webDavRequest.getHttpServletRequest();

        String definition = StringUtil.read(request.getInputStream());

        DDMForm ddmForm = getDDMForm(definition);

        DDMFormLayout ddmFormLayout = _ddm.getDefaultDDMFormLayout(ddmForm);

        Map<Locale, String> nameMap = new HashMap<>();

        Locale defaultLocale = ddmForm.getDefaultLocale();

        nameMap.put(defaultLocale, typeId);

        ServiceContext serviceContext = new ServiceContext();

        serviceContext.setAddGroupPermissions(true);
        serviceContext.setAddGuestPermissions(true);

        _ddmStructureLocalService.addStructure(webDavRequest.getUserId(), webDavRequest.getGroupId(),
                classNameId, nameMap, null, ddmForm, ddmFormLayout, StorageType.JSON.toString(),
                serviceContext);

        return HttpServletResponse.SC_CREATED;
    } else if (type.equals(TYPE_TEMPLATES)) {

        // DDM templates can not be added via WebDAV because there is no way
        // to know the associated class name or class PK

        return HttpServletResponse.SC_FORBIDDEN;
    }

    return HttpServletResponse.SC_FORBIDDEN;
}

From source file:it.smc.calendar.sync.caldav.BasePropsProcessor.java

License:Open Source License

protected void init(WebDAVRequest webDAVRequest, Resource resource, Element rootElement) {

    this.resource = resource;
    this.webDAVRequest = webDAVRequest;

    responseElement = DocUtil.add(rootElement, CalDAVProps.createQName("response"));

    DocUtil.add(responseElement, CalDAVProps.createQName("href"), resource.getHREF());

    // Build success and failure propstat elements

    successPropStatElement = DocUtil.add(responseElement, CalDAVProps.createQName("propstat"));
    successPropElement = DocUtil.add(successPropStatElement, CalDAVProps.createQName("prop"));
    DocUtil.add(successPropStatElement, CalDAVProps.createQName("status"), "HTTP/1.1 200 OK");

    failurePropStatElement = DocUtil.add(responseElement, CalDAVProps.createQName("propstat"));
    failurePropElement = DocUtil.add(failurePropStatElement, CalDAVProps.createQName("prop"));
    DocUtil.add(failurePropStatElement, CalDAVProps.createQName("status"), "HTTP/1.1 404 Not Found");

    try {//ww  w .  j  a  v  a2 s .c  o  m
        currentPrincipal = UserServiceUtil.getUserById(webDAVRequest.getUserId());
        locale = currentPrincipal.getLocale();
    } catch (Exception e) {
        _log.error(e);
    }
}