public Void call() throws Exception { delegatee.setFileMetadata( fileId, metadataMap ); return null; } }, Messages.getInstance().getString( "ExceptionLoggingDecorator.setFileMetadata", fileId, metadataMap ) ); //$NON-NLS-1$
@Override public Void call() throws Exception { repository.setFileMetadata( id, fileMetadata ); return null; } } );
@Override public Void call() throws Exception { repository.setFileMetadata( id, fileMetadata ); return null; } } );
@Override public void setFileMetadata( final String fileId, final List<StringKeyStringValueDto> fileMetadataMap ) { Map<String, Serializable> metadataMap = new HashMap<String, Serializable>( fileMetadataMap.size() ); for ( final StringKeyStringValueDto dto : fileMetadataMap ) { metadataMap.put( dto.getKey(), dto.getValue() ); } repo.setFileMetadata( fileId, metadataMap ); }
public void deleteUserSettings() { String homePath = ClientRepositoryPaths.getUserHomeFolderPath( PentahoSessionHolder.getSession().getName() ); Serializable id = repository.getFile( homePath ).getId(); Map<String, Serializable> fileMetadata = repository.getFileMetadata( id ); Map<String, Serializable> finalMetadata = new HashMap<String, Serializable>( fileMetadata.size() ); for ( Map.Entry<String, Serializable> entry : fileMetadata.entrySet() ) { String key = entry.getKey(); if ( !key.startsWith( SETTING_PREFIX ) ) { finalMetadata.put( key, entry.getValue() ); } } repository.setFileMetadata( id, finalMetadata ); }
@Override public void deleteUserSettings( String username ) throws SecurityException { if( canAdminister() ) { String homePath = ClientRepositoryPaths.getUserHomeFolderPath( username ); Serializable id = repository.getFile( homePath ).getId(); Map<String, Serializable> fileMetadata = repository.getFileMetadata( id ); Map<String, Serializable> finalMetadata = new HashMap<String, Serializable>( fileMetadata.size() ); for ( Map.Entry<String, Serializable> entry : fileMetadata.entrySet() ) { String key = entry.getKey(); if ( !key.startsWith( SETTING_PREFIX ) ) { finalMetadata.put( key, entry.getValue() ); } } repository.setFileMetadata( id, finalMetadata ); } else { throw new SecurityException( "Unauthorized User" ); } }
public void setGlobalUserSetting( String settingName, String settingValue ) { if ( canAdminister() ) { String tentantHomePath = ClientRepositoryPaths.getEtcFolderPath(); Serializable tenantHomeId = repository.getFile( tentantHomePath ).getId(); Map<String, Serializable> tenantMetadata = repository.getFileMetadata( tenantHomeId ); tenantMetadata.put( SETTING_PREFIX + settingName, settingValue ); repository.setFileMetadata( tenantHomeId, tenantMetadata ); } }
private void markContentAsGenerated( IPostProcessingAction actionBean ) { IUnifiedRepository repo = PentahoSystem.get( IUnifiedRepository.class ); String lineageId = (String) params.get( ActionUtil.QUARTZ_LINEAGE_ID ); for ( IContentItem contentItem : actionBean.getActionOutputContents() ) { RepositoryFile sourceFile = getRepositoryFileSafe( repo, contentItem.getPath() ); // add metadata if we have access and we have file if ( sourceFile != null ) { Map<String, Serializable> metadata = repo.getFileMetadata( sourceFile.getId() ); metadata.put( ActionUtil.QUARTZ_LINEAGE_ID, lineageId ); repo.setFileMetadata( sourceFile.getId(), metadata ); } else { String fileName = getFSFileNameSafe( contentItem ); logger.warn( Messages.getInstance().getSkipRemovingOutputFile( fileName ) ); } } }
@Test public void testSetGlobalUserSettingAdmin() throws Exception { final String settingName = "settingName"; final String settingValue = "settingValue"; when( userSettingService.canAdminister() ).thenReturn( true ); assertEquals( 4, globalSettings.size() ); userSettingService.setGlobalUserSetting( settingName, settingValue ); assertEquals( 5, globalSettings.size() ); verify( repository ).setFileMetadata( eq( TENANT_FOLDER_ID ), anyMap() ); }
@Test public void testSetUserSetting() throws Exception { final String settingName = "settingName"; final String settingValue = "settingValue"; assertEquals( 4, userSettings.size() ); userSettingService.setUserSetting( settingName, settingValue ); assertEquals( 5, userSettings.size() ); final Serializable value = userSettings.get( UserSettingService.SETTING_PREFIX + settingName ); assertEquals( settingValue, value ); verify( repository ).setFileMetadata( eq( USER_FOLDER_ID ), anyMap() ); }
@Test public void testSetUserSettingByName() throws Exception { final String settingName = "settingName"; final String settingValue = "settingValue"; IAuthorizationPolicy policy = mock( IAuthorizationPolicy.class ); when( policy.isAllowed( anyString() ) ).thenReturn( true ); PentahoSystem.registerObject( policy ); assertEquals( 4, userSettings.size() ); userSettingService.setUserSetting( "test", settingName, settingValue ); assertEquals( 5, userSettings.size() ); final Serializable value = userSettings.get( UserSettingService.SETTING_PREFIX + settingName ); assertEquals( settingValue, value ); verify( repository ).setFileMetadata( eq( USER_FOLDER_ID ), anyMap() ); }
@Test public void testDeleteUserSettings() throws Exception { final RepositoryFile repositoryFile = mock( RepositoryFile.class ); when( repositoryFile.getId() ).thenReturn( USER_FOLDER_ID ); when( repository.getFile( anyString() ) ).thenReturn( repositoryFile ); IAuthorizationPolicy policy = mock( IAuthorizationPolicy.class ); when( policy.isAllowed( anyString() ) ).thenReturn( true ); PentahoSystem.registerObject( policy ); doAnswer( new Answer() { @Override public Object answer( InvocationOnMock invocation ) throws Throwable { final Map<String, Serializable> settings = (Map<String, Serializable>) invocation.getArguments()[1]; assertNotNull( settings ); assertEquals( 2, settings.size() ); final Iterator<String> iterator = settings.keySet().iterator(); assertFalse( iterator.next().startsWith( UserSettingService.SETTING_PREFIX ) ); assertFalse( iterator.next().startsWith( UserSettingService.SETTING_PREFIX ) ); return null; } } ).when( repository ).setFileMetadata( eq( USER_FOLDER_ID ), anyMap() ); userSettingService.deleteUserSettings(); }
@Test public void testDeleteUserSettingsByName() throws Exception { IAuthorizationPolicy policy = mock( IAuthorizationPolicy.class ); when( policy.isAllowed( anyString() ) ).thenReturn( true ); PentahoSystem.registerObject( policy ); final RepositoryFile repositoryFile = mock( RepositoryFile.class ); when( repositoryFile.getId() ).thenReturn( USER_FOLDER_ID ); when( repository.getFile( anyString() ) ).thenReturn( repositoryFile ); doAnswer( new Answer() { @Override public Object answer( InvocationOnMock invocation ) throws Throwable { final Map<String, Serializable> settings = (Map<String, Serializable>) invocation.getArguments()[1]; assertNotNull( settings ); assertEquals( 2, settings.size() ); final Iterator<String> iterator = settings.keySet().iterator(); assertFalse( iterator.next().startsWith( UserSettingService.SETTING_PREFIX ) ); assertFalse( iterator.next().startsWith( UserSettingService.SETTING_PREFIX ) ); return null; } } ).when( repository ).setFileMetadata( eq( USER_FOLDER_ID ), anyMap() ); userSettingService.deleteUserSettings( "test" ); }
String lineageId = (String) params.get( ActionUtil.QUARTZ_LINEAGE_ID ); metadata.put( ActionUtil.QUARTZ_LINEAGE_ID, lineageId ); repo.setFileMetadata( sourceFile.getId(), metadata );