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.genericattributes.modules.ocr.service;
35
36 import java.util.Arrays;
37 import java.util.List;
38
39 import org.apache.commons.fileupload.FileItem;
40
41 import fr.paris.lutece.plugins.genericattributes.business.IOcrProvider;
42 import fr.paris.lutece.plugins.genericattributes.business.Response;
43 import fr.paris.lutece.plugins.genericattributes.modules.ocr.exceptions.CallOcrException;
44 import fr.paris.lutece.plugins.genericattributes.modules.ocr.utils.OcrProviderUtils;
45 import fr.paris.lutece.portal.service.util.AppPropertiesService;
46 import fr.paris.lutece.util.ReferenceItem;
47 import fr.paris.lutece.util.ReferenceList;
48
49
50
51
52
53
54 public class OcrRibProvider implements IOcrProvider
55 {
56 private static final long serialVersionUID = 6224042984367506762L;
57 private static final String PROPERTY_KEY = "genericattributes-ocr.RIB.key";
58 private static final String PROPERTY_DISPLAYED_NAME = "genericattributes-ocr.RIB.displayName";
59 private static final String PROPERTY_AUTHORIZED_ENTRY_TYPE = "genericattributes-ocr.RIB.authorizedEntryType";
60 private static final String PROPERTY_MAPPED_FIELDS = "genericattributes-ocr.RIB.mappedFields";
61
62
63
64
65 @Override
66 public String getKey( )
67 {
68 return AppPropertiesService.getProperty( PROPERTY_KEY );
69 }
70
71
72
73
74 @Override
75 public String getDisplayedName( )
76 {
77 return AppPropertiesService.getProperty( PROPERTY_DISPLAYED_NAME );
78 }
79
80
81
82
83 @Override
84 public ReferenceItem toRefItem( )
85 {
86 ReferenceItem refItem = new ReferenceItem( );
87
88 refItem.setCode( getKey( ) );
89 refItem.setName( getDisplayedName( ) );
90
91 return refItem;
92 }
93
94
95
96
97 @Override
98 public String toString( )
99 {
100 return "Ocr RIB Provider";
101 }
102
103
104
105
106 @Override
107 public Object getParameter( int nKey )
108 {
109
110 return null;
111 }
112
113
114
115
116 @Override
117 public ReferenceList getListField( )
118 {
119 ReferenceList refListField = new ReferenceList( );
120
121 List<String> lstMappedField = Arrays.asList( AppPropertiesService.getProperty( PROPERTY_MAPPED_FIELDS ).split( "," ) );
122 int nIndex = 0;
123 while ( nIndex < lstMappedField.size( ) )
124 {
125 refListField.addItem( nIndex, lstMappedField.get( nIndex ) );
126 nIndex++;
127 }
128
129 return refListField;
130 }
131
132
133
134
135 @Override
136 public ReferenceItem getFieldById( int idField )
137 {
138 return getListField( ).get( idField );
139 }
140
141
142
143
144
145
146
147
148
149
150 @Override
151 public String getConfigHtmlCode( ReferenceList lisEntry, int nIdQuestion, String strResourceType )
152 {
153
154 return OcrProviderUtils.builtTempalteConfiog( lisEntry, this, nIdQuestion, strResourceType ).getHtml( );
155 }
156
157
158
159
160
161
162 @Override
163 public List<Response> process( FileItem fileUploaded, int nIdTargetEntry, String strResourceType ) throws CallOcrException
164 {
165 return OcrProviderUtils.process( fileUploaded, nIdTargetEntry, strResourceType, getKey( ), getListField( ) );
166 }
167
168 @Override
169 public String getHtmlCode( int nIdTargetEntry, String strResourceType )
170 {
171
172 return OcrProviderUtils.builtTempalteCode( nIdTargetEntry, strResourceType ).getHtml( );
173
174 }
175
176 }