mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-31 17:39:05 +00:00
Merge branch 'feature/RM-4289_Status404ForGETandDELETErmSite' into 'master'
Feature/rm 4289 status404 for ge tand delet erm site See merge request !593
This commit is contained in:
@@ -66,6 +66,14 @@ public interface RMSites extends Sites
|
||||
*/
|
||||
RMSite updateRMSite(String siteId, SiteUpdate site, Parameters parameters);
|
||||
|
||||
/**
|
||||
* Deletes RM site
|
||||
*
|
||||
* @param siteId
|
||||
* @param parameters
|
||||
*/
|
||||
void deleteRMSite(String siteId, Parameters parameters);
|
||||
|
||||
/**
|
||||
* TODO Copied from Sites interface because was not available in 5.2.a-EA. To be removed after upgrading.
|
||||
*
|
||||
|
@@ -327,4 +327,22 @@ public class RMSitesImpl extends SitesImpl implements RMSites
|
||||
RMSiteCompliance compliance = getCompliance(siteInfo);
|
||||
return new RMSite(site, compliance);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteRMSite(String siteId, Parameters parameters)
|
||||
{
|
||||
deleteSite(siteId, parameters);
|
||||
solveRMSiteNodeRefCaching();
|
||||
}
|
||||
|
||||
/**
|
||||
* Method used for solving rm site nodeRef caching problem that affected rm site update and get from rest api, after site deletion from rest api.
|
||||
* See RM-4289 issue for details.
|
||||
*
|
||||
*/
|
||||
private void solveRMSiteNodeRefCaching()
|
||||
{
|
||||
//since we do not have access to SiteServiceImpl.getSiteNodeRef(String shortName, boolean enforcePermissions) method we can use hasSite method to solve caching problem
|
||||
siteService.hasSite(RM_SITE_ID);
|
||||
}
|
||||
}
|
||||
|
@@ -79,7 +79,7 @@ public class RMSiteEntityResource implements EntityResourceAction.Delete, Entity
|
||||
{
|
||||
throw new InvalidArgumentException("DELETE does not support parameter: permanent");
|
||||
}
|
||||
sites.deleteSite(siteId, parameters);
|
||||
sites.deleteRMSite(siteId, parameters);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -116,7 +116,7 @@ public class RMSiteEntityResourceUnitTest extends BaseUnitTest
|
||||
Params parameters = mock(Params.class);
|
||||
when(parameters.getParameter(PERMANENT_PARAMETER)).thenReturn(null);
|
||||
rmSiteEntityResource.delete(siteId, parameters);
|
||||
verify(mockedRMSites, times(1)).deleteSite(siteId, parameters);
|
||||
verify(mockedRMSites, times(1)).deleteRMSite(siteId, parameters);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -134,7 +134,7 @@ public class RMSiteEntityResourceUnitTest extends BaseUnitTest
|
||||
{
|
||||
assertEquals("The Deletion is supported only for siteId = rm.", ex.getMessage());
|
||||
}
|
||||
verify(mockedRMSites, never()).deleteSite(siteId, parameters);
|
||||
verify(mockedRMSites, never()).deleteRMSite(siteId, parameters);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
Reference in New Issue
Block a user