001    /**
002     * Copyright (c) 2000-present Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portal.service;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.exception.PortalException;
020    import com.liferay.portal.kernel.exception.SystemException;
021    import com.liferay.portal.kernel.jsonwebservice.JSONWebService;
022    import com.liferay.portal.kernel.security.access.control.AccessControlled;
023    import com.liferay.portal.kernel.transaction.Isolation;
024    import com.liferay.portal.kernel.transaction.Propagation;
025    import com.liferay.portal.kernel.transaction.Transactional;
026    
027    /**
028     * Provides the remote service interface for Address. Methods of this
029     * service are expected to have security checks based on the propagated JAAS
030     * credentials because this service can be accessed remotely.
031     *
032     * @author Brian Wing Shun Chan
033     * @see AddressServiceUtil
034     * @see com.liferay.portal.service.base.AddressServiceBaseImpl
035     * @see com.liferay.portal.service.impl.AddressServiceImpl
036     * @generated
037     */
038    @AccessControlled
039    @JSONWebService
040    @ProviderType
041    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
042            PortalException.class, SystemException.class})
043    public interface AddressService extends BaseService {
044            /*
045             * NOTE FOR DEVELOPERS:
046             *
047             * Never modify or reference this interface directly. Always use {@link AddressServiceUtil} to access the address remote service. Add custom service methods to {@link com.liferay.portal.service.impl.AddressServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
048             */
049    
050            /**
051            * @deprecated As of 6.2.0, replaced by {@link #addAddress(String, long,
052            String, String, String, String, String, long, long, int,
053            boolean, boolean, ServiceContext)}
054            */
055            @java.lang.Deprecated
056            public com.liferay.portal.model.Address addAddress(
057                    java.lang.String className, long classPK, java.lang.String street1,
058                    java.lang.String street2, java.lang.String street3,
059                    java.lang.String city, java.lang.String zip, long regionId,
060                    long countryId, long typeId, boolean mailing, boolean primary)
061                    throws PortalException;
062    
063            public com.liferay.portal.model.Address addAddress(
064                    java.lang.String className, long classPK, java.lang.String street1,
065                    java.lang.String street2, java.lang.String street3,
066                    java.lang.String city, java.lang.String zip, long regionId,
067                    long countryId, long typeId, boolean mailing, boolean primary,
068                    com.liferay.portal.service.ServiceContext serviceContext)
069                    throws PortalException;
070    
071            public void deleteAddress(long addressId) throws PortalException;
072    
073            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
074            public com.liferay.portal.model.Address getAddress(long addressId)
075                    throws PortalException;
076    
077            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
078            public java.util.List<com.liferay.portal.model.Address> getAddresses(
079                    java.lang.String className, long classPK) throws PortalException;
080    
081            /**
082            * Returns the OSGi service identifier.
083            *
084            * @return the OSGi service identifier
085            */
086            public java.lang.String getOSGiServiceIdentifier();
087    
088            public com.liferay.portal.model.Address updateAddress(long addressId,
089                    java.lang.String street1, java.lang.String street2,
090                    java.lang.String street3, java.lang.String city, java.lang.String zip,
091                    long regionId, long countryId, long typeId, boolean mailing,
092                    boolean primary) throws PortalException;
093    }