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