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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
| public class DigesterRequests {
private static final String ROOT_TAG = "requestList";
private static final String REQUEST_TAG = ROOT_TAG + "/request";
private static final String NAME_TAG = REQUEST_TAG + "/name";
private static final String QUERY_TYPE_TAG = REQUEST_TAG + "/queryType";
private static final String RESULT_ISLIST_TAG = REQUEST_TAG + "/resultIsList";
private static final String RESULT_OBJECT_TYPE_TAG= REQUEST_TAG + "/resultObjectType";
private static final String RESULT_TAG = REQUEST_TAG + "/result";
private static final String QUERY_TAG = REQUEST_TAG + "/query";
private static final String REQUEST_CREATION_METHOD = "addRequestToList";
private static final int REQUEST_NB_FIELDS = 6;
RequestList requestList;
public DigesterRequests() {
requestList = new RequestList();
}
public RequestList validerEtParserFichierXml(File xmlFile) throws Exception {
Digester digester = new Digester();
digester.setValidating(true);
digester.push(this);
digester.addCallMethod( REQUEST_TAG, REQUEST_CREATION_METHOD, REQUEST_NB_FIELDS);
digester.addCallParam( NAME_TAG, 0 );
digester.addCallParam( QUERY_TYPE_TAG, 1 );
digester.addCallParam( RESULT_ISLIST_TAG, 2 );
digester.addCallParam( RESULT_OBJECT_TYPE_TAG, 3 );
digester.addCallParam( RESULT_TAG, 4 );
digester.addCallParam( QUERY_TAG, 5 );
try {
digester.parse(xmlFile);
} catch (IOException e) {
// TODO
} catch (SAXException e) {
// TODO
}
return requestList;
}
public void addRequestToList(String name, String queryType, String resultIsList, String resultObjectType, String result, String query) {
requestList.addRequest(new Request( name, queryType, resultIsList, resultObjectType, result, query));
}
} |
Partager