diff --git a/portal-impl/src/com/liferay/portal/service/http/RepositoryServiceHttp.java b/portal-impl/src/com/liferay/portal/service/http/RepositoryServiceHttp.java index daf39e6e98c54d..e5251808b9fddd 100644 --- a/portal-impl/src/com/liferay/portal/service/http/RepositoryServiceHttp.java +++ b/portal-impl/src/com/liferay/portal/service/http/RepositoryServiceHttp.java @@ -201,6 +201,44 @@ public static com.liferay.portal.kernel.model.Repository getRepository( } } + public static com.liferay.portal.kernel.model.Repository getRepository( + HttpPrincipal httpPrincipal, long groupId, String portletId) + throws com.liferay.portal.kernel.exception.PortalException { + + try { + MethodKey methodKey = new MethodKey( + RepositoryServiceUtil.class, "getRepository", + _getRepositoryParameterTypes4); + + MethodHandler methodHandler = new MethodHandler( + methodKey, groupId, portletId); + + Object returnObj = null; + + try { + returnObj = TunnelUtil.invoke(httpPrincipal, methodHandler); + } + catch (Exception e) { + if (e instanceof + com.liferay.portal.kernel.exception.PortalException) { + + throw (com.liferay.portal.kernel.exception.PortalException) + e; + } + + throw new com.liferay.portal.kernel.exception.SystemException( + e); + } + + return (com.liferay.portal.kernel.model.Repository)returnObj; + } + catch (com.liferay.portal.kernel.exception.SystemException se) { + _log.error(se, se); + + throw se; + } + } + public static com.liferay.portal.kernel.util.UnicodeProperties getTypeSettingsProperties( HttpPrincipal httpPrincipal, long repositoryId) @@ -209,7 +247,7 @@ public static com.liferay.portal.kernel.model.Repository getRepository( try { MethodKey methodKey = new MethodKey( RepositoryServiceUtil.class, "getTypeSettingsProperties", - _getTypeSettingsPropertiesParameterTypes4); + _getTypeSettingsPropertiesParameterTypes5); MethodHandler methodHandler = new MethodHandler( methodKey, repositoryId); @@ -248,7 +286,7 @@ public static void updateRepository( try { MethodKey methodKey = new MethodKey( RepositoryServiceUtil.class, "updateRepository", - _updateRepositoryParameterTypes5); + _updateRepositoryParameterTypes6); MethodHandler methodHandler = new MethodHandler( methodKey, repositoryId, name, description); @@ -291,9 +329,11 @@ public static void updateRepository( new Class[] {long.class}; private static final Class[] _getRepositoryParameterTypes3 = new Class[] {long.class}; - private static final Class[] _getTypeSettingsPropertiesParameterTypes4 = + private static final Class[] _getRepositoryParameterTypes4 = + new Class[] {long.class, String.class}; + private static final Class[] _getTypeSettingsPropertiesParameterTypes5 = new Class[] {long.class}; - private static final Class[] _updateRepositoryParameterTypes5 = + private static final Class[] _updateRepositoryParameterTypes6 = new Class[] {long.class, String.class, String.class}; } \ No newline at end of file diff --git a/portal-impl/src/com/liferay/portal/service/http/RepositoryServiceSoap.java b/portal-impl/src/com/liferay/portal/service/http/RepositoryServiceSoap.java index a795fa6df53ede..6ba9c4ab65e4b0 100644 --- a/portal-impl/src/com/liferay/portal/service/http/RepositoryServiceSoap.java +++ b/portal-impl/src/com/liferay/portal/service/http/RepositoryServiceSoap.java @@ -105,6 +105,24 @@ public static com.liferay.portal.kernel.model.RepositorySoap getRepository( } } + public static com.liferay.portal.kernel.model.RepositorySoap getRepository( + long groupId, String portletId) + throws RemoteException { + + try { + com.liferay.portal.kernel.model.Repository returnValue = + RepositoryServiceUtil.getRepository(groupId, portletId); + + return com.liferay.portal.kernel.model.RepositorySoap.toSoapModel( + returnValue); + } + catch (Exception e) { + _log.error(e, e); + + throw new RemoteException(e.getMessage()); + } + } + public static com.liferay.portal.kernel.util.UnicodeProperties getTypeSettingsProperties(long repositoryId) throws RemoteException { diff --git a/portal-impl/src/com/liferay/portal/service/impl/RepositoryServiceImpl.java b/portal-impl/src/com/liferay/portal/service/impl/RepositoryServiceImpl.java index 884bf145ab74b5..d6ffa5328d9585 100644 --- a/portal-impl/src/com/liferay/portal/service/impl/RepositoryServiceImpl.java +++ b/portal-impl/src/com/liferay/portal/service/impl/RepositoryServiceImpl.java @@ -91,6 +91,21 @@ _folderModelResourcePermission, getPermissionChecker(), return repository; } + @Override + public Repository getRepository(long groupId, String portletId) + throws PortalException { + + Repository repository = repositoryPersistence.findByG_N_P( + groupId, portletId, portletId); + + ModelResourcePermissionHelper.check( + _folderModelResourcePermission, getPermissionChecker(), + repository.getGroupId(), repository.getDlFolderId(), + ActionKeys.VIEW); + + return repository; + } + @Override public UnicodeProperties getTypeSettingsProperties(long repositoryId) throws PortalException { diff --git a/portal-kernel/src/com/liferay/portal/kernel/service/RepositoryService.java b/portal-kernel/src/com/liferay/portal/kernel/service/RepositoryService.java index 8c7b02eb8a27c5..b04118d2c5bda6 100644 --- a/portal-kernel/src/com/liferay/portal/kernel/service/RepositoryService.java +++ b/portal-kernel/src/com/liferay/portal/kernel/service/RepositoryService.java @@ -70,6 +70,10 @@ public Repository addRepository( @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) public Repository getRepository(long repositoryId) throws PortalException; + @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) + public Repository getRepository(long groupId, String portletId) + throws PortalException; + @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) public UnicodeProperties getTypeSettingsProperties(long repositoryId) throws PortalException; diff --git a/portal-kernel/src/com/liferay/portal/kernel/service/RepositoryServiceUtil.java b/portal-kernel/src/com/liferay/portal/kernel/service/RepositoryServiceUtil.java index c343f2cd37b3a0..5378a6a355e5b7 100644 --- a/portal-kernel/src/com/liferay/portal/kernel/service/RepositoryServiceUtil.java +++ b/portal-kernel/src/com/liferay/portal/kernel/service/RepositoryServiceUtil.java @@ -76,6 +76,13 @@ public static com.liferay.portal.kernel.model.Repository getRepository( return getService().getRepository(repositoryId); } + public static com.liferay.portal.kernel.model.Repository getRepository( + long groupId, String portletId) + throws com.liferay.portal.kernel.exception.PortalException { + + return getService().getRepository(groupId, portletId); + } + public static com.liferay.portal.kernel.util.UnicodeProperties getTypeSettingsProperties(long repositoryId) throws com.liferay.portal.kernel.exception.PortalException { diff --git a/portal-kernel/src/com/liferay/portal/kernel/service/RepositoryServiceWrapper.java b/portal-kernel/src/com/liferay/portal/kernel/service/RepositoryServiceWrapper.java index dc99723850ddfd..bfc6a55a8f1303 100644 --- a/portal-kernel/src/com/liferay/portal/kernel/service/RepositoryServiceWrapper.java +++ b/portal-kernel/src/com/liferay/portal/kernel/service/RepositoryServiceWrapper.java @@ -75,6 +75,14 @@ public com.liferay.portal.kernel.model.Repository getRepository( return _repositoryService.getRepository(repositoryId); } + @Override + public com.liferay.portal.kernel.model.Repository getRepository( + long groupId, java.lang.String portletId) + throws com.liferay.portal.kernel.exception.PortalException { + + return _repositoryService.getRepository(groupId, portletId); + } + @Override public com.liferay.portal.kernel.util.UnicodeProperties getTypeSettingsProperties(long repositoryId)