
com.liferay.mail.reader.service.AccountLocalService Maven / Gradle / Ivy
/**
* Copyright (c) 2000-present 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.liferay.mail.reader.service;
import com.liferay.mail.reader.model.Account;
import com.liferay.petra.sql.dsl.query.DSLQuery;
import com.liferay.portal.kernel.dao.orm.ActionableDynamicQuery;
import com.liferay.portal.kernel.dao.orm.DynamicQuery;
import com.liferay.portal.kernel.dao.orm.IndexableActionableDynamicQuery;
import com.liferay.portal.kernel.dao.orm.Projection;
import com.liferay.portal.kernel.exception.PortalException;
import com.liferay.portal.kernel.exception.SystemException;
import com.liferay.portal.kernel.model.PersistedModel;
import com.liferay.portal.kernel.model.SystemEventConstants;
import com.liferay.portal.kernel.search.Indexable;
import com.liferay.portal.kernel.search.IndexableType;
import com.liferay.portal.kernel.service.BaseLocalService;
import com.liferay.portal.kernel.service.PersistedModelLocalService;
import com.liferay.portal.kernel.systemevent.SystemEvent;
import com.liferay.portal.kernel.transaction.Isolation;
import com.liferay.portal.kernel.transaction.Propagation;
import com.liferay.portal.kernel.transaction.Transactional;
import com.liferay.portal.kernel.util.OrderByComparator;
import java.io.Serializable;
import java.util.List;
import org.osgi.annotation.versioning.ProviderType;
/**
* Provides the local service interface for Account. 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.
*
* @author Brian Wing Shun Chan
* @see AccountLocalServiceUtil
* @generated
*/
@ProviderType
@Transactional(
isolation = Isolation.PORTAL,
rollbackFor = {PortalException.class, SystemException.class}
)
public interface AccountLocalService
extends BaseLocalService, PersistedModelLocalService {
/*
* NOTE FOR DEVELOPERS:
*
* Never modify this interface directly. Add custom service methods to com.liferay.mail.reader.service.impl.AccountLocalServiceImpl
and rerun ServiceBuilder to automatically copy the method declarations to this interface. Consume the account local service via injection or a org.osgi.util.tracker.ServiceTracker
. Use {@link AccountLocalServiceUtil} if injection and service tracking are not available.
*/
/**
* Adds the account to the database. Also notifies the appropriate model listeners.
*
*
* Important: Inspect AccountLocalServiceImpl for overloaded versions of the method. If provided, use these entry points to the API, as the implementation logic may require the additional parameters defined there.
*
*
* @param account the account
* @return the account that was added
*/
@Indexable(type = IndexableType.REINDEX)
public Account addAccount(Account account);
public Account addAccount(
long userId, String address, String personalName, String protocol,
String incomingHostName, int incomingPort, boolean incomingSecure,
String outgoingHostName, int outgoingPort, boolean outgoingSecure,
String login, String password, boolean savePassword,
String signature, boolean useSignature, String folderPrefix,
long inboxFolderId, long draftFolderId, long sentFolderId,
long trashFolderId, boolean defaultSender)
throws PortalException;
/**
* Creates a new account with the primary key. Does not add the account to the database.
*
* @param accountId the primary key for the new account
* @return the new account
*/
@Transactional(enabled = false)
public Account createAccount(long accountId);
/**
* @throws PortalException
*/
public PersistedModel createPersistedModel(Serializable primaryKeyObj)
throws PortalException;
/**
* Deletes the account from the database. Also notifies the appropriate model listeners.
*
*
* Important: Inspect AccountLocalServiceImpl for overloaded versions of the method. If provided, use these entry points to the API, as the implementation logic may require the additional parameters defined there.
*
*
* @param account the account
* @return the account that was removed
* @throws PortalException
*/
@Indexable(type = IndexableType.DELETE)
@SystemEvent(type = SystemEventConstants.TYPE_DELETE)
public Account deleteAccount(Account account) throws PortalException;
/**
* Deletes the account with the primary key from the database. Also notifies the appropriate model listeners.
*
*
* Important: Inspect AccountLocalServiceImpl for overloaded versions of the method. If provided, use these entry points to the API, as the implementation logic may require the additional parameters defined there.
*
*
* @param accountId the primary key of the account
* @return the account that was removed
* @throws PortalException if a account with the primary key could not be found
*/
@Indexable(type = IndexableType.DELETE)
public Account deleteAccount(long accountId) throws PortalException;
public void deleteAccounts(long userId) throws PortalException;
/**
* @throws PortalException
*/
@Override
public PersistedModel deletePersistedModel(PersistedModel persistedModel)
throws PortalException;
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public T dslQuery(DSLQuery dslQuery);
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int dslQueryCount(DSLQuery dslQuery);
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public DynamicQuery dynamicQuery();
/**
* Performs a dynamic query on the database and returns the matching rows.
*
* @param dynamicQuery the dynamic query
* @return the matching rows
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List dynamicQuery(DynamicQuery dynamicQuery);
/**
* Performs a dynamic query on the database and returns a range of the matching rows.
*
*
* Useful when paginating results. Returns a maximum of end - start
instances. start
and end
are not primary keys, they are indexes in the result set. Thus, 0
refers to the first result in the set. Setting both start
and end
to com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS
will return the full result set. If orderByComparator
is specified, then the query will include the given ORDER BY logic. If orderByComparator
is absent, then the query will include the default ORDER BY logic from com.liferay.mail.reader.model.impl.AccountModelImpl
.
*
*
* @param dynamicQuery the dynamic query
* @param start the lower bound of the range of model instances
* @param end the upper bound of the range of model instances (not inclusive)
* @return the range of matching rows
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List dynamicQuery(
DynamicQuery dynamicQuery, int start, int end);
/**
* Performs a dynamic query on the database and returns an ordered range of the matching rows.
*
*
* Useful when paginating results. Returns a maximum of end - start
instances. start
and end
are not primary keys, they are indexes in the result set. Thus, 0
refers to the first result in the set. Setting both start
and end
to com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS
will return the full result set. If orderByComparator
is specified, then the query will include the given ORDER BY logic. If orderByComparator
is absent, then the query will include the default ORDER BY logic from com.liferay.mail.reader.model.impl.AccountModelImpl
.
*
*
* @param dynamicQuery the dynamic query
* @param start the lower bound of the range of model instances
* @param end the upper bound of the range of model instances (not inclusive)
* @param orderByComparator the comparator to order the results by (optionally null
)
* @return the ordered range of matching rows
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List dynamicQuery(
DynamicQuery dynamicQuery, int start, int end,
OrderByComparator orderByComparator);
/**
* Returns the number of rows matching the dynamic query.
*
* @param dynamicQuery the dynamic query
* @return the number of rows matching the dynamic query
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public long dynamicQueryCount(DynamicQuery dynamicQuery);
/**
* Returns the number of rows matching the dynamic query.
*
* @param dynamicQuery the dynamic query
* @param projection the projection to apply to the query
* @return the number of rows matching the dynamic query
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public long dynamicQueryCount(
DynamicQuery dynamicQuery, Projection projection);
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public Account fetchAccount(long accountId);
/**
* Returns the account with the primary key.
*
* @param accountId the primary key of the account
* @return the account
* @throws PortalException if a account with the primary key could not be found
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public Account getAccount(long accountId) throws PortalException;
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public Account getAccount(long userId, String address)
throws PortalException;
/**
* Returns a range of all the accounts.
*
*
* Useful when paginating results. Returns a maximum of end - start
instances. start
and end
are not primary keys, they are indexes in the result set. Thus, 0
refers to the first result in the set. Setting both start
and end
to com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS
will return the full result set. If orderByComparator
is specified, then the query will include the given ORDER BY logic. If orderByComparator
is absent, then the query will include the default ORDER BY logic from com.liferay.mail.reader.model.impl.AccountModelImpl
.
*
*
* @param start the lower bound of the range of accounts
* @param end the upper bound of the range of accounts (not inclusive)
* @return the range of accounts
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List getAccounts(int start, int end);
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public List getAccounts(long userId);
/**
* Returns the number of accounts.
*
* @return the number of accounts
*/
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public int getAccountsCount();
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public ActionableDynamicQuery getActionableDynamicQuery();
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public IndexableActionableDynamicQuery getIndexableActionableDynamicQuery();
/**
* Returns the OSGi service identifier.
*
* @return the OSGi service identifier
*/
public String getOSGiServiceIdentifier();
/**
* @throws PortalException
*/
@Override
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public PersistedModel getPersistedModel(Serializable primaryKeyObj)
throws PortalException;
/**
* Updates the account in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
*
*
* Important: Inspect AccountLocalServiceImpl for overloaded versions of the method. If provided, use these entry points to the API, as the implementation logic may require the additional parameters defined there.
*
*
* @param account the account
* @return the account that was updated
*/
@Indexable(type = IndexableType.REINDEX)
public Account updateAccount(Account account);
public Account updateAccount(
long accountId, String personalName, String password,
boolean savePassword, String signature, boolean useSignature,
String folderPrefix, boolean defaultSender)
throws PortalException;
public Account updateFolders(
long accountId, long inboxFolderId, long draftFolderId,
long sentFolderId, long trashFolderId)
throws PortalException;
}