ITenant mainTenant_1 =
tenantManager.createTenant( systemTenant, MAIN_TENANT_1, tenantAdminRoleName,
tenantAuthenticatedRoleName, ANONYMOUS_ROLE_NAME );
userRoleDao.createUser( mainTenant_1, USERNAME_ADMIN, PASSWORD, "", new String[] { tenantAdminRoleName } );
login( USERNAME_ADMIN, mainTenant_1, new String[] { tenantAuthenticatedRoleName } );
RepositoryFile file = repo.getFile( ClientRepositoryPaths.getPublicFolderPath() );
final RepositoryFile testfile =
repo.createFile( file.getId(), new RepositoryFile.Builder( "testfile" ).build(),
new SimpleRepositoryFileData( new ByteArrayInputStream( "test".getBytes() ), "UTF-8",
"text/plain" ), null );
//CHECKSTYLE IGNORE AvoidNestedBlocks FOR NEXT 3 LINES
{
// Make sure the repository is setup correctly
assertNotNull( testfile );
assertNotNull( testfile.getId() );
final Map<String, Serializable> fileMetadata = repo.getFileMetadata( testfile.getId() );
assertNotNull( fileMetadata );
assertEquals( 0, fileMetadata.size() );
}
final Map<String, Serializable> metadata = new HashMap<String, Serializable>();
metadata.put( "sample key", "sample value" );
metadata.put( "complex key?", "\"an even more 'complex' value\"! {and them some}" );
adapter.setFileMetadata( testfile.getId(), metadata );
//CHECKSTYLE IGNORE AvoidNestedBlocks FOR NEXT 3 LINES
{
// Make sure the repository sees the metadata
assertNotNull( testfile );
assertNotNull( testfile.getId() );
final Map<String, Serializable> fileMetadata = repo.getFileMetadata( testfile.getId() );
assertNotNull( fileMetadata );
assertEquals( 2, fileMetadata.size() );
}
//CHECKSTYLE IGNORE AvoidNestedBlocks FOR NEXT 3 LINES
{
// Make sure we can get the same metadata back via the web service
final Map<String, Serializable> fileMetadata = adapter.getFileMetadata( testfile.getId() );
assertNotNull( fileMetadata );
assertEquals( 2, fileMetadata.size() );
assertTrue( StringUtils.equals( "sample value", (String) fileMetadata.get( "sample key" ) ) );
assertTrue( StringUtils.equals( "\"an even more 'complex' value\"! {and them some}", (String) fileMetadata
.get( "complex key?" ) ) );