001    /**
002     * Copyright (c) 2000-2012 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.http;
016    
017    import com.liferay.portal.kernel.log.Log;
018    import com.liferay.portal.kernel.log.LogFactoryUtil;
019    import com.liferay.portal.kernel.util.LocalizationUtil;
020    import com.liferay.portal.service.LayoutServiceUtil;
021    
022    import java.rmi.RemoteException;
023    
024    import java.util.Locale;
025    import java.util.Map;
026    
027    /**
028     * <p>
029     * This class provides a SOAP utility for the
030     * {@link com.liferay.portal.service.LayoutServiceUtil} service utility. The
031     * static methods of this class calls the same methods of the service utility.
032     * However, the signatures are different because it is difficult for SOAP to
033     * support certain types.
034     * </p>
035     *
036     * <p>
037     * ServiceBuilder follows certain rules in translating the methods. For example,
038     * if the method in the service utility returns a {@link java.util.List}, that
039     * is translated to an array of {@link com.liferay.portal.model.LayoutSoap}.
040     * If the method in the service utility returns a
041     * {@link com.liferay.portal.model.Layout}, that is translated to a
042     * {@link com.liferay.portal.model.LayoutSoap}. Methods that SOAP cannot
043     * safely wire are skipped.
044     * </p>
045     *
046     * <p>
047     * The benefits of using the SOAP utility is that it is cross platform
048     * compatible. SOAP allows different languages like Java, .NET, C++, PHP, and
049     * even Perl, to call the generated services. One drawback of SOAP is that it is
050     * slow because it needs to serialize all calls into a text format (XML).
051     * </p>
052     *
053     * <p>
054     * You can see a list of services at
055     * http://localhost:8080/api/secure/axis. Set the property
056     * <b>axis.servlet.hosts.allowed</b> in portal.properties to configure
057     * security.
058     * </p>
059     *
060     * <p>
061     * The SOAP utility is only generated for remote services.
062     * </p>
063     *
064     * @author    Brian Wing Shun Chan
065     * @see       LayoutServiceHttp
066     * @see       com.liferay.portal.model.LayoutSoap
067     * @see       com.liferay.portal.service.LayoutServiceUtil
068     * @generated
069     */
070    public class LayoutServiceSoap {
071            /**
072            * Adds a layout with additional parameters.
073            *
074            * <p>
075            * This method handles the creation of the layout including its resources,
076            * metadata, and internal data structures. It is not necessary to make
077            * subsequent calls to any methods to setup default groups, resources, ...
078            * etc.
079            * </p>
080            *
081            * @param groupId the primary key of the group
082            * @param privateLayout whether the layout is private to the group
083            * @param parentLayoutId the primary key of the parent layout (optionally
084            {@link
085            com.liferay.portal.model.LayoutConstants#DEFAULT_PARENT_LAYOUT_ID})
086            * @param localeNamesMap the layout's locales and localized names
087            * @param localeTitlesMap the layout's locales and localized titles
088            * @param descriptionMap the layout's locales and localized descriptions
089            * @param keywordsMap the layout's locales and localized keywords
090            * @param robotsMap the layout's locales and localized robots
091            * @param type the layout's type (optionally {@link
092            com.liferay.portal.model.LayoutConstants#TYPE_PORTLET}). The
093            possible types can be found in {@link
094            com.liferay.portal.model.LayoutConstants}.
095            * @param hidden whether the layout is hidden
096            * @param friendlyURL the layout's friendly URL (optionally {@link
097            com.liferay.portal.util.PropsValues#DEFAULT_USER_PRIVATE_LAYOUT_FRIENDLY_URL}
098            or {@link
099            com.liferay.portal.util.PropsValues#DEFAULT_USER_PUBLIC_LAYOUT_FRIENDLY_URL}).
100            The default values can be overridden in
101            <code>portal-ext.properties</code> by specifying new values for
102            the corresponding properties defined in {@link
103            com.liferay.portal.util.PropsValues}. To see how the URL is
104            normalized when accessed see {@link
105            com.liferay.portal.kernel.util.FriendlyURLNormalizerUtil#normalize(
106            String)}.
107            * @param serviceContext the service context. Must set the universally
108            unique identifier (UUID) for the layout. Can set the creation
109            date, modification date and the expando bridge attributes for the
110            layout. For layouts that belong to a layout set prototype, an
111            attribute named 'layoutUpdateable' can be used to specify whether
112            site administrators can modify this page within their site.
113            * @return the layout
114            * @throws PortalException if a group with the primary key could not be
115            found, if the group did not have permission to manage the layouts
116            involved, or if layout values were invalid
117            * @throws SystemException if a system exception occurred
118            */
119            public static com.liferay.portal.model.LayoutSoap addLayout(long groupId,
120                    boolean privateLayout, long parentLayoutId,
121                    java.lang.String[] localeNamesMapLanguageIds,
122                    java.lang.String[] localeNamesMapValues,
123                    java.lang.String[] localeTitlesMapLanguageIds,
124                    java.lang.String[] localeTitlesMapValues,
125                    java.lang.String[] descriptionMapLanguageIds,
126                    java.lang.String[] descriptionMapValues,
127                    java.lang.String[] keywordsMapLanguageIds,
128                    java.lang.String[] keywordsMapValues,
129                    java.lang.String[] robotsMapLanguageIds,
130                    java.lang.String[] robotsMapValues, java.lang.String type,
131                    boolean hidden, java.lang.String friendlyURL,
132                    com.liferay.portal.service.ServiceContext serviceContext)
133                    throws RemoteException {
134                    try {
135                            Map<Locale, String> localeNamesMap = LocalizationUtil.getLocalizationMap(localeNamesMapLanguageIds,
136                                            localeNamesMapValues);
137                            Map<Locale, String> localeTitlesMap = LocalizationUtil.getLocalizationMap(localeTitlesMapLanguageIds,
138                                            localeTitlesMapValues);
139                            Map<Locale, String> descriptionMap = LocalizationUtil.getLocalizationMap(descriptionMapLanguageIds,
140                                            descriptionMapValues);
141                            Map<Locale, String> keywordsMap = LocalizationUtil.getLocalizationMap(keywordsMapLanguageIds,
142                                            keywordsMapValues);
143                            Map<Locale, String> robotsMap = LocalizationUtil.getLocalizationMap(robotsMapLanguageIds,
144                                            robotsMapValues);
145    
146                            com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.addLayout(groupId,
147                                            privateLayout, parentLayoutId, localeNamesMap,
148                                            localeTitlesMap, descriptionMap, keywordsMap, robotsMap,
149                                            type, hidden, friendlyURL, serviceContext);
150    
151                            return com.liferay.portal.model.LayoutSoap.toSoapModel(returnValue);
152                    }
153                    catch (Exception e) {
154                            _log.error(e, e);
155    
156                            throw new RemoteException(e.getMessage());
157                    }
158            }
159    
160            /**
161            * Adds a layout with empty maps for descriptions, keywords, and titles ,
162            * and a names map containing a mapping for the default locale as its only
163            * entry.
164            *
165            * <p>
166            * This method handles the creation of the layout including its resources,
167            * metadata, and internal data structures. It is not necessary to make
168            * subsequent calls to any methods to setup default groups, resources, ...
169            * etc.
170            * </p>
171            *
172            * @param groupId the primary key of the group
173            * @param privateLayout whether the layout is private to the group
174            * @param parentLayoutId the primary key of the parent layout (optionally
175            {@link
176            com.liferay.portal.model.LayoutConstants#DEFAULT_PARENT_LAYOUT_ID})
177            * @param name Map the layout's locales and localized names
178            * @param title Map the layout's locales and localized titles
179            * @param description Map the layout's locales and localized descriptions
180            * @param type the layout's type (optionally {@link
181            com.liferay.portal.model.LayoutConstants#TYPE_PORTLET}). The
182            possible types can be found in {@link
183            com.liferay.portal.model.LayoutConstants}.
184            * @param hidden whether the layout is hidden
185            * @param friendlyURL the layout's friendly URL (optionally {@link
186            com.liferay.portal.util.PropsValues#DEFAULT_USER_PRIVATE_LAYOUT_FRIENDLY_URL}
187            or {@link
188            com.liferay.portal.util.PropsValues#DEFAULT_USER_PUBLIC_LAYOUT_FRIENDLY_URL}).
189            The default values can be overridden in
190            <code>portal-ext.properties</code> by specifying new values for
191            the corresponding properties defined in {@link
192            com.liferay.portal.util.PropsValues}. To see how the URL is
193            normalized when accessed see {@link
194            com.liferay.portal.kernel.util.FriendlyURLNormalizerUtil#normalize(
195            String)}.
196            * @param serviceContext the service context. Must set the universally
197            unique identifier (UUID) for the layout. Can specify the creation
198            date, modification date and the expando bridge attributes for the
199            layout. For layouts that belong to a layout set prototype, an
200            attribute named 'layoutUpdateable' can be used to specify whether
201            site administrators can modify this page within their site.
202            * @return the layout
203            * @throws PortalException if a group with the primary key could not be
204            found, if the group did not have permission to manage the layouts
205            involved, or if layout values were invalid
206            * @throws SystemException if a system exception occurred
207            */
208            public static com.liferay.portal.model.LayoutSoap addLayout(long groupId,
209                    boolean privateLayout, long parentLayoutId, java.lang.String name,
210                    java.lang.String title, java.lang.String description,
211                    java.lang.String type, boolean hidden, java.lang.String friendlyURL,
212                    com.liferay.portal.service.ServiceContext serviceContext)
213                    throws RemoteException {
214                    try {
215                            com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.addLayout(groupId,
216                                            privateLayout, parentLayoutId, name, title, description,
217                                            type, hidden, friendlyURL, serviceContext);
218    
219                            return com.liferay.portal.model.LayoutSoap.toSoapModel(returnValue);
220                    }
221                    catch (Exception e) {
222                            _log.error(e, e);
223    
224                            throw new RemoteException(e.getMessage());
225                    }
226            }
227    
228            /**
229            * Deletes the layout with the primary key, also deleting the layout's child
230            * layouts, and associated resources.
231            *
232            * @param groupId the primary key of the group
233            * @param privateLayout whether the layout is private to the group
234            * @param layoutId the primary key of the layout
235            * @param serviceContext the service context
236            * @throws PortalException if the user did not have permission to delete the
237            layout, if a matching layout could not be found , or if some
238            other portal exception occurred
239            * @throws SystemException if a system exception occurred
240            */
241            public static void deleteLayout(long groupId, boolean privateLayout,
242                    long layoutId, com.liferay.portal.service.ServiceContext serviceContext)
243                    throws RemoteException {
244                    try {
245                            LayoutServiceUtil.deleteLayout(groupId, privateLayout, layoutId,
246                                    serviceContext);
247                    }
248                    catch (Exception e) {
249                            _log.error(e, e);
250    
251                            throw new RemoteException(e.getMessage());
252                    }
253            }
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
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 static void deleteLayout(long plid,
267                    com.liferay.portal.service.ServiceContext serviceContext)
268                    throws RemoteException {
269                    try {
270                            LayoutServiceUtil.deleteLayout(plid, serviceContext);
271                    }
272                    catch (Exception e) {
273                            _log.error(e, e);
274    
275                            throw new RemoteException(e.getMessage());
276                    }
277            }
278    
279            /**
280            * Returns the primary key of the default layout for the group.
281            *
282            * @param groupId the primary key of the group
283            * @param scopeGroupId the primary key of the scope group. See {@link
284            ServiceContext#getScopeGroupId()}.
285            * @param privateLayout whether the layout is private to the group
286            * @param portletId the primary key of the portlet
287            * @return Returns the primary key of the default layout group; {@link
288            com.liferay.portal.model.LayoutConstants#DEFAULT_PLID} otherwise
289            * @throws PortalException if a group, layout, or portlet with the primary
290            key could not be found
291            * @throws SystemException if a system exception occurred
292            */
293            public static long getDefaultPlid(long groupId, long scopeGroupId,
294                    boolean privateLayout, java.lang.String portletId)
295                    throws RemoteException {
296                    try {
297                            long returnValue = LayoutServiceUtil.getDefaultPlid(groupId,
298                                            scopeGroupId, privateLayout, portletId);
299    
300                            return returnValue;
301                    }
302                    catch (Exception e) {
303                            _log.error(e, e);
304    
305                            throw new RemoteException(e.getMessage());
306                    }
307            }
308    
309            /**
310            * Returns the name of the layout.
311            *
312            * @param groupId the primary key of the group
313            * @param privateLayout whether the layout is private to the group
314            * @param layoutId the primary key of the layout
315            * @param languageId the primary key of the language. For more information
316            See {@link java.util.Locale}.
317            * @return the layout's name
318            * @throws PortalException if a matching layout could not be found
319            * @throws SystemException if a system exception occurred
320            */
321            public static java.lang.String getLayoutName(long groupId,
322                    boolean privateLayout, long layoutId, java.lang.String languageId)
323                    throws RemoteException {
324                    try {
325                            java.lang.String returnValue = LayoutServiceUtil.getLayoutName(groupId,
326                                            privateLayout, layoutId, languageId);
327    
328                            return returnValue;
329                    }
330                    catch (Exception e) {
331                            _log.error(e, e);
332    
333                            throw new RemoteException(e.getMessage());
334                    }
335            }
336    
337            /**
338            * Returns the layout references for all the layouts that belong to the
339            * company and belong to the portlet that matches the preferences.
340            *
341            * @param companyId the primary key of the company
342            * @param portletId the primary key of the portlet
343            * @param preferencesKey the portlet's preference key
344            * @param preferencesValue the portlet's preference value
345            * @return the layout references of the matching layouts
346            * @throws SystemException if a system exception occurred
347            */
348            public static com.liferay.portal.model.LayoutReference[] getLayoutReferences(
349                    long companyId, java.lang.String portletId,
350                    java.lang.String preferencesKey, java.lang.String preferencesValue)
351                    throws RemoteException {
352                    try {
353                            com.liferay.portal.model.LayoutReference[] returnValue = LayoutServiceUtil.getLayoutReferences(companyId,
354                                            portletId, preferencesKey, preferencesValue);
355    
356                            return returnValue;
357                    }
358                    catch (Exception e) {
359                            _log.error(e, e);
360    
361                            throw new RemoteException(e.getMessage());
362                    }
363            }
364    
365            public static com.liferay.portal.model.LayoutSoap[] getLayouts(
366                    long groupId, boolean privateLayout) throws RemoteException {
367                    try {
368                            java.util.List<com.liferay.portal.model.Layout> returnValue = LayoutServiceUtil.getLayouts(groupId,
369                                            privateLayout);
370    
371                            return com.liferay.portal.model.LayoutSoap.toSoapModels(returnValue);
372                    }
373                    catch (Exception e) {
374                            _log.error(e, e);
375    
376                            throw new RemoteException(e.getMessage());
377                    }
378            }
379    
380            /**
381            * Sets the layouts for the group, replacing and prioritizing all layouts of
382            * the parent layout.
383            *
384            * @param groupId the primary key of the group
385            * @param privateLayout whether the layout is private to the group
386            * @param parentLayoutId the primary key of the parent layout
387            * @param layoutIds the primary keys of the layouts
388            * @param serviceContext the service context
389            * @throws PortalException if a group or layout with the primary key could
390            not be found, if the group did not have permission to manage the
391            layouts, if no layouts were specified, if the first layout was
392            not page-able, if the first layout was hidden, or if some other
393            portal exception occurred
394            * @throws SystemException if a system exception occurred
395            */
396            public static void setLayouts(long groupId, boolean privateLayout,
397                    long parentLayoutId, long[] layoutIds,
398                    com.liferay.portal.service.ServiceContext serviceContext)
399                    throws RemoteException {
400                    try {
401                            LayoutServiceUtil.setLayouts(groupId, privateLayout,
402                                    parentLayoutId, layoutIds, serviceContext);
403                    }
404                    catch (Exception e) {
405                            _log.error(e, e);
406    
407                            throw new RemoteException(e.getMessage());
408                    }
409            }
410    
411            /**
412            * Deletes the job from the scheduler's queue.
413            *
414            * @param groupId the primary key of the group
415            * @param jobName the job name
416            * @param groupName the group name (optionally {@link
417            com.liferay.portal.kernel.messaging.DestinationNames#LAYOUTS_LOCAL_PUBLISHER}).
418            See {@link com.liferay.portal.kernel.messaging.DestinationNames}.
419            * @throws PortalException if the group did not permission to manage staging
420            and publish
421            * @throws SystemException if a system exception occurred
422            */
423            public static void unschedulePublishToLive(long groupId,
424                    java.lang.String jobName, java.lang.String groupName)
425                    throws RemoteException {
426                    try {
427                            LayoutServiceUtil.unschedulePublishToLive(groupId, jobName,
428                                    groupName);
429                    }
430                    catch (Exception e) {
431                            _log.error(e, e);
432    
433                            throw new RemoteException(e.getMessage());
434                    }
435            }
436    
437            /**
438            * Deletes the job from the scheduler's persistent queue.
439            *
440            * @param groupId the primary key of the group
441            * @param jobName the job name
442            * @param groupName the group name (optionally {@link
443            com.liferay.portal.kernel.messaging.DestinationNames#LAYOUTS_LOCAL_PUBLISHER}).
444            See {@link com.liferay.portal.kernel.messaging.DestinationNames}.
445            * @throws PortalException if a group with the primary key could not be
446            found or if the group did not have permission to publish
447            * @throws SystemException if a system exception occurred
448            */
449            public static void unschedulePublishToRemote(long groupId,
450                    java.lang.String jobName, java.lang.String groupName)
451                    throws RemoteException {
452                    try {
453                            LayoutServiceUtil.unschedulePublishToRemote(groupId, jobName,
454                                    groupName);
455                    }
456                    catch (Exception e) {
457                            _log.error(e, e);
458    
459                            throw new RemoteException(e.getMessage());
460                    }
461            }
462    
463            /**
464            * Updates the layout.
465            *
466            * @param groupId the primary key of the group
467            * @param privateLayout whether the layout is private to the group
468            * @param layoutId the primary key of the layout
469            * @param parentLayoutId the primary key of the layout's new parent layout
470            * @param localeNamesMap the layout's locales and localized names
471            * @param localeTitlesMap the layout's locales and localized titles
472            * @param descriptionMap the locales and localized descriptions to merge
473            (optionally <code>null</code>)
474            * @param keywordsMap the locales and localized keywords to merge
475            (optionally <code>null</code>)
476            * @param robotsMap the locales and localized robots to merge (optionally
477            <code>null</code>)
478            * @param type the layout's new type (optionally {@link
479            com.liferay.portal.model.LayoutConstants#TYPE_PORTLET})
480            * @param hidden whether the layout is hidden
481            * @param friendlyURL the layout's new friendly URL (optionally {@link
482            com.liferay.portal.util.PropsValues#DEFAULT_USER_PRIVATE_LAYOUT_FRIENDLY_URL}
483            or {@link
484            com.liferay.portal.util.PropsValues#DEFAULT_USER_PRIVATE_LAYOUT_FRIENDLY_URL}).
485            The default values can be overridden in
486            <code>portal-ext.properties</code> by specifying new values for
487            the corresponding properties defined in {@link
488            com.liferay.portal.util.PropsValues}. To see how the URL is
489            normalized when accessed see {@link
490            com.liferay.portal.kernel.util.FriendlyURLNormalizerUtil#normalize(
491            String)}.
492            * @param iconImage whether the icon image will be updated
493            * @param iconBytes the byte array of the layout's new icon image
494            * @param serviceContext the service context. Can set the modification date
495            and expando bridge attributes for the layout.
496            * @return the updated layout
497            * @throws PortalException if a group or layout with the primary key could
498            not be found, if the user did not have permission to update the
499            layout, if a unique friendly URL could not be generated, if a
500            valid parent layout ID to use could not be found, or if the
501            layout parameters were invalid
502            * @throws SystemException if a system exception occurred
503            */
504            public static com.liferay.portal.model.LayoutSoap updateLayout(
505                    long groupId, boolean privateLayout, long layoutId,
506                    long parentLayoutId, java.lang.String[] localeNamesMapLanguageIds,
507                    java.lang.String[] localeNamesMapValues,
508                    java.lang.String[] localeTitlesMapLanguageIds,
509                    java.lang.String[] localeTitlesMapValues,
510                    java.lang.String[] descriptionMapLanguageIds,
511                    java.lang.String[] descriptionMapValues,
512                    java.lang.String[] keywordsMapLanguageIds,
513                    java.lang.String[] keywordsMapValues,
514                    java.lang.String[] robotsMapLanguageIds,
515                    java.lang.String[] robotsMapValues, java.lang.String type,
516                    boolean hidden, java.lang.String friendlyURL,
517                    java.lang.Boolean iconImage, byte[] iconBytes,
518                    com.liferay.portal.service.ServiceContext serviceContext)
519                    throws RemoteException {
520                    try {
521                            Map<Locale, String> localeNamesMap = LocalizationUtil.getLocalizationMap(localeNamesMapLanguageIds,
522                                            localeNamesMapValues);
523                            Map<Locale, String> localeTitlesMap = LocalizationUtil.getLocalizationMap(localeTitlesMapLanguageIds,
524                                            localeTitlesMapValues);
525                            Map<Locale, String> descriptionMap = LocalizationUtil.getLocalizationMap(descriptionMapLanguageIds,
526                                            descriptionMapValues);
527                            Map<Locale, String> keywordsMap = LocalizationUtil.getLocalizationMap(keywordsMapLanguageIds,
528                                            keywordsMapValues);
529                            Map<Locale, String> robotsMap = LocalizationUtil.getLocalizationMap(robotsMapLanguageIds,
530                                            robotsMapValues);
531    
532                            com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updateLayout(groupId,
533                                            privateLayout, layoutId, parentLayoutId, localeNamesMap,
534                                            localeTitlesMap, descriptionMap, keywordsMap, robotsMap,
535                                            type, hidden, friendlyURL, iconImage, iconBytes,
536                                            serviceContext);
537    
538                            return com.liferay.portal.model.LayoutSoap.toSoapModel(returnValue);
539                    }
540                    catch (Exception e) {
541                            _log.error(e, e);
542    
543                            throw new RemoteException(e.getMessage());
544                    }
545            }
546    
547            /**
548            * Updates the layout replacing its type settings.
549            *
550            * @param groupId the primary key of the group
551            * @param privateLayout whether the layout is private to the group
552            * @param layoutId the primary key of the layout
553            * @param typeSettings the settings to load the unicode properties object.
554            See {@link com.liferay.portal.kernel.util.UnicodeProperties
555            #fastLoad(String)}.
556            * @return the updated layout
557            * @throws PortalException if a matching layout could not be found or if the
558            user did not have permission to update the layout
559            * @throws SystemException if a system exception occurred
560            */
561            public static com.liferay.portal.model.LayoutSoap updateLayout(
562                    long groupId, boolean privateLayout, long layoutId,
563                    java.lang.String typeSettings) throws RemoteException {
564                    try {
565                            com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updateLayout(groupId,
566                                            privateLayout, layoutId, typeSettings);
567    
568                            return com.liferay.portal.model.LayoutSoap.toSoapModel(returnValue);
569                    }
570                    catch (Exception e) {
571                            _log.error(e, e);
572    
573                            throw new RemoteException(e.getMessage());
574                    }
575            }
576    
577            /**
578            * Updates the look and feel of the layout.
579            *
580            * @param groupId the primary key of the group
581            * @param privateLayout whether the layout is private to the group
582            * @param layoutId the primary key of the layout
583            * @param themeId the primary key of the layout's new theme
584            * @param colorSchemeId the primary key of the layout's new color scheme
585            * @param css the layout's new CSS
586            * @param wapTheme whether the theme is for WAP browsers
587            * @return the updated layout
588            * @throws PortalException if a matching layout could not be found, or if
589            the user did not have permission to update the layout and
590            permission to apply the theme
591            * @throws SystemException if a system exception occurred
592            */
593            public static com.liferay.portal.model.LayoutSoap updateLookAndFeel(
594                    long groupId, boolean privateLayout, long layoutId,
595                    java.lang.String themeId, java.lang.String colorSchemeId,
596                    java.lang.String css, boolean wapTheme) throws RemoteException {
597                    try {
598                            com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updateLookAndFeel(groupId,
599                                            privateLayout, layoutId, themeId, colorSchemeId, css,
600                                            wapTheme);
601    
602                            return com.liferay.portal.model.LayoutSoap.toSoapModel(returnValue);
603                    }
604                    catch (Exception e) {
605                            _log.error(e, e);
606    
607                            throw new RemoteException(e.getMessage());
608                    }
609            }
610    
611            /**
612            * Updates the name of the layout matching the group, layout ID, and
613            * privacy.
614            *
615            * @param groupId the primary key of the group
616            * @param privateLayout whether the layout is private to the group
617            * @param layoutId the primary key of the layout
618            * @param name the layout's new name
619            * @param languageId the primary key of the language. For more information
620            see {@link java.util.Locale}.
621            * @return the updated layout
622            * @throws PortalException if a matching layout could not be found, if the
623            user did not have permission to update the layout, or if the new
624            name was <code>null</code>
625            * @throws SystemException if a system exception occurred
626            */
627            public static com.liferay.portal.model.LayoutSoap updateName(long groupId,
628                    boolean privateLayout, long layoutId, java.lang.String name,
629                    java.lang.String languageId) throws RemoteException {
630                    try {
631                            com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updateName(groupId,
632                                            privateLayout, layoutId, name, languageId);
633    
634                            return com.liferay.portal.model.LayoutSoap.toSoapModel(returnValue);
635                    }
636                    catch (Exception e) {
637                            _log.error(e, e);
638    
639                            throw new RemoteException(e.getMessage());
640                    }
641            }
642    
643            /**
644            * Updates the name of the layout matching the primary key.
645            *
646            * @param plid the primary key of the layout
647            * @param name the name to be assigned
648            * @param languageId the primary key of the language. For more information
649            see {@link java.util.Locale}.
650            * @return the updated layout
651            * @throws PortalException if a layout with the primary key could not be
652            found, or if the user did not have permission to update the
653            layout, or if the name was <code>null</code>
654            * @throws SystemException if a system exception occurred
655            */
656            public static com.liferay.portal.model.LayoutSoap updateName(long plid,
657                    java.lang.String name, java.lang.String languageId)
658                    throws RemoteException {
659                    try {
660                            com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updateName(plid,
661                                            name, languageId);
662    
663                            return com.liferay.portal.model.LayoutSoap.toSoapModel(returnValue);
664                    }
665                    catch (Exception e) {
666                            _log.error(e, e);
667    
668                            throw new RemoteException(e.getMessage());
669                    }
670            }
671    
672            /**
673            * Updates the parent layout ID of the layout matching the group, layout ID,
674            * and privacy.
675            *
676            * @param groupId the primary key of the group
677            * @param privateLayout whether the layout is private to the group
678            * @param layoutId the primary key of the layout
679            * @param parentLayoutId the primary key to be assigned to the parent
680            layout
681            * @return the matching layout
682            * @throws PortalException if a valid parent layout ID to use could not be
683            found, if a matching layout could not be found, or if the user
684            did not have permission to update the layout
685            * @throws SystemException if a system exception occurred
686            */
687            public static com.liferay.portal.model.LayoutSoap updateParentLayoutId(
688                    long groupId, boolean privateLayout, long layoutId, long parentLayoutId)
689                    throws RemoteException {
690                    try {
691                            com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updateParentLayoutId(groupId,
692                                            privateLayout, layoutId, parentLayoutId);
693    
694                            return com.liferay.portal.model.LayoutSoap.toSoapModel(returnValue);
695                    }
696                    catch (Exception e) {
697                            _log.error(e, e);
698    
699                            throw new RemoteException(e.getMessage());
700                    }
701            }
702    
703            /**
704            * Updates the parent layout ID of the layout matching the primary key. If a
705            * layout matching the parent primary key is found, the layout ID of that
706            * layout is assigned, otherwise {@link
707            * com.liferay.portal.model.LayoutConstants#DEFAULT_PARENT_LAYOUT_ID} is
708            * assigned.
709            *
710            * @param plid the primary key of the layout
711            * @param parentPlid the primary key of the parent layout
712            * @return the layout matching the primary key
713            * @throws PortalException if a layout with the primary key could not be
714            found, if the user did not have permission to update the layout,
715            or if a valid parent layout ID to use could not be found
716            * @throws SystemException if a system exception occurred
717            */
718            public static com.liferay.portal.model.LayoutSoap updateParentLayoutId(
719                    long plid, long parentPlid) throws RemoteException {
720                    try {
721                            com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updateParentLayoutId(plid,
722                                            parentPlid);
723    
724                            return com.liferay.portal.model.LayoutSoap.toSoapModel(returnValue);
725                    }
726                    catch (Exception e) {
727                            _log.error(e, e);
728    
729                            throw new RemoteException(e.getMessage());
730                    }
731            }
732    
733            /**
734            * Updates the priority of the layout matching the group, layout ID, and
735            * privacy.
736            *
737            * @param groupId the primary key of the group
738            * @param privateLayout whether the layout is private to the group
739            * @param layoutId the primary key of the layout
740            * @param priority the layout's new priority
741            * @return the updated layout
742            * @throws PortalException if a matching layout could not be found or if the
743            user did not have permission to update the layout
744            * @throws SystemException if a system exception occurred
745            */
746            public static com.liferay.portal.model.LayoutSoap updatePriority(
747                    long groupId, boolean privateLayout, long layoutId, int priority)
748                    throws RemoteException {
749                    try {
750                            com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updatePriority(groupId,
751                                            privateLayout, layoutId, priority);
752    
753                            return com.liferay.portal.model.LayoutSoap.toSoapModel(returnValue);
754                    }
755                    catch (Exception e) {
756                            _log.error(e, e);
757    
758                            throw new RemoteException(e.getMessage());
759                    }
760            }
761    
762            /**
763            * Updates the priority of the layout matching the primary key.
764            *
765            * @param plid the primary key of the layout
766            * @param priority the layout's new priority
767            * @return the updated layout
768            * @throws PortalException if a layout with the primary key could not be
769            found
770            * @throws SystemException if a system exception occurred
771            */
772            public static com.liferay.portal.model.LayoutSoap updatePriority(
773                    long plid, int priority) throws RemoteException {
774                    try {
775                            com.liferay.portal.model.Layout returnValue = LayoutServiceUtil.updatePriority(plid,
776                                            priority);
777    
778                            return com.liferay.portal.model.LayoutSoap.toSoapModel(returnValue);
779                    }
780                    catch (Exception e) {
781                            _log.error(e, e);
782    
783                            throw new RemoteException(e.getMessage());
784                    }
785            }
786    
787            private static Log _log = LogFactoryUtil.getLog(LayoutServiceSoap.class);
788    }