com.crm.provisioning.service.impl.ProvisioningActionLocalServiceImpl.java Source code

Java tutorial

Introduction

Here is the source code for com.crm.provisioning.service.impl.ProvisioningActionLocalServiceImpl.java

Source

/**
 * Copyright (c) 2000-2011 Liferay, Inc. All rights reserved.
 *
 * This library is free software; you can redistribute it and/or modify it under
 * the terms of the GNU Lesser General Public License as published by the Free
 * Software Foundation; either version 2.1 of the License, or (at your option)
 * any later version.
 *
 * This library is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
 * details.
 */

package com.crm.provisioning.service.impl;

import java.util.Date;
import java.util.List;

import com.liferay.portal.kernel.exception.PortalException;
import com.liferay.portal.kernel.exception.SystemException;
import com.liferay.portal.kernel.workflow.WorkflowConstants;
import com.liferay.portal.model.User;

import com.crm.provisioning.model.ProvisioningAction;
import com.crm.provisioning.service.base.ProvisioningActionLocalServiceBaseImpl;

/**
 * The implementation of the provisioning action local service.
 * 
 * <p>
 * All custom service methods should be put in this class. Whenever methods are
 * added, rerun ServiceBuilder to copy their definitions into the
 * {@link com.crm.provisioning.service.ProvisioningActionLocalService}
 * interface.
 * </p>
 * 
 * <p>
 * Never reference this interface directly. Always use
 * {@link com.crm.provisioning.service.ProvisioningActionLocalServiceUtil} to
 * access the provisioning action local service.
 * </p>
 * 
 * <p>
 * This is a local service. Methods of this service will not have security
 * checks based on the propagated JAAS credentials because this service can only
 * be accessed from within the same VM.
 * </p>
 * 
 * @author ThangPV
 * @see com.crm.provisioning.service.base.ProvisioningActionLocalServiceBaseImpl
 * @see com.crm.provisioning.service.ProvisioningActionLocalServiceUtil
 */
public class ProvisioningActionLocalServiceImpl extends ProvisioningActionLocalServiceBaseImpl {
    protected ProvisioningAction updateAction(long userId, ProvisioningAction provisioningAction)
            throws PortalException, SystemException {
        // Finder
        User user = userPersistence.findByPrimaryKey(userId);

        Date now = new Date();

        provisioningAction.setUserId(user.getUserId());
        provisioningAction.setUserName(user.getScreenName());
        if (provisioningAction.isNew()) {
            provisioningAction.setCreateDate(now);
        }
        provisioningAction.setModifiedDate(now);

        if (provisioningAction.getStatus() == WorkflowConstants.STATUS_ANY) {
            provisioningAction.setStatus(WorkflowConstants.STATUS_APPROVED);
        }

        return provisioningActionPersistence.update(provisioningAction, false);
    }

    public ProvisioningAction addAction(long userId, long groupId, long provisioningId, long commandId,
            boolean retryEnable, int maxRetry, boolean logEnable, int priority, int timeout, String properties,
            String processClass, String processMethod, int status, String description)
            throws PortalException, SystemException {
        validate(provisioningId, commandId, retryEnable, maxRetry, logEnable, priority, timeout, properties,
                processClass, processMethod);

        ProvisioningAction provisioningAction = provisioningActionPersistence.create(0);

        provisioningAction.setProvisioningId(provisioningId);
        provisioningAction.setCommandId(commandId);

        provisioningAction.setRetryEnable(retryEnable);
        provisioningAction.setMaxRetry(maxRetry);
        provisioningAction.setPriority(priority);
        provisioningAction.setTimeout(timeout);
        provisioningAction.setLogEnable(logEnable);

        provisioningAction.setProperties(properties);
        provisioningAction.setProcessClass(processClass);
        provisioningAction.setProcessMethod(processMethod);

        provisioningAction.setStatus(status);
        provisioningAction.setDescription(description);

        return updateAction(userId, provisioningAction);
    }

    public ProvisioningAction updateAction(long userId, long groupId, long actionId, long provisioningId,
            long commandId, boolean retryEnable, int maxRetry, boolean logEnable, int priority, int timeout,
            String properties, String processClass, String processMethod, int status, String description)
            throws PortalException, SystemException {
        validate(provisioningId, commandId, retryEnable, maxRetry, logEnable, priority, timeout, properties,
                processClass, processMethod);

        ProvisioningAction provisioningAction = provisioningActionPersistence.fetchByPrimaryKey(actionId);

        provisioningAction.setProvisioningId(provisioningId);
        provisioningAction.setCommandId(commandId);

        provisioningAction.setRetryEnable(retryEnable);
        provisioningAction.setMaxRetry(maxRetry);
        provisioningAction.setPriority(priority);
        provisioningAction.setTimeout(timeout);
        provisioningAction.setLogEnable(logEnable);

        provisioningAction.setProperties(properties);
        provisioningAction.setProcessClass(processClass);
        provisioningAction.setProcessMethod(processMethod);

        provisioningAction.setStatus(status);
        provisioningAction.setDescription(description);

        return updateAction(userId, provisioningAction);
    }

    public ProvisioningAction deleteAction(long actionId) throws PortalException, SystemException {
        return provisioningActionPersistence.remove(actionId);
    }

    public void deleteByProvisioning(long provisioningId) throws PortalException, SystemException {
        for (ProvisioningAction command : getByProvisioning(provisioningId)) {
            provisioningActionPersistence.remove(command);
        }
    }

    protected void validate(long provisioningId, long commandId, boolean retryEnable, int maxRetry,
            boolean logEnable, int priority, int timeout, String properties, String processClass,
            String processMethod) throws PortalException, SystemException {
    }

    public ProvisioningAction getAction(long actionId) throws PortalException, SystemException {
        return provisioningActionPersistence.findByPrimaryKey(actionId);
    }

    public ProvisioningAction fetchAction(long actionId) throws PortalException, SystemException {
        return provisioningActionPersistence.fetchByPrimaryKey(actionId);
    }

    public int countByProvisioning(long provisioningId) throws PortalException, SystemException {
        return provisioningActionPersistence.countByProvisioning(provisioningId);
    }

    public List<ProvisioningAction> getByProvisioning(long provisioningId) throws PortalException, SystemException {
        return provisioningActionPersistence.findByProvisioning(provisioningId);
    }

    public List<ProvisioningAction> getByCommand(long commandId) throws PortalException, SystemException {
        return provisioningActionPersistence.findByCommand(commandId);
    }

    public ProvisioningAction fetchByCommand(long provisioningId, long commandId)
            throws PortalException, SystemException {
        return provisioningActionPersistence.fetchByP_C(provisioningId, commandId);
    }

    public ProvisioningAction getByCommand(long provisioningId, long commandId)
            throws PortalException, SystemException {
        return provisioningActionPersistence.findByP_C(provisioningId, commandId);
    }
}