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:
Silviu Dinuta
2016-11-03 09:15:29 +00:00
4 changed files with 29 additions and 3 deletions

View File

@@ -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.
*

View File

@@ -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);
}
}

View File

@@ -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

View File

@@ -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