Example usage for org.springframework.core.io Resource getFile

List of usage examples for org.springframework.core.io Resource getFile

Introduction

In this page you can find the example usage for org.springframework.core.io Resource getFile.

Prototype

File getFile() throws IOException;

Source Link

Document

Return a File handle for this resource.

Usage

From source file:fr.acxio.tools.agia.tasks.FilesOperationTaskletTest.java

@Test
public void testExecuteMove() throws Exception {
    FileUtils.copyFile(new File("src/test/resources/testFiles/input.csv"), new File("target/CP-input.csv"));
    FilesOperationTasklet aTasklet = new FilesOperationTasklet();
    ResourcesFactory aSourceFactory = mock(ResourcesFactory.class);
    Resource aFileResource1 = mock(Resource.class);
    when(aFileResource1.getFile()).thenReturn(new File("target/CP-input.csv"));
    when(aFileResource1.exists()).thenReturn(true);
    when(aSourceFactory.getResources(anyMapOf(Object.class, Object.class)))
            .thenReturn(new Resource[] { aFileResource1 });
    ResourceFactory aDestinationFactory = mock(ResourceFactory.class);
    Resource aDestResource = mock(Resource.class);
    when(aDestResource.getFile()).thenReturn(new File("target/MV-input.csv"));
    when(aDestResource.exists()).thenReturn(false);
    Resource aRelativeResource = mock(Resource.class);
    when(aRelativeResource.getFile()).thenReturn(new File("target"));
    when(aDestResource.createRelative("/.")).thenReturn(aRelativeResource);
    when(aDestinationFactory.getResource(anyMapOf(Object.class, Object.class))).thenReturn(aDestResource);
    assertFalse(aDestResource.getFile().exists());
    aTasklet.setSourceFactory(aSourceFactory);
    aTasklet.setDestinationFactory(aDestinationFactory);
    aTasklet.setOperation(Operation.MOVE);
    aTasklet.afterPropertiesSet();//  w ww  .j a va 2  s . c o m
    StepContribution aStepContribution = mock(StepContribution.class);
    assertEquals(RepeatStatus.FINISHED, aTasklet.execute(aStepContribution, null));
    verify(aStepContribution, times(1)).incrementReadCount();
    verify(aStepContribution, times(1)).incrementWriteCount(1);
    assertTrue(aDestResource.getFile().exists());
    assertFalse(aFileResource1.getFile().exists());
}

From source file:fr.acxio.tools.agia.tasks.FilesOperationTaskletTest.java

@Test
public void testExecuteCopyWithChunkContext() throws Exception {
    FilesOperationTasklet aTasklet = new FilesOperationTasklet();
    ResourcesFactory aSourceFactory = mock(ResourcesFactory.class);
    Resource aFileResource1 = mock(Resource.class);
    when(aFileResource1.getFile()).thenReturn(new File("src/test/resources/testFiles/input.csv"));
    when(aFileResource1.exists()).thenReturn(true);
    when(aSourceFactory.getResources(anyMapOf(Object.class, Object.class)))
            .thenReturn(new Resource[] { aFileResource1 });
    ResourceFactory aDestinationFactory = mock(ResourceFactory.class);
    Resource aDestResource = mock(Resource.class);
    when(aDestResource.getFile()).thenReturn(new File("target/CP-input.csv"));
    when(aDestResource.exists()).thenReturn(false);
    Resource aRelativeResource = mock(Resource.class);
    when(aRelativeResource.getFile()).thenReturn(new File("target"));
    when(aDestResource.createRelative("/.")).thenReturn(aRelativeResource);
    when(aDestinationFactory.getResource(anyMapOf(Object.class, Object.class))).thenReturn(aDestResource);
    assertFalse(aDestResource.getFile().exists());
    aTasklet.setSourceFactory(aSourceFactory);
    aTasklet.setDestinationFactory(aDestinationFactory);
    aTasklet.setOperation(Operation.COPY);
    aTasklet.afterPropertiesSet();// w w w. j  ava  2s  . c  o  m
    ChunkContext aChunkContext = mock(ChunkContext.class);
    StepContext aStepContext = mock(StepContext.class);
    when(aChunkContext.getStepContext()).thenReturn(aStepContext);
    assertEquals(RepeatStatus.FINISHED, aTasklet.execute(null, aChunkContext));
    verify(aChunkContext, times(2)).getStepContext();
    verify(aStepContext, times(1)).getStepExecution();
    assertTrue(aDestResource.getFile().exists());
}

From source file:fr.acxio.tools.agia.tasks.FilesOperationTaskletTest.java

@Test
public void testExecuteMoveToDir() throws Exception {
    FileUtils.forceMkdir(new File("target/CP-testfiles"));
    FileUtils.copyFile(new File("src/test/resources/testFiles/input.csv"), new File("target/CP-input.csv"));
    FilesOperationTasklet aTasklet = new FilesOperationTasklet();
    ResourcesFactory aSourceFactory = mock(ResourcesFactory.class);
    Resource aFileResource1 = mock(Resource.class);
    when(aFileResource1.getFile()).thenReturn(new File("target/CP-input.csv"));
    when(aFileResource1.exists()).thenReturn(true);
    when(aSourceFactory.getResources(anyMapOf(Object.class, Object.class)))
            .thenReturn(new Resource[] { aFileResource1 });
    ResourceFactory aDestinationFactory = mock(ResourceFactory.class);
    Resource aDestResource = mock(Resource.class);
    when(aDestResource.getFile()).thenReturn(new File("target/CP-testfiles/"));
    when(aDestResource.exists()).thenReturn(true);
    Resource aRelativeResource = mock(Resource.class);
    when(aRelativeResource.getFile()).thenReturn(new File("target/CP-testfiles/"));
    when(aDestResource.createRelative("/.")).thenReturn(aRelativeResource);
    when(aDestinationFactory.getResource(anyMapOf(Object.class, Object.class))).thenReturn(aDestResource);
    assertEquals(0, aDestResource.getFile().list().length);
    aTasklet.setSourceFactory(aSourceFactory);
    aTasklet.setDestinationFactory(aDestinationFactory);
    aTasklet.setOperation(Operation.MOVE);
    aTasklet.afterPropertiesSet();//from   w  w w  .j a v  a2 s.  c  o  m
    StepContribution aStepContribution = mock(StepContribution.class);
    assertEquals(RepeatStatus.FINISHED, aTasklet.execute(aStepContribution, null));
    verify(aStepContribution, times(1)).incrementReadCount();
    verify(aStepContribution, times(1)).incrementWriteCount(1);
    assertTrue(aDestResource.getFile().exists());
    assertFalse(aFileResource1.getFile().exists());
    assertEquals("CP-input.csv", aDestResource.getFile().list()[0]);
}

From source file:fr.acxio.tools.agia.tasks.FilesOperationTaskletTest.java

@Test
public void testExecuteCopyFileToExistingDir() throws Exception {
    FileUtils.forceMkdir(new File("target/CP-testfiles"));
    FilesOperationTasklet aTasklet = new FilesOperationTasklet();
    ResourcesFactory aSourceFactory = mock(ResourcesFactory.class);
    Resource aFileResource1 = mock(Resource.class);
    when(aFileResource1.getFile()).thenReturn(new File("src/test/resources/testFiles/input.csv"));
    when(aFileResource1.exists()).thenReturn(true);
    when(aSourceFactory.getResources(anyMapOf(Object.class, Object.class)))
            .thenReturn(new Resource[] { aFileResource1 });
    ResourceFactory aDestinationFactory = mock(ResourceFactory.class);
    Resource aDestResource = mock(Resource.class);
    when(aDestResource.getFile()).thenReturn(new File("target/CP-testfiles/"));
    when(aDestResource.exists()).thenReturn(true);
    Resource aRelativeResource = mock(Resource.class);
    when(aRelativeResource.getFile()).thenReturn(new File("target/CP-testfiles/"));
    when(aDestResource.createRelative("/.")).thenReturn(aRelativeResource);
    when(aDestinationFactory.getResource(anyMapOf(Object.class, Object.class))).thenReturn(aDestResource);
    assertTrue(aDestResource.getFile().exists());
    assertTrue(aDestResource.getFile().isDirectory());
    aTasklet.setSourceFactory(aSourceFactory);
    aTasklet.setDestinationFactory(aDestinationFactory);
    aTasklet.setOperation(Operation.COPY);
    aTasklet.afterPropertiesSet();//w ww  .  j a  va  2 s .  com
    StepContribution aStepContribution = mock(StepContribution.class);
    assertEquals(RepeatStatus.FINISHED, aTasklet.execute(aStepContribution, null));
    verify(aStepContribution, times(1)).incrementReadCount();
    verify(aStepContribution, times(1)).incrementWriteCount(1);
    assertTrue(aDestResource.getFile().exists());
    assertTrue(aDestResource.getFile().isDirectory());
    assertEquals(1, aDestResource.getFile().list().length);
}

From source file:fr.acxio.tools.agia.tasks.FilesOperationTaskletTest.java

@Test
public void testExecuteMoveDirToDir() throws Exception {
    FileUtils.forceMkdir(new File("target/CP-testfiles/source"));
    FileUtils.copyFile(new File("src/test/resources/testFiles/input.csv"),
            new File("target/CP-testfiles/source/CP-input.csv"));
    FilesOperationTasklet aTasklet = new FilesOperationTasklet();
    ResourcesFactory aSourceFactory = mock(ResourcesFactory.class);
    Resource aFileResource1 = mock(Resource.class);
    when(aFileResource1.getFile()).thenReturn(new File("target/CP-testfiles/source/"));
    when(aFileResource1.exists()).thenReturn(true);
    when(aSourceFactory.getResources(anyMapOf(Object.class, Object.class)))
            .thenReturn(new Resource[] { aFileResource1 });
    ResourceFactory aDestinationFactory = mock(ResourceFactory.class);
    Resource aDestResource = mock(Resource.class);
    when(aDestResource.getFile()).thenReturn(new File("target/CP-testfiles/destination/"));
    when(aDestResource.exists()).thenReturn(false);
    Resource aRelativeResource = mock(Resource.class);
    when(aRelativeResource.getFile()).thenReturn(new File("target/CP-testfiles/destination/"));
    when(aDestResource.createRelative("/.")).thenReturn(aRelativeResource);
    when(aDestinationFactory.getResource(anyMapOf(Object.class, Object.class))).thenReturn(aDestResource);
    assertFalse(aDestResource.getFile().exists());
    aTasklet.setSourceFactory(aSourceFactory);
    aTasklet.setDestinationFactory(aDestinationFactory);
    aTasklet.setOperation(Operation.MOVE);
    aTasklet.afterPropertiesSet();/*w ww  .  j  a v a  2  s . c o m*/
    StepContribution aStepContribution = mock(StepContribution.class);
    assertEquals(RepeatStatus.FINISHED, aTasklet.execute(aStepContribution, null));
    verify(aStepContribution, times(1)).incrementReadCount();
    verify(aStepContribution, times(1)).incrementWriteCount(1);
    assertTrue(aDestResource.getFile().exists());
    assertFalse(aFileResource1.getFile().exists());
    assertEquals("source", aDestResource.getFile().list()[0]);
    assertEquals("CP-input.csv", aDestResource.getFile().listFiles()[0].list()[0]);
}

From source file:com.netflix.genie.web.services.impl.JobKillServiceV3.java

/**
 * Constructor./*from w w w .  ja v a  2  s. com*/
 *
 * @param hostname              The name of the host this Genie node is running on
 * @param jobSearchService      The job search service to use to locate job information
 * @param executor              The executor to use to run system processes
 * @param runAsUser             True if jobs are run as the user who submitted the job
 * @param genieEventBus         The system event bus to use
 * @param genieWorkingDir       The working directory where all job directories are created.
 * @param objectMapper          The Jackson ObjectMapper used to serialize from/to JSON
 * @param processCheckerFactory The process checker factory
 */
public JobKillServiceV3(@NotBlank final String hostname, @NotNull final JobSearchService jobSearchService,
        @NotNull final Executor executor, final boolean runAsUser, @NotNull final GenieEventBus genieEventBus,
        @NotNull final Resource genieWorkingDir, @NotNull final ObjectMapper objectMapper,
        @NotNull final ProcessChecker.Factory processCheckerFactory) {
    this.hostname = hostname;
    this.jobSearchService = jobSearchService;
    this.executor = executor;
    this.runAsUser = runAsUser;
    this.genieEventBus = genieEventBus;
    this.objectMapper = objectMapper;
    this.processCheckerFactory = processCheckerFactory;

    try {
        this.baseWorkingDir = genieWorkingDir.getFile();
    } catch (IOException gse) {
        throw new RuntimeException("Could not load the base path from resource", gse);
    }
}

From source file:fr.acxio.tools.agia.tasks.FilesOperationTaskletTest.java

@Test
public void testExecuteCopyNonRecursiveDirectory() throws Exception {
    FileUtils.forceMkdir(new File("target/CP-testfiles/source/subdir"));
    FileUtils.copyFile(new File("src/test/resources/testFiles/input.csv"),
            new File("target/CP-testfiles/source/CP0-input.csv"));
    FileUtils.copyFile(new File("src/test/resources/testFiles/input.csv"),
            new File("target/CP-testfiles/source/subdir/CP1-input.csv"));

    FilesOperationTasklet aTasklet = new FilesOperationTasklet();
    ResourcesFactory aSourceFactory = mock(ResourcesFactory.class);
    Resource aFileResource1 = mock(Resource.class);
    when(aFileResource1.getFile()).thenReturn(new File("target/CP-testfiles/source/"));
    when(aFileResource1.exists()).thenReturn(true);
    when(aSourceFactory.getResources(anyMapOf(Object.class, Object.class)))
            .thenReturn(new Resource[] { aFileResource1 });
    ResourceFactory aDestinationFactory = mock(ResourceFactory.class);
    Resource aDestResource = mock(Resource.class);
    when(aDestResource.getFile()).thenReturn(new File("target/CP-testfiles/destination/"));
    when(aDestResource.exists()).thenReturn(false);
    Resource aRelativeResource = mock(Resource.class);
    when(aRelativeResource.getFile()).thenReturn(new File("target/CP-testfiles/destination/"));
    when(aDestResource.createRelative("/.")).thenReturn(aRelativeResource);
    when(aDestinationFactory.getResource(anyMapOf(Object.class, Object.class))).thenReturn(aDestResource);
    assertFalse(aDestResource.getFile().exists());
    aTasklet.setSourceFactory(aSourceFactory);
    aTasklet.setDestinationFactory(aDestinationFactory);
    aTasklet.setOperation(Operation.COPY);
    aTasklet.setRecursive(false);//from w w  w. j a va2 s.c om
    aTasklet.afterPropertiesSet();
    StepContribution aStepContribution = mock(StepContribution.class);
    assertEquals(RepeatStatus.FINISHED, aTasklet.execute(aStepContribution, null));
    verify(aStepContribution, times(1)).incrementReadCount();
    verify(aStepContribution, times(1)).incrementWriteCount(1);
    assertTrue(aDestResource.getFile().exists());
    assertEquals(1, aDestResource.getFile().list().length);
    assertEquals("CP0-input.csv", aDestResource.getFile().list()[0]);
}

From source file:fr.acxio.tools.agia.tasks.FilesOperationTaskletTest.java

@Test
public void testExecuteCopyRecursiveDirectory() throws Exception {
    FileUtils.forceMkdir(new File("target/CP-testfiles/source/subdir"));
    FileUtils.copyFile(new File("src/test/resources/testFiles/input.csv"),
            new File("target/CP-testfiles/source/CP0-input.csv"));
    FileUtils.copyFile(new File("src/test/resources/testFiles/input.csv"),
            new File("target/CP-testfiles/source/subdir/CP1-input.csv"));

    FilesOperationTasklet aTasklet = new FilesOperationTasklet();
    ResourcesFactory aSourceFactory = mock(ResourcesFactory.class);
    Resource aFileResource1 = mock(Resource.class);
    when(aFileResource1.getFile()).thenReturn(new File("target/CP-testfiles/source/"));
    when(aFileResource1.exists()).thenReturn(true);
    when(aSourceFactory.getResources(anyMapOf(Object.class, Object.class)))
            .thenReturn(new Resource[] { aFileResource1 });
    ResourceFactory aDestinationFactory = mock(ResourceFactory.class);
    Resource aDestResource = mock(Resource.class);
    when(aDestResource.getFile()).thenReturn(new File("target/CP-testfiles/destination/"));
    when(aDestResource.exists()).thenReturn(false);
    Resource aRelativeResource = mock(Resource.class);
    when(aRelativeResource.getFile()).thenReturn(new File("target/CP-testfiles/destination/"));
    when(aDestResource.createRelative("/.")).thenReturn(aRelativeResource);
    when(aDestinationFactory.getResource(anyMapOf(Object.class, Object.class))).thenReturn(aDestResource);
    assertFalse(aDestResource.getFile().exists());
    aTasklet.setSourceFactory(aSourceFactory);
    aTasklet.setDestinationFactory(aDestinationFactory);
    aTasklet.setOperation(Operation.COPY);
    aTasklet.setRecursive(true);/*  ww w  .  ja  va2 s  .  c o  m*/
    aTasklet.afterPropertiesSet();
    StepContribution aStepContribution = mock(StepContribution.class);
    assertEquals(RepeatStatus.FINISHED, aTasklet.execute(aStepContribution, null));
    verify(aStepContribution, times(1)).incrementReadCount();
    verify(aStepContribution, times(1)).incrementWriteCount(1);
    assertTrue(aDestResource.getFile().exists());
    assertEquals(2, aDestResource.getFile().list().length);
    assertArrayEquals(aFileResource1.getFile().list(), aDestResource.getFile().list());
    assertArrayEquals(aFileResource1.getFile().listFiles()[0].list(),
            aDestResource.getFile().listFiles()[0].list());
}

From source file:fr.acxio.tools.agia.tasks.FilesOperationTaskletTest.java

@Test
public void testExecuteCopyTwoFiles() throws Exception {
    FilesOperationTasklet aTasklet = new FilesOperationTasklet();
    ResourcesFactory aSourceFactory = mock(ResourcesFactory.class);
    Resource aFileResource1 = mock(Resource.class);
    when(aFileResource1.getFile()).thenReturn(new File("src/test/resources/testFiles/input.csv"));
    when(aFileResource1.exists()).thenReturn(true);
    Resource aFileResource2 = mock(Resource.class);
    when(aFileResource2.getFile()).thenReturn(new File("src/test/resources/testFiles/input1000.csv"));
    when(aFileResource2.exists()).thenReturn(true);
    when(aSourceFactory.getResources(anyMapOf(Object.class, Object.class)))
            .thenReturn(new Resource[] { aFileResource1, aFileResource2 });
    ResourceFactory aDestinationFactory = mock(ResourceFactory.class);
    Resource aDestResource1 = mock(Resource.class);
    when(aDestResource1.getFile()).thenReturn(new File("target/CP-input.csv"));
    when(aDestResource1.exists()).thenReturn(false);
    Resource aRelativeResource1 = mock(Resource.class);
    when(aRelativeResource1.getFile()).thenReturn(new File("target"));
    when(aDestResource1.createRelative("/.")).thenReturn(aRelativeResource1);
    Resource aDestResource2 = mock(Resource.class);
    when(aDestResource2.getFile()).thenReturn(new File("target/CP-input1000.csv"));
    when(aDestResource2.exists()).thenReturn(false);
    Resource aRelativeResource2 = mock(Resource.class);
    when(aRelativeResource2.getFile()).thenReturn(new File("target"));
    when(aDestResource2.createRelative("/.")).thenReturn(aRelativeResource2);
    when(aDestinationFactory.getResource(anyMapOf(Object.class, Object.class))).thenReturn(aDestResource1,
            aDestResource2);//from   w  w w  .  ja  v  a2 s.  c  om
    assertFalse(aDestResource1.getFile().exists());
    assertFalse(aDestResource2.getFile().exists());
    aTasklet.setSourceFactory(aSourceFactory);
    aTasklet.setDestinationFactory(aDestinationFactory);
    aTasklet.setOperation(Operation.COPY);
    aTasklet.afterPropertiesSet();
    StepContribution aStepContribution = mock(StepContribution.class);
    assertEquals(RepeatStatus.FINISHED, aTasklet.execute(aStepContribution, null));
    verify(aStepContribution, times(2)).incrementReadCount();
    verify(aStepContribution, times(2)).incrementWriteCount(1);
    assertTrue(aDestResource1.getFile().exists());
    assertTrue(aDestResource2.getFile().exists());
}

From source file:de.tudarmstadt.ukp.dkpro.core.api.io.ResourceCollectionReaderBase.java

/**
 * Get the URI of the given resource.// ww w .jav a2 s .  c om
 * 
 * @param aResource
 *            a resource
 * @param aFileOrDir
 *            if true try to return only files, if false try to return only dirs
 * @return the URI of the resource
 */
private URI getUri(org.springframework.core.io.Resource aResource, boolean aFileOrDir) throws IOException {
    try {
        final File file = aResource.getFile();

        // Exclude hidden files/dirs if requested
        if (file.isHidden() && !this.includeHidden) {
            return null;
        }

        // Return only dirs or files...
        if ((aFileOrDir && file.isFile()) || (!aFileOrDir && file.isDirectory())) {
            return aResource.getFile().toURI();
        } else {
            return null;
        }
    } catch (final IOException e) {
        return aResource.getURI();
    } catch (final UnsupportedOperationException e) {
        return aResource.getURI();
    }
}