1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 package fr.paris.lutece.plugins.filegenerator.service;
35
36 import fr.paris.lutece.plugins.filegenerator.business.TemporaryFile;
37 import fr.paris.lutece.plugins.filegenerator.business.TemporaryFileHome;
38 import fr.paris.lutece.portal.business.file.File;
39 import fr.paris.lutece.portal.business.physicalfile.PhysicalFile;
40 import fr.paris.lutece.portal.business.user.AdminUser;
41 import fr.paris.lutece.portal.service.file.FileService;
42 import fr.paris.lutece.portal.service.file.IFileStoreServiceProvider;
43 import fr.paris.lutece.portal.service.util.AppPropertiesService;
44
45 public class TemporaryFileService
46 {
47 private static final TemporaryFileServiceservice/TemporaryFileService.html#TemporaryFileService">TemporaryFileService INSTANCE = new TemporaryFileService( );
48
49 private IFileStoreServiceProvider _fileStoreServiceProvider;
50
51 private TemporaryFileService( )
52 {
53 _fileStoreServiceProvider = FileService.getInstance( )
54 .getFileStoreServiceProvider( AppPropertiesService.getProperty( "temporaryfiles.file.provider.service" ) );
55 }
56
57 public static final TemporaryFileService getInstance( )
58 {
59 return INSTANCE;
60 }
61
62 public int initTemporaryFile( AdminUser user, String description )
63 {
64 TemporaryFileegenerator/business/TemporaryFile.html#TemporaryFile">TemporaryFile file = new TemporaryFile( );
65 file.setTitle( "temp" );
66 file.setUser( user );
67 file.setDescription( description );
68 TemporaryFileHome.create( file );
69 return file.getIdFile( );
70 }
71
72 public String savePhysicalFile( TemporaryFile tempFile, PhysicalFile physicalFile )
73 {
74 File file = new File( );
75 file.setTitle( tempFile.getTitle( ) );
76 file.setMimeType( tempFile.getMimeType( ) );
77 file.setDateCreation( tempFile.getDateCreation( ) );
78 file.setSize( tempFile.getSize( ) );
79 file.setPhysicalFile( physicalFile );
80 return _fileStoreServiceProvider.storeFile( file );
81 }
82
83 public PhysicalFile loadPhysicalFile( String idFile )
84 {
85 File file = _fileStoreServiceProvider.getFile( idFile );
86 if ( file != null )
87 {
88 return file.getPhysicalFile( );
89 }
90 return null;
91 }
92
93 public void removeTemporaryFile( TemporaryFile temporaryFile )
94 {
95 if ( temporaryFile.getIdPhysicalFile( ) != null )
96 {
97 _fileStoreServiceProvider.delete( temporaryFile.getIdPhysicalFile( ) );
98 }
99 TemporaryFileHome.remove( temporaryFile.getIdFile( ) );
100 }
101 }