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.transaction.Isolation;
023    import com.liferay.portal.kernel.transaction.Propagation;
024    import com.liferay.portal.kernel.transaction.Transactional;
025    import com.liferay.portal.security.ac.AccessControlled;
026    
027    /**
028     * Provides the remote service interface for Layout. 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 LayoutServiceUtil
034     * @see com.liferay.portal.service.base.LayoutServiceBaseImpl
035     * @see com.liferay.portal.service.impl.LayoutServiceImpl
036     * @generated
037     */
038    @AccessControlled
039    @JSONWebService
040    @ProviderType
041    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
042            PortalException.class, SystemException.class})
043    public interface LayoutService extends BaseService {
044            /*
045             * NOTE FOR DEVELOPERS:
046             *
047             * Never modify or reference this interface directly. Always use {@link LayoutServiceUtil} to access the layout remote service. Add custom service methods to {@link com.liferay.portal.service.impl.LayoutServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
048             */
049    
050            /**
051            * Adds a layout with additional parameters.
052            *
053            * <p>
054            * This method handles the creation of the layout including its resources,
055            * metadata, and internal data structures. It is not necessary to make
056            * subsequent calls to any methods to setup default groups, resources, ...
057            * etc.
058            * </p>
059            *
060            * @param groupId the primary key of the group
061            * @param privateLayout whether the layout is private to the group
062            * @param parentLayoutId the primary key of the parent layout
063            (optionally {@link
064            com.liferay.portal.model.LayoutConstants#DEFAULT_PARENT_LAYOUT_ID})
065            * @param localeNamesMap the layout's locales and localized names
066            * @param localeTitlesMap the layout's locales and localized titles
067            * @param descriptionMap the layout's locales and localized
068            descriptions
069            * @param keywordsMap the layout's locales and localized keywords
070            * @param robotsMap the layout's locales and localized robots
071            * @param type the layout's type (optionally {@link
072            com.liferay.portal.model.LayoutConstants#TYPE_PORTLET}). The
073            possible types can be found in {@link
074            com.liferay.portal.model.LayoutConstants}.
075            * @param hidden whether the layout is hidden
076            * @param friendlyURL the layout's locales and localized friendly URLs.
077            To see how the URL is normalized when accessed, see {@link
078            com.liferay.portal.kernel.util.FriendlyURLNormalizerUtil#normalize(
079            String)}.
080            * @param serviceContext the service context to be applied. Must set
081            the UUID for the layout. Can set the creation date,
082            modification date, and expando bridge attributes for the
083            layout. For layouts that belong to a layout set prototype, an
084            attribute named <code>layoutUpdateable</code> can be used to
085            specify whether site administrators can modify this page
086            within their site.
087            * @return the layout
088            * @throws PortalException if a group with the primary key could not be
089            found, if the group did not have permission to manage the
090            layouts involved, if layout values were invalid, or if a
091            portal exception occurred
092            * @deprecated As of 6.2.0, replaced by {@link #addLayout(long, boolean,
093            long, Map, Map, Map, Map, Map, String, String, boolean, Map,
094            ServiceContext)}
095            */
096            @java.lang.Deprecated
097            public com.liferay.portal.model.Layout addLayout(long groupId,
098                    boolean privateLayout, long parentLayoutId,
099                    java.util.Map<java.util.Locale, java.lang.String> localeNamesMap,
100                    java.util.Map<java.util.Locale, java.lang.String> localeTitlesMap,
101                    java.util.Map<java.util.Locale, java.lang.String> descriptionMap,
102                    java.util.Map<java.util.Locale, java.lang.String> keywordsMap,
103                    java.util.Map<java.util.Locale, java.lang.String> robotsMap,
104                    java.lang.String type, boolean hidden, java.lang.String friendlyURL,
105                    com.liferay.portal.service.ServiceContext serviceContext)
106                    throws com.liferay.portal.kernel.exception.PortalException;
107    
108            /**
109            * Adds a layout with additional parameters.
110            *
111            * <p>
112            * This method handles the creation of the layout including its resources,
113            * metadata, and internal data structures. It is not necessary to make
114            * subsequent calls to any methods to setup default groups, resources, ...
115            * etc.
116            * </p>
117            *
118            * @param groupId the primary key of the group
119            * @param privateLayout whether the layout is private to the group
120            * @param parentLayoutId the primary key of the parent layout (optionally
121            {@link
122            com.liferay.portal.model.LayoutConstants#DEFAULT_PARENT_LAYOUT_ID})
123            * @param localeNamesMap the layout's locales and localized names
124            * @param localeTitlesMap the layout's locales and localized titles
125            * @param descriptionMap the layout's locales and localized descriptions
126            * @param keywordsMap the layout's locales and localized keywords
127            * @param robotsMap the layout's locales and localized robots
128            * @param type the layout's type (optionally {@link
129            com.liferay.portal.model.LayoutConstants#TYPE_PORTLET}). The
130            possible types can be found in {@link
131            com.liferay.portal.model.LayoutConstants}.
132            * @param typeSettings the settings to load the unicode properties object.
133            See {@link com.liferay.portal.kernel.util.UnicodeProperties
134            #fastLoad(String)}.
135            * @param hidden whether the layout is hidden
136            * @param friendlyURLMap the layout's locales and localized friendly URLs.
137            To see how the URL is normalized when accessed, see {@link
138            com.liferay.portal.kernel.util.FriendlyURLNormalizerUtil#normalize(
139            String)}.
140            * @param serviceContext the service context to be applied. Must set the
141            UUID for the layout. Can set the creation date, modification
142            date, and expando bridge attributes for the layout. For layouts
143            that belong to a layout set prototype, an attribute named
144            <code>layoutUpdateable</code> can be used to specify whether site
145            administrators can modify this page within their site.
146            * @return the layout
147            * @throws PortalException if a group with the primary key could not be
148            found, if the group did not have permission to manage the layouts
149            involved, if layout values were invalid, or if a portal exception
150            occurred
151            */
152            public com.liferay.portal.model.Layout addLayout(long groupId,
153                    boolean privateLayout, long parentLayoutId,
154                    java.util.Map<java.util.Locale, java.lang.String> localeNamesMap,
155                    java.util.Map<java.util.Locale, java.lang.String> localeTitlesMap,
156                    java.util.Map<java.util.Locale, java.lang.String> descriptionMap,
157                    java.util.Map<java.util.Locale, java.lang.String> keywordsMap,
158                    java.util.Map<java.util.Locale, java.lang.String> robotsMap,
159                    java.lang.String type, java.lang.String typeSettings, boolean hidden,
160                    java.util.Map<java.util.Locale, java.lang.String> friendlyURLMap,
161                    com.liferay.portal.service.ServiceContext serviceContext)
162                    throws com.liferay.portal.kernel.exception.PortalException;
163    
164            /**
165            * Adds a layout with single entry maps for name, title, and description to
166            * the default locale.
167            *
168            * <p>
169            * This method handles the creation of the layout including its resources,
170            * metadata, and internal data structures. It is not necessary to make
171            * subsequent calls to any methods to setup default groups, resources, ...
172            * etc.
173            * </p>
174            *
175            * @param groupId the primary key of the group
176            * @param privateLayout whether the layout is private to the group
177            * @param parentLayoutId the primary key of the parent layout (optionally
178            {@link
179            com.liferay.portal.model.LayoutConstants#DEFAULT_PARENT_LAYOUT_ID})
180            * @param name Map the layout's locales and localized names
181            * @param title Map the layout's locales and localized titles
182            * @param description Map the layout's locales and localized descriptions
183            * @param type the layout's type (optionally {@link
184            com.liferay.portal.model.LayoutConstants#TYPE_PORTLET}). The
185            possible types can be found in {@link
186            com.liferay.portal.model.LayoutConstants}.
187            * @param hidden whether the layout is hidden
188            * @param friendlyURL the layout's locales and localized friendly URLs. To
189            see how the URL is normalized when accessed, see {@link
190            com.liferay.portal.kernel.util.FriendlyURLNormalizerUtil#normalize(
191            String)}.
192            * @param serviceContext the service context to be applied. Must set the
193            UUID for the layout. Can specify the creation date, modification
194            date, and expando bridge attributes for the layout. For layouts
195            that belong to a layout set prototype, an attribute named
196            <code>layoutUpdateable</code> can be used to specify whether site
197            administrators can modify this page within their site.
198            * @return the layout
199            * @throws PortalException if a group with the primary key could not be
200            found, if the group did not have permission to manage the layouts
201            involved, if layout values were invalid, or if a portal exception
202            occurred
203            */
204            public com.liferay.portal.model.Layout addLayout(long groupId,
205                    boolean privateLayout, long parentLayoutId, java.lang.String name,
206                    java.lang.String title, java.lang.String description,
207                    java.lang.String type, boolean hidden, java.lang.String friendlyURL,
208                    com.liferay.portal.service.ServiceContext serviceContext)
209                    throws com.liferay.portal.kernel.exception.PortalException;
210    
211            public com.liferay.portal.kernel.repository.model.FileEntry addTempFileEntry(
212                    long groupId, java.lang.String folderName, java.lang.String fileName,
213                    java.io.InputStream inputStream, java.lang.String mimeType)
214                    throws com.liferay.portal.kernel.exception.PortalException;
215    
216            /**
217            * Deletes the layout with the primary key, also deleting the layout's child
218            * layouts, and associated resources.
219            *
220            * @param groupId the primary key of the group
221            * @param privateLayout whether the layout is private to the group
222            * @param layoutId the primary key of the layout
223            * @param serviceContext the service context to be applied
224            * @throws PortalException if the user did not have permission to delete the
225            layout, if a matching layout could not be found , or if some
226            other portal exception occurred
227            */
228            public void deleteLayout(long groupId, boolean privateLayout,
229                    long layoutId, com.liferay.portal.service.ServiceContext serviceContext)
230                    throws com.liferay.portal.kernel.exception.PortalException;
231    
232            /**
233            * Deletes the layout with the plid, also deleting the layout's child
234            * layouts, and associated resources.
235            *
236            * @param plid the primary key of the layout
237            * @param serviceContext the service context to be applied
238            * @throws PortalException if the user did not have permission to delete the
239            layout, if a layout with the primary key could not be found , or
240            if some other portal exception occurred
241            */
242            public void deleteLayout(long plid,
243                    com.liferay.portal.service.ServiceContext serviceContext)
244                    throws com.liferay.portal.kernel.exception.PortalException;
245    
246            public void deleteTempFileEntry(long groupId, java.lang.String folderName,
247                    java.lang.String fileName)
248                    throws com.liferay.portal.kernel.exception.PortalException;
249    
250            /**
251            * Exports the layouts that match the primary keys and the criteria as a
252            * byte array.
253            *
254            * @param groupId the primary key of the group
255            * @param privateLayout whether the layout is private to the group
256            * @param layoutIds the primary keys of the layouts to be exported
257            * @param parameterMap the mapping of parameters indicating which
258            information to export. For information on the keys used in the
259            map see {@link
260            com.liferay.portal.kernel.lar.PortletDataHandlerKeys}.
261            * @param startDate the export's start date
262            * @param endDate the export's end date
263            * @return the layouts as a byte array
264            * @throws PortalException if a group or any layout with the primary key
265            could not be found, if the group did not have permission to
266            manage the layouts, or if some other portal exception occurred
267            */
268            public byte[] exportLayouts(long groupId, boolean privateLayout,
269                    long[] layoutIds,
270                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
271                    java.util.Date startDate, java.util.Date endDate)
272                    throws com.liferay.portal.kernel.exception.PortalException;
273    
274            /**
275            * Exports all layouts that match the criteria as a byte array.
276            *
277            * @param groupId the primary key of the group
278            * @param privateLayout whether the layout is private to the group
279            * @param parameterMap the mapping of parameters indicating which
280            information to export. For information on the keys used in the
281            map see {@link
282            com.liferay.portal.kernel.lar.PortletDataHandlerKeys}.
283            * @param startDate the export's start date
284            * @param endDate the export's end date
285            * @return the layout as a byte array
286            * @throws PortalException if a group with the primary key could not be
287            found, if the group did not have permission to manage the
288            layouts, or if some other portal exception occurred
289            */
290            public byte[] exportLayouts(long groupId, boolean privateLayout,
291                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
292                    java.util.Date startDate, java.util.Date endDate)
293                    throws com.liferay.portal.kernel.exception.PortalException;
294    
295            /**
296            * Exports all layouts that match the primary keys and criteria as a file.
297            *
298            * @param groupId the primary key of the group
299            * @param privateLayout whether the layout is private to the group
300            * @param layoutIds the primary keys of the layouts to be exported
301            (optionally <code>null</code>)
302            * @param parameterMap the mapping of parameters indicating which
303            information to export. For information on the keys used in the
304            map see {@link
305            com.liferay.portal.kernel.lar.PortletDataHandlerKeys}.
306            * @param startDate the export's start date
307            * @param endDate the export's end date
308            * @return the layouts as a File
309            * @throws PortalException if a group or any layout with the primary key
310            could not be found, it the group did not have permission to
311            manage the layouts, or if some other portal exception occurred
312            */
313            public java.io.File exportLayoutsAsFile(long groupId,
314                    boolean privateLayout, long[] layoutIds,
315                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
316                    java.util.Date startDate, java.util.Date endDate)
317                    throws com.liferay.portal.kernel.exception.PortalException;
318    
319            public long exportLayoutsAsFileInBackground(
320                    com.liferay.portal.model.ExportImportConfiguration exportImportConfiguration)
321                    throws com.liferay.portal.kernel.exception.PortalException;
322    
323            public long exportLayoutsAsFileInBackground(
324                    long exportImportConfigurationId)
325                    throws com.liferay.portal.kernel.exception.PortalException;
326    
327            public long exportLayoutsAsFileInBackground(java.lang.String taskName,
328                    long groupId, boolean privateLayout, long[] layoutIds,
329                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
330                    java.util.Date startDate, java.util.Date endDate)
331                    throws com.liferay.portal.kernel.exception.PortalException;
332    
333            /**
334            * @deprecated As of 7.0.0, replaced by {@link
335            #exportLayoutsAsFileInBackground(String, long, boolean,
336            long[], Map, Date, Date)}
337            */
338            @java.lang.Deprecated
339            public long exportLayoutsAsFileInBackground(java.lang.String taskName,
340                    long groupId, boolean privateLayout, long[] layoutIds,
341                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
342                    java.util.Date startDate, java.util.Date endDate,
343                    java.lang.String fileName)
344                    throws com.liferay.portal.kernel.exception.PortalException;
345    
346            public byte[] exportPortletInfo(long companyId, java.lang.String portletId,
347                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
348                    java.util.Date startDate, java.util.Date endDate)
349                    throws com.liferay.portal.kernel.exception.PortalException;
350    
351            /**
352            * Exports the portlet information (categories, permissions, ... etc.) as a
353            * byte array.
354            *
355            * @param plid the primary key of the layout
356            * @param groupId the primary key of the group
357            * @param portletId the primary key of the portlet
358            * @param parameterMap the mapping of parameters indicating which
359            information to export. For information on the keys used in the
360            map see {@link
361            com.liferay.portal.kernel.lar.PortletDataHandlerKeys}.
362            * @param startDate the export's start date
363            * @param endDate the export's end date
364            * @return the portlet information as a byte array
365            * @throws PortalException if a layout, group, or portlet with the primary
366            key could not be found, if the group did not have permission to
367            manage the layouts involved, or if some other portal exception
368            occurred
369            */
370            public byte[] exportPortletInfo(long plid, long groupId,
371                    java.lang.String portletId,
372                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
373                    java.util.Date startDate, java.util.Date endDate)
374                    throws com.liferay.portal.kernel.exception.PortalException;
375    
376            /**
377            * Exports the portlet information (categories, permissions, ... etc.) as a
378            * file.
379            *
380            * @param plid the primary key of the layout
381            * @param groupId the primary key of the group
382            * @param portletId the primary key of the portlet
383            * @param parameterMap the mapping of parameters indicating which
384            information to export. For information on the keys used in the
385            map see {@link
386            com.liferay.portal.kernel.lar.PortletDataHandlerKeys}.
387            * @param startDate the export's start date
388            * @param endDate the export's end date
389            * @return the portlet information as a file
390            * @throws PortalException if a layout, group, or portlet with the primary
391            key could not be found, it the group did not have permission to
392            manage the layouts involved, or if some other portal exception
393            occurred
394            */
395            public java.io.File exportPortletInfoAsFile(long plid, long groupId,
396                    java.lang.String portletId,
397                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
398                    java.util.Date startDate, java.util.Date endDate)
399                    throws com.liferay.portal.kernel.exception.PortalException;
400    
401            public java.io.File exportPortletInfoAsFile(java.lang.String portletId,
402                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
403                    java.util.Date startDate, java.util.Date endDate)
404                    throws com.liferay.portal.kernel.exception.PortalException;
405    
406            public long exportPortletInfoAsFileInBackground(java.lang.String taskName,
407                    long plid, long groupId, java.lang.String portletId,
408                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
409                    java.util.Date startDate, java.util.Date endDate,
410                    java.lang.String fileName)
411                    throws com.liferay.portal.kernel.exception.PortalException;
412    
413            public long exportPortletInfoAsFileInBackground(java.lang.String taskName,
414                    java.lang.String portletId,
415                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
416                    java.util.Date startDate, java.util.Date endDate,
417                    java.lang.String fileName)
418                    throws com.liferay.portal.kernel.exception.PortalException;
419    
420            /**
421            * Returns all the ancestor layouts of the layout.
422            *
423            * @param plid the primary key of the layout
424            * @return the ancestor layouts of the layout
425            * @throws PortalException if a matching layout could not be found or if a
426            portal exception occurred
427            */
428            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
429            public java.util.List<com.liferay.portal.model.Layout> getAncestorLayouts(
430                    long plid) throws com.liferay.portal.kernel.exception.PortalException;
431    
432            /**
433            * Returns the Spring bean ID for this bean.
434            *
435            * @return the Spring bean ID for this bean
436            */
437            public java.lang.String getBeanIdentifier();
438    
439            @com.liferay.portal.kernel.cache.ThreadLocalCachable
440            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
441            public long getDefaultPlid(long groupId, long scopeGroupId,
442                    java.lang.String portletId)
443                    throws com.liferay.portal.kernel.exception.PortalException;
444    
445            /**
446            * Returns the primary key of the default layout for the group.
447            *
448            * @param groupId the primary key of the group
449            * @param scopeGroupId the primary key of the scope group. See {@link
450            com.liferay.portal.service.ServiceContext#getScopeGroupId()}.
451            * @param privateLayout whether the layout is private to the group
452            * @param portletId the primary key of the portlet
453            * @return Returns the primary key of the default layout group; {@link
454            com.liferay.portal.model.LayoutConstants#DEFAULT_PLID} otherwise
455            * @throws PortalException if a group, layout, or portlet with the primary
456            key could not be found
457            */
458            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
459            public long getDefaultPlid(long groupId, long scopeGroupId,
460                    boolean privateLayout, java.lang.String portletId)
461                    throws com.liferay.portal.kernel.exception.PortalException;
462    
463            /**
464            * Returns the layout matching the UUID, group, and privacy.
465            *
466            * @param uuid the layout's UUID
467            * @param groupId the primary key of the group
468            * @param privateLayout whether the layout is private to the group
469            * @return the matching layout
470            * @throws PortalException if a matching layout could not be found, if the
471            user did not have permission to view the layout, or if some other
472            portal exception occurred
473            */
474            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
475            public com.liferay.portal.model.Layout getLayoutByUuidAndGroupId(
476                    java.lang.String uuid, long groupId, boolean privateLayout)
477                    throws com.liferay.portal.kernel.exception.PortalException;
478    
479            /**
480            * Returns the name of the layout.
481            *
482            * @param groupId the primary key of the group
483            * @param privateLayout whether the layout is private to the group
484            * @param layoutId the primary key of the layout
485            * @param languageId the primary key of the language. For more information
486            See {@link java.util.Locale}.
487            * @return the layout's name
488            * @throws PortalException if a matching layout could not be found
489            */
490            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
491            public java.lang.String getLayoutName(long groupId, boolean privateLayout,
492                    long layoutId, java.lang.String languageId)
493                    throws com.liferay.portal.kernel.exception.PortalException;
494    
495            /**
496            * Returns the layout references for all the layouts that belong to the
497            * company and belong to the portlet that matches the preferences.
498            *
499            * @param companyId the primary key of the company
500            * @param portletId the primary key of the portlet
501            * @param preferencesKey the portlet's preference key
502            * @param preferencesValue the portlet's preference value
503            * @return the layout references of the matching layouts
504            */
505            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
506            public com.liferay.portal.model.LayoutReference[] getLayoutReferences(
507                    long companyId, java.lang.String portletId,
508                    java.lang.String preferencesKey, java.lang.String preferencesValue);
509    
510            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
511            public java.util.List<com.liferay.portal.model.Layout> getLayouts(
512                    long groupId, boolean privateLayout);
513    
514            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
515            public java.util.List<com.liferay.portal.model.Layout> getLayouts(
516                    long groupId, boolean privateLayout, long parentLayoutId);
517    
518            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
519            public java.util.List<com.liferay.portal.model.Layout> getLayouts(
520                    long groupId, boolean privateLayout, long parentLayoutId,
521                    boolean incomplete, int start, int end)
522                    throws com.liferay.portal.kernel.exception.PortalException;
523    
524            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
525            public int getLayoutsCount(long groupId, boolean privateLayout,
526                    long parentLayoutId);
527    
528            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
529            public java.lang.String[] getTempFileNames(long groupId,
530                    java.lang.String folderName)
531                    throws com.liferay.portal.kernel.exception.PortalException;
532    
533            /**
534            * Imports the layouts from the byte array.
535            *
536            * @param groupId the primary key of the group
537            * @param privateLayout whether the layout is private to the group
538            * @param parameterMap the mapping of parameters indicating which
539            information will be imported. For information on the keys used in
540            the map see {@link
541            com.liferay.portal.kernel.lar.PortletDataHandlerKeys}.
542            * @param bytes the byte array with the data
543            * @throws PortalException if a group with the primary key could not be
544            found, if the group did not have permission to manage the
545            layouts, or if some other portal exception occurred
546            * @see com.liferay.portal.lar.LayoutImporter
547            */
548            public void importLayouts(long groupId, boolean privateLayout,
549                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
550                    byte[] bytes)
551                    throws com.liferay.portal.kernel.exception.PortalException;
552    
553            /**
554            * Imports the layouts from the file.
555            *
556            * @param groupId the primary key of the group
557            * @param privateLayout whether the layout is private to the group
558            * @param parameterMap the mapping of parameters indicating which
559            information will be imported. For information on the keys used in
560            the map see {@link
561            com.liferay.portal.kernel.lar.PortletDataHandlerKeys}.
562            * @param file the LAR file with the data
563            * @throws PortalException if a group with the primary key could not be
564            found, if the group did not have permission to manage the layouts
565            and publish, or if some other portal exception occurred
566            * @see com.liferay.portal.lar.LayoutImporter
567            */
568            public void importLayouts(long groupId, boolean privateLayout,
569                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
570                    java.io.File file)
571                    throws com.liferay.portal.kernel.exception.PortalException;
572    
573            /**
574            * Imports the layouts from the input stream.
575            *
576            * @param groupId the primary key of the group
577            * @param privateLayout whether the layout is private to the group
578            * @param parameterMap the mapping of parameters indicating which
579            information will be imported. For information on the keys used in
580            the map see {@link
581            com.liferay.portal.kernel.lar.PortletDataHandlerKeys}.
582            * @param is the input stream
583            * @throws PortalException if a group with the primary key could not be
584            found, if the group did not have permission to manage the
585            layouts, or if some other portal exception occurred
586            * @see com.liferay.portal.lar.LayoutImporter
587            */
588            public void importLayouts(long groupId, boolean privateLayout,
589                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
590                    java.io.InputStream is)
591                    throws com.liferay.portal.kernel.exception.PortalException;
592    
593            public long importLayoutsInBackground(java.lang.String taskName,
594                    long groupId, boolean privateLayout,
595                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
596                    java.io.File file)
597                    throws com.liferay.portal.kernel.exception.PortalException;
598    
599            public long importLayoutsInBackground(java.lang.String taskName,
600                    long groupId, boolean privateLayout,
601                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
602                    java.io.InputStream inputStream)
603                    throws com.liferay.portal.kernel.exception.PortalException;
604    
605            /**
606            * Imports the portlet information (categories, permissions, ... etc.) from
607            * the file.
608            *
609            * @param plid the primary key of the layout
610            * @param groupId the primary key of the group
611            * @param portletId the primary key of the portlet
612            * @param parameterMap the mapping of parameters indicating which
613            information will be imported. For information on the keys used in
614            the map see {@link
615            com.liferay.portal.kernel.lar.PortletDataHandlerKeys}.
616            * @param file the LAR file with the data
617            * @throws PortalException if a group, layout, or portlet with the primary
618            key could not be found, or if the group did not have permission
619            to manage the layouts
620            */
621            public void importPortletInfo(long plid, long groupId,
622                    java.lang.String portletId,
623                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
624                    java.io.File file)
625                    throws com.liferay.portal.kernel.exception.PortalException;
626    
627            /**
628            * Imports the portlet information (categories, permissions, ... etc.) from
629            * the input stream.
630            *
631            * @param plid the primary key of the layout
632            * @param groupId the primary key of the group
633            * @param portletId the primary key of the portlet
634            * @param parameterMap the mapping of parameters indicating which
635            information will be imported. For information on the keys used in
636            the map see {@link
637            com.liferay.portal.kernel.lar.PortletDataHandlerKeys}.
638            * @param is the input stream
639            * @throws PortalException if a group, portlet, or layout with the primary
640            key could not be found or if the group did not have permission to
641            manage the layouts
642            */
643            public void importPortletInfo(long plid, long groupId,
644                    java.lang.String portletId,
645                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
646                    java.io.InputStream is)
647                    throws com.liferay.portal.kernel.exception.PortalException;
648    
649            public void importPortletInfo(java.lang.String portletId,
650                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
651                    java.io.File file)
652                    throws com.liferay.portal.kernel.exception.PortalException;
653    
654            public void importPortletInfo(java.lang.String portletId,
655                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
656                    java.io.InputStream is)
657                    throws com.liferay.portal.kernel.exception.PortalException;
658    
659            public long importPortletInfoInBackground(java.lang.String taskName,
660                    long plid, long groupId, java.lang.String portletId,
661                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
662                    java.io.File file)
663                    throws com.liferay.portal.kernel.exception.PortalException;
664    
665            public long importPortletInfoInBackground(java.lang.String taskName,
666                    long plid, long groupId, java.lang.String portletId,
667                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
668                    java.io.InputStream is)
669                    throws com.liferay.portal.kernel.exception.PortalException;
670    
671            public void importPortletInfoInBackground(java.lang.String taskName,
672                    java.lang.String portletId,
673                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
674                    java.io.File file)
675                    throws com.liferay.portal.kernel.exception.PortalException;
676    
677            public void importPortletInfoInBackground(java.lang.String taskName,
678                    java.lang.String portletId,
679                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
680                    java.io.InputStream is)
681                    throws com.liferay.portal.kernel.exception.PortalException;
682    
683            /**
684            * Schedules a range of layouts to be published.
685            *
686            * @param sourceGroupId the primary key of the source group
687            * @param targetGroupId the primary key of the target group
688            * @param privateLayout whether the layout is private to the group
689            * @param layoutIdMap the layouts considered for publishing, specified
690            by the layout IDs and booleans indicating whether they have
691            children
692            * @param parameterMap the mapping of parameters indicating which
693            information will be used. See {@link
694            com.liferay.portal.kernel.lar.PortletDataHandlerKeys}
695            * @param scope the scope of the pages. It can be
696            <code>all-pages</code> or <code>selected-pages</code>.
697            * @param startDate the start date
698            * @param endDate the end date
699            * @param groupName the group name (optionally {@link
700            com.liferay.portal.kernel.messaging.DestinationNames#LAYOUTS_LOCAL_PUBLISHER}).
701            See {@link
702            com.liferay.portal.kernel.messaging.DestinationNames}.
703            * @param cronText the cron text. See {@link
704            com.liferay.portal.kernel.cal.RecurrenceSerializer
705            #toCronText}
706            * @param schedulerStartDate the scheduler start date
707            * @param schedulerEndDate the scheduler end date
708            * @param description the scheduler description
709            * @throws PortalException if the group did not have permission to
710            manage and publish
711            * @deprecated As of 7.0.0, replaced by {@link #schedulePublishToLive(long,
712            long, boolean, long[], Map, String, Date, Date, String,
713            String, Date, Date, String)}
714            */
715            @java.lang.Deprecated
716            public void schedulePublishToLive(long sourceGroupId, long targetGroupId,
717                    boolean privateLayout,
718                    java.util.Map<java.lang.Long, java.lang.Boolean> layoutIdMap,
719                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
720                    java.lang.String scope, java.util.Date startDate,
721                    java.util.Date endDate, java.lang.String groupName,
722                    java.lang.String cronText, java.util.Date schedulerStartDate,
723                    java.util.Date schedulerEndDate, java.lang.String description)
724                    throws com.liferay.portal.kernel.exception.PortalException;
725    
726            /**
727            * Schedules a range of layouts to be published.
728            *
729            * @param sourceGroupId the primary key of the source group
730            * @param targetGroupId the primary key of the target group
731            * @param privateLayout whether the layout is private to the group
732            * @param layoutIds the layouts considered for publishing, specified by the
733            layout IDs
734            * @param parameterMap the mapping of parameters indicating which
735            information will be used. See {@link
736            com.liferay.portal.kernel.lar.PortletDataHandlerKeys}
737            * @param scope the scope of the pages. It can be <code>all-pages</code> or
738            <code>selected-pages</code>.
739            * @param startDate the start date
740            * @param endDate the end date
741            * @param groupName the group name (optionally {@link
742            com.liferay.portal.kernel.messaging.DestinationNames#LAYOUTS_LOCAL_PUBLISHER}).
743            See {@link com.liferay.portal.kernel.messaging.DestinationNames}.
744            * @param cronText the cron text. See {@link
745            com.liferay.portal.kernel.cal.RecurrenceSerializer #toCronText}
746            * @param schedulerStartDate the scheduler start date
747            * @param schedulerEndDate the scheduler end date
748            * @param description the scheduler description
749            * @throws PortalException if the group did not have permission to manage
750            and publish
751            */
752            public void schedulePublishToLive(long sourceGroupId, long targetGroupId,
753                    boolean privateLayout, long[] layoutIds,
754                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
755                    java.lang.String scope, java.util.Date startDate,
756                    java.util.Date endDate, java.lang.String groupName,
757                    java.lang.String cronText, java.util.Date schedulerStartDate,
758                    java.util.Date schedulerEndDate, java.lang.String description)
759                    throws com.liferay.portal.kernel.exception.PortalException;
760    
761            /**
762            * Schedules a range of layouts to be stored.
763            *
764            * @param sourceGroupId the primary key of the source group
765            * @param privateLayout whether the layout is private to the group
766            * @param layoutIdMap the layouts considered for publishing, specified by
767            the layout IDs and booleans indicating whether they have children
768            * @param parameterMap the mapping of parameters indicating which
769            information will be used. See {@link
770            com.liferay.portal.kernel.lar.PortletDataHandlerKeys}
771            * @param remoteAddress the remote address
772            * @param remotePort the remote port
773            * @param remotePathContext the remote path context
774            * @param secureConnection whether the connection is secure
775            * @param remoteGroupId the primary key of the remote group
776            * @param remotePrivateLayout whether remote group's layout is private
777            * @param startDate the start date
778            * @param endDate the end date
779            * @param groupName the group name. Optionally {@link
780            com.liferay.portal.kernel.messaging.DestinationNames#LAYOUTS_LOCAL_PUBLISHER}).
781            See {@link com.liferay.portal.kernel.messaging.DestinationNames}.
782            * @param cronText the cron text. See {@link
783            com.liferay.portal.kernel.cal.RecurrenceSerializer #toCronText}
784            * @param schedulerStartDate the scheduler start date
785            * @param schedulerEndDate the scheduler end date
786            * @param description the scheduler description
787            * @throws PortalException if a group with the source group primary key was
788            not found or if the group did not have permission to publish
789            */
790            public void schedulePublishToRemote(long sourceGroupId,
791                    boolean privateLayout,
792                    java.util.Map<java.lang.Long, java.lang.Boolean> layoutIdMap,
793                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
794                    java.lang.String remoteAddress, int remotePort,
795                    java.lang.String remotePathContext, boolean secureConnection,
796                    long remoteGroupId, boolean remotePrivateLayout,
797                    java.util.Date startDate, java.util.Date endDate,
798                    java.lang.String groupName, java.lang.String cronText,
799                    java.util.Date schedulerStartDate, java.util.Date schedulerEndDate,
800                    java.lang.String description)
801                    throws com.liferay.portal.kernel.exception.PortalException;
802    
803            /**
804            * Sets the Spring bean ID for this bean.
805            *
806            * @param beanIdentifier the Spring bean ID for this bean
807            */
808            public void setBeanIdentifier(java.lang.String beanIdentifier);
809    
810            /**
811            * Sets the layouts for the group, replacing and prioritizing all layouts of
812            * the parent layout.
813            *
814            * @param groupId the primary key of the group
815            * @param privateLayout whether the layout is private to the group
816            * @param parentLayoutId the primary key of the parent layout
817            * @param layoutIds the primary keys of the layouts
818            * @param serviceContext the service context to be applied
819            * @throws PortalException if a group or layout with the primary key could
820            not be found, if the group did not have permission to manage the
821            layouts, if no layouts were specified, if the first layout was
822            not page-able, if the first layout was hidden, or if some other
823            portal exception occurred
824            */
825            public void setLayouts(long groupId, boolean privateLayout,
826                    long parentLayoutId, long[] layoutIds,
827                    com.liferay.portal.service.ServiceContext serviceContext)
828                    throws com.liferay.portal.kernel.exception.PortalException;
829    
830            /**
831            * Deletes the job from the scheduler's queue.
832            *
833            * @param groupId the primary key of the group
834            * @param jobName the job name
835            * @param groupName the group name (optionally {@link
836            com.liferay.portal.kernel.messaging.DestinationNames#LAYOUTS_LOCAL_PUBLISHER}).
837            See {@link com.liferay.portal.kernel.messaging.DestinationNames}.
838            * @throws PortalException if the group did not permission to manage staging
839            and publish
840            */
841            public void unschedulePublishToLive(long groupId, java.lang.String jobName,
842                    java.lang.String groupName)
843                    throws com.liferay.portal.kernel.exception.PortalException;
844    
845            /**
846            * Deletes the job from the scheduler's persistent queue.
847            *
848            * @param groupId the primary key of the group
849            * @param jobName the job name
850            * @param groupName the group name (optionally {@link
851            com.liferay.portal.kernel.messaging.DestinationNames#LAYOUTS_LOCAL_PUBLISHER}).
852            See {@link com.liferay.portal.kernel.messaging.DestinationNames}.
853            * @throws PortalException if a group with the primary key could not be
854            found or if the group did not have permission to publish
855            */
856            public void unschedulePublishToRemote(long groupId,
857                    java.lang.String jobName, java.lang.String groupName)
858                    throws com.liferay.portal.kernel.exception.PortalException;
859    
860            public com.liferay.portal.model.Layout updateIconImage(long plid,
861                    byte[] bytes)
862                    throws com.liferay.portal.kernel.exception.PortalException;
863    
864            /**
865            * Updates the layout with additional parameters.
866            *
867            * @param groupId the primary key of the group
868            * @param privateLayout whether the layout is private to the group
869            * @param layoutId the primary key of the layout
870            * @param parentLayoutId the primary key of the layout's new parent
871            layout
872            * @param localeNamesMap the layout's locales and localized names
873            * @param localeTitlesMap the layout's locales and localized titles
874            * @param descriptionMap the locales and localized descriptions to
875            merge (optionally <code>null</code>)
876            * @param keywordsMap the locales and localized keywords to merge
877            (optionally <code>null</code>)
878            * @param robotsMap the locales and localized robots to merge
879            (optionally <code>null</code>)
880            * @param type the layout's new type (optionally {@link
881            com.liferay.portal.model.LayoutConstants#TYPE_PORTLET})
882            * @param hidden whether the layout is hidden
883            * @param friendlyURL the layout's locales and new friendly URLs. To
884            see how the URL is normalized when accessed, see {@link
885            com.liferay.portal.kernel.util.FriendlyURLNormalizerUtil#normalize(
886            String)}.
887            * @param iconImage whether the icon image will be updated
888            * @param iconBytes the byte array of the layout's new icon image
889            * @param serviceContext the service context to be applied. Can set the
890            modification date and expando bridge attributes for the
891            layout.
892            * @return the updated layout
893            * @throws PortalException if a group or layout with the primary key
894            could not be found, if the user did not have permission to
895            update the layout, if a unique friendly URL could not be
896            generated, if a valid parent layout ID to use could not be
897            found, or if the layout parameters were invalid
898            * @deprecated As of 6.2.0, replaced by {@link #updateLayout(long, boolean,
899            long, long, Map, Map, Map, Map, Map, String, boolean, Map,
900            Boolean, byte[], ServiceContext)}
901            */
902            @java.lang.Deprecated
903            public com.liferay.portal.model.Layout updateLayout(long groupId,
904                    boolean privateLayout, long layoutId, long parentLayoutId,
905                    java.util.Map<java.util.Locale, java.lang.String> localeNamesMap,
906                    java.util.Map<java.util.Locale, java.lang.String> localeTitlesMap,
907                    java.util.Map<java.util.Locale, java.lang.String> descriptionMap,
908                    java.util.Map<java.util.Locale, java.lang.String> keywordsMap,
909                    java.util.Map<java.util.Locale, java.lang.String> robotsMap,
910                    java.lang.String type, boolean hidden, java.lang.String friendlyURL,
911                    java.lang.Boolean iconImage, byte[] iconBytes,
912                    com.liferay.portal.service.ServiceContext serviceContext)
913                    throws com.liferay.portal.kernel.exception.PortalException;
914    
915            /**
916            * Updates the layout with additional parameters.
917            *
918            * @param groupId the primary key of the group
919            * @param privateLayout whether the layout is private to the group
920            * @param layoutId the primary key of the layout
921            * @param parentLayoutId the primary key of the layout's new parent layout
922            * @param localeNamesMap the layout's locales and localized names
923            * @param localeTitlesMap the layout's locales and localized titles
924            * @param descriptionMap the locales and localized descriptions to merge
925            (optionally <code>null</code>)
926            * @param keywordsMap the locales and localized keywords to merge
927            (optionally <code>null</code>)
928            * @param robotsMap the locales and localized robots to merge (optionally
929            <code>null</code>)
930            * @param type the layout's new type (optionally {@link
931            com.liferay.portal.model.LayoutConstants#TYPE_PORTLET})
932            * @param hidden whether the layout is hidden
933            * @param friendlyURLMap the layout's locales and localized friendly URLs.
934            To see how the URL is normalized when accessed see {@link
935            com.liferay.portal.kernel.util.FriendlyURLNormalizerUtil#normalize(
936            String)}.
937            * @param iconImage whether the icon image will be updated
938            * @param iconBytes the byte array of the layout's new icon image
939            * @param serviceContext the service context to be applied. Can set the
940            modification date and expando bridge attributes for the layout.
941            * @return the updated layout
942            * @throws PortalException if a group or layout with the primary key could
943            not be found, if the user did not have permission to update the
944            layout, if a unique friendly URL could not be generated, if a
945            valid parent layout ID to use could not be found, or if the
946            layout parameters were invalid
947            */
948            public com.liferay.portal.model.Layout updateLayout(long groupId,
949                    boolean privateLayout, long layoutId, long parentLayoutId,
950                    java.util.Map<java.util.Locale, java.lang.String> localeNamesMap,
951                    java.util.Map<java.util.Locale, java.lang.String> localeTitlesMap,
952                    java.util.Map<java.util.Locale, java.lang.String> descriptionMap,
953                    java.util.Map<java.util.Locale, java.lang.String> keywordsMap,
954                    java.util.Map<java.util.Locale, java.lang.String> robotsMap,
955                    java.lang.String type, boolean hidden,
956                    java.util.Map<java.util.Locale, java.lang.String> friendlyURLMap,
957                    boolean iconImage, byte[] iconBytes,
958                    com.liferay.portal.service.ServiceContext serviceContext)
959                    throws com.liferay.portal.kernel.exception.PortalException;
960    
961            /**
962            * Updates the layout replacing its type settings.
963            *
964            * @param groupId the primary key of the group
965            * @param privateLayout whether the layout is private to the group
966            * @param layoutId the primary key of the layout
967            * @param typeSettings the settings to load the unicode properties object.
968            See {@link com.liferay.portal.kernel.util.UnicodeProperties
969            #fastLoad(String)}.
970            * @return the updated layout
971            * @throws PortalException if a matching layout could not be found or if the
972            user did not have permission to update the layout
973            */
974            public com.liferay.portal.model.Layout updateLayout(long groupId,
975                    boolean privateLayout, long layoutId, java.lang.String typeSettings)
976                    throws com.liferay.portal.kernel.exception.PortalException;
977    
978            /**
979            * Updates the look and feel of the layout.
980            *
981            * @param groupId the primary key of the group
982            * @param privateLayout whether the layout is private to the group
983            * @param layoutId the primary key of the layout
984            * @param themeId the primary key of the layout's new theme
985            * @param colorSchemeId the primary key of the layout's new color scheme
986            * @param css the layout's new CSS
987            * @param wapTheme whether the theme is for WAP browsers
988            * @return the updated layout
989            * @throws PortalException if a matching layout could not be found, or if
990            the user did not have permission to update the layout and
991            permission to apply the theme
992            */
993            public com.liferay.portal.model.Layout updateLookAndFeel(long groupId,
994                    boolean privateLayout, long layoutId, java.lang.String themeId,
995                    java.lang.String colorSchemeId, java.lang.String css, boolean wapTheme)
996                    throws com.liferay.portal.kernel.exception.PortalException;
997    
998            /**
999            * Updates the name of the layout matching the group, layout ID, and
1000            * privacy.
1001            *
1002            * @param groupId the primary key of the group
1003            * @param privateLayout whether the layout is private to the group
1004            * @param layoutId the primary key of the layout
1005            * @param name the layout's new name
1006            * @param languageId the primary key of the language. For more information
1007            see {@link java.util.Locale}.
1008            * @return the updated layout
1009            * @throws PortalException if a matching layout could not be found, if the
1010            user did not have permission to update the layout, or if the new
1011            name was <code>null</code>
1012            */
1013            public com.liferay.portal.model.Layout updateName(long groupId,
1014                    boolean privateLayout, long layoutId, java.lang.String name,
1015                    java.lang.String languageId)
1016                    throws com.liferay.portal.kernel.exception.PortalException;
1017    
1018            /**
1019            * Updates the name of the layout matching the primary key.
1020            *
1021            * @param plid the primary key of the layout
1022            * @param name the name to be assigned
1023            * @param languageId the primary key of the language. For more information
1024            see {@link java.util.Locale}.
1025            * @return the updated layout
1026            * @throws PortalException if a layout with the primary key could not be
1027            found, or if the user did not have permission to update the
1028            layout, or if the name was <code>null</code>
1029            */
1030            public com.liferay.portal.model.Layout updateName(long plid,
1031                    java.lang.String name, java.lang.String languageId)
1032                    throws com.liferay.portal.kernel.exception.PortalException;
1033    
1034            /**
1035            * Updates the parent layout ID of the layout matching the group, layout ID,
1036            * and privacy.
1037            *
1038            * @param groupId the primary key of the group
1039            * @param privateLayout whether the layout is private to the group
1040            * @param layoutId the primary key of the layout
1041            * @param parentLayoutId the primary key to be assigned to the parent
1042            layout
1043            * @return the matching layout
1044            * @throws PortalException if a valid parent layout ID to use could not be
1045            found, if a matching layout could not be found, or if the user
1046            did not have permission to update the layout
1047            */
1048            public com.liferay.portal.model.Layout updateParentLayoutId(long groupId,
1049                    boolean privateLayout, long layoutId, long parentLayoutId)
1050                    throws com.liferay.portal.kernel.exception.PortalException;
1051    
1052            /**
1053            * Updates the parent layout ID of the layout matching the primary key. If a
1054            * layout matching the parent primary key is found, the layout ID of that
1055            * layout is assigned, otherwise {@link
1056            * com.liferay.portal.model.LayoutConstants#DEFAULT_PARENT_LAYOUT_ID} is
1057            * assigned.
1058            *
1059            * @param plid the primary key of the layout
1060            * @param parentPlid the primary key of the parent layout
1061            * @return the layout matching the primary key
1062            * @throws PortalException if a layout with the primary key could not be
1063            found, if the user did not have permission to update the layout,
1064            or if a valid parent layout ID to use could not be found
1065            */
1066            public com.liferay.portal.model.Layout updateParentLayoutId(long plid,
1067                    long parentPlid)
1068                    throws com.liferay.portal.kernel.exception.PortalException;
1069    
1070            /**
1071            * Updates the parent layout ID and priority of the layout.
1072            *
1073            * @param plid the primary key of the layout
1074            * @param parentPlid the primary key of the parent layout
1075            * @param priority the layout's new priority
1076            * @return the layout matching the primary key
1077            * @throws PortalException if a portal exception occurred
1078            */
1079            public com.liferay.portal.model.Layout updateParentLayoutIdAndPriority(
1080                    long plid, long parentPlid, int priority)
1081                    throws com.liferay.portal.kernel.exception.PortalException;
1082    
1083            /**
1084            * Updates the priority of the layout matching the group, layout ID, and
1085            * privacy, setting the layout's priority based on the priorities of the
1086            * next and previous layouts.
1087            *
1088            * @param groupId the primary key of the group
1089            * @param privateLayout whether the layout is private to the group
1090            * @param layoutId the primary key of the layout
1091            * @param nextLayoutId the primary key of the next layout
1092            * @param previousLayoutId the primary key of the previous layout
1093            * @return the updated layout
1094            * @throws PortalException if a matching layout could not be found or if the
1095            user did not have permission to update the layout
1096            */
1097            public com.liferay.portal.model.Layout updatePriority(long groupId,
1098                    boolean privateLayout, long layoutId, long nextLayoutId,
1099                    long previousLayoutId)
1100                    throws com.liferay.portal.kernel.exception.PortalException;
1101    
1102            /**
1103            * Updates the priority of the layout matching the group, layout ID, and
1104            * privacy.
1105            *
1106            * @param groupId the primary key of the group
1107            * @param privateLayout whether the layout is private to the group
1108            * @param layoutId the primary key of the layout
1109            * @param priority the layout's new priority
1110            * @return the updated layout
1111            * @throws PortalException if a matching layout could not be found or if the
1112            user did not have permission to update the layout
1113            */
1114            public com.liferay.portal.model.Layout updatePriority(long groupId,
1115                    boolean privateLayout, long layoutId, int priority)
1116                    throws com.liferay.portal.kernel.exception.PortalException;
1117    
1118            /**
1119            * Updates the priority of the layout matching the primary key.
1120            *
1121            * @param plid the primary key of the layout
1122            * @param priority the layout's new priority
1123            * @return the updated layout
1124            * @throws PortalException if a layout with the primary key could not be
1125            found
1126            */
1127            public com.liferay.portal.model.Layout updatePriority(long plid,
1128                    int priority)
1129                    throws com.liferay.portal.kernel.exception.PortalException;
1130    
1131            public com.liferay.portal.kernel.lar.MissingReferences validateImportLayoutsFile(
1132                    long groupId, boolean privateLayout,
1133                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
1134                    java.io.File file)
1135                    throws com.liferay.portal.kernel.exception.PortalException;
1136    
1137            public com.liferay.portal.kernel.lar.MissingReferences validateImportLayoutsFile(
1138                    long groupId, boolean privateLayout,
1139                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
1140                    java.io.InputStream inputStream)
1141                    throws com.liferay.portal.kernel.exception.PortalException;
1142    
1143            public com.liferay.portal.kernel.lar.MissingReferences validateImportPortletInfo(
1144                    long plid, long groupId, java.lang.String portletId,
1145                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
1146                    java.io.File file)
1147                    throws com.liferay.portal.kernel.exception.PortalException;
1148    
1149            public com.liferay.portal.kernel.lar.MissingReferences validateImportPortletInfo(
1150                    long plid, long groupId, java.lang.String portletId,
1151                    java.util.Map<java.lang.String, java.lang.String[]> parameterMap,
1152                    java.io.InputStream inputStream)
1153                    throws com.liferay.portal.kernel.exception.PortalException;
1154    }