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