Search in sources :

Example 1 with FileStore

use of org.molgenis.data.file.FileStore in project molgenis by molgenis.

the class MolgenisWebAppConfig method fileStore.

@Bean
public FileStore fileStore() {
    // get molgenis home directory
    String molgenisHomeDir = System.getProperty(MOLGENIS_HOME);
    if (molgenisHomeDir == null) {
        throw new IllegalArgumentException(String.format("missing required java system property '%s'", MOLGENIS_HOME));
    }
    if (!molgenisHomeDir.endsWith(File.separator))
        molgenisHomeDir = molgenisHomeDir + File.separator;
    // create molgenis store directory in molgenis data directory if not exists
    String molgenisFileStoreDirStr = molgenisHomeDir + "data" + File.separator + "filestore";
    File molgenisDataDir = new File(molgenisFileStoreDirStr);
    if (!molgenisDataDir.exists() && !molgenisDataDir.mkdirs()) {
        throw new RuntimeException("failed to create directory: " + molgenisFileStoreDirStr);
    }
    return new FileStore(molgenisFileStoreDirStr);
}
Also used : FileStore(org.molgenis.data.file.FileStore) File(java.io.File) Bean(org.springframework.context.annotation.Bean)

Example 2 with FileStore

use of org.molgenis.data.file.FileStore in project molgenis by molgenis.

the class RestServiceTest method setUpBeforeMethod.

@BeforeMethod
public void setUpBeforeMethod() {
    dataService = mock(DataService.class);
    idGenerator = mock(IdGenerator.class);
    FileStore fileStore = mock(FileStore.class);
    fileMetaFactory = mock(FileMetaFactory.class);
    entityManager = mock(EntityManager.class);
    servletUriComponentsBuilderFactory = mock(ServletUriComponentsBuilderFactory.class);
    this.restService = new RestService(dataService, idGenerator, fileStore, fileMetaFactory, entityManager, servletUriComponentsBuilderFactory);
}
Also used : FileStore(org.molgenis.data.file.FileStore) EntityManager(org.molgenis.data.EntityManager) FileMetaFactory(org.molgenis.data.file.model.FileMetaFactory) IdGenerator(org.molgenis.data.populate.IdGenerator) DataService(org.molgenis.data.DataService) BeforeMethod(org.testng.annotations.BeforeMethod)

Example 3 with FileStore

use of org.molgenis.data.file.FileStore in project molgenis by molgenis.

the class AmazonBucketClientImplTest method setUp.

@BeforeTest
public void setUp() {
    client = mock(AmazonS3Client.class);
    fileStore = mock(FileStore.class);
    s3Object = mock(S3Object.class);
    httpRequestBase = mock(HttpRequestBase.class);
    amazonBucketClient = new AmazonBucketClientImpl();
}
Also used : FileStore(org.molgenis.data.file.FileStore) AmazonS3Client(com.amazonaws.services.s3.AmazonS3Client) HttpRequestBase(org.apache.http.client.methods.HttpRequestBase) AmazonBucketClientImpl(org.molgenis.amazon.bucket.client.AmazonBucketClientImpl) S3Object(com.amazonaws.services.s3.model.S3Object) BeforeTest(org.testng.annotations.BeforeTest)

Example 4 with FileStore

use of org.molgenis.data.file.FileStore in project molgenis by molgenis.

the class FileTestConfig method fileStore.

@Bean
public FileStore fileStore() {
    // get molgenis home directory
    String currentDir = System.getProperty("java.io.tmpdir") + File.separator + UUID.randomUUID().toString().replaceAll("-", "");
    if (!currentDir.endsWith(File.separator)) {
        currentDir = currentDir + File.separator;
    }
    // create molgenis store directory in molgenis data directory if not exists
    String molgenisFileStoreDirStr = currentDir + "data" + File.separator + "filestore";
    File molgenisDataDir = new File(molgenisFileStoreDirStr);
    if (!molgenisDataDir.exists() && !molgenisDataDir.mkdirs()) {
        throw new RuntimeException("failed to create directory: " + molgenisFileStoreDirStr);
    }
    return new FileStore(molgenisFileStoreDirStr);
}
Also used : FileStore(org.molgenis.data.file.FileStore) File(java.io.File) Bean(org.springframework.context.annotation.Bean)

Example 5 with FileStore

use of org.molgenis.data.file.FileStore in project molgenis by molgenis.

the class MolgenisWebAppConfig method addResourceHandlers.

@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
    int cachePeriod;
    if (environment.equals("development")) {
        cachePeriod = 0;
    } else {
        // a year
        cachePeriod = 31536000;
    }
    registry.addResourceHandler(PATTERN_CSS).addResourceLocations("/css/", "classpath:/css/").setCachePeriod(cachePeriod);
    registry.addResourceHandler(PATTERN_IMG).addResourceLocations("/img/", "classpath:/img/").setCachePeriod(cachePeriod);
    registry.addResourceHandler(PATTERN_JS).addResourceLocations("/js/", "classpath:/js/").setCachePeriod(cachePeriod);
    registry.addResourceHandler(PATTERN_FONTS).addResourceLocations("/fonts/", "classpath:/fonts/").setCachePeriod(cachePeriod);
    registry.addResourceHandler(PATTERN_SWAGGER).addResourceLocations("/swagger/", "classpath:/swagger/").setCachePeriod(cachePeriod);
    registry.addResourceHandler("/generated-doc/**").addResourceLocations("/generated-doc/").setCachePeriod(3600);
    registry.addResourceHandler("/html/**").addResourceLocations("/html/", "classpath:/html/").setCachePeriod(3600);
    // Add resource handler for apps
    FileStore fileStore = fileStore();
    registry.addResourceHandler("/" + PATH_SEGMENT_APPS + "/**").addResourceLocations("file:///" + fileStore.getStorageDir() + '/' + FILE_STORE_PLUGIN_APPS_PATH + '/');
    registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/").setCachePeriod(3600).resourceChain(true);
// see https://github.com/spring-projects/spring-boot/issues/4403 for why the resourceChain needs to be explicitly added.
}
Also used : FileStore(org.molgenis.data.file.FileStore)

Aggregations

FileStore (org.molgenis.data.file.FileStore)5 File (java.io.File)2 Bean (org.springframework.context.annotation.Bean)2 AmazonS3Client (com.amazonaws.services.s3.AmazonS3Client)1 S3Object (com.amazonaws.services.s3.model.S3Object)1 HttpRequestBase (org.apache.http.client.methods.HttpRequestBase)1 AmazonBucketClientImpl (org.molgenis.amazon.bucket.client.AmazonBucketClientImpl)1 DataService (org.molgenis.data.DataService)1 EntityManager (org.molgenis.data.EntityManager)1 FileMetaFactory (org.molgenis.data.file.model.FileMetaFactory)1 IdGenerator (org.molgenis.data.populate.IdGenerator)1 BeforeMethod (org.testng.annotations.BeforeMethod)1 BeforeTest (org.testng.annotations.BeforeTest)1