package org.jbpm.query.jpa.data; import java.lang.reflect.Field; import java.util.Map; import java.util.TreeMap; import org.kie.internal.query.QueryParameterIdentifiers; public class QueryParameterIdentifiersUtil { public static Map<Integer, String> getQueryParameterIdNameMap() { Field [] fields = QueryParameterIdentifiers.class.getDeclaredFields(); Map<Integer, String> idMap = new TreeMap<Integer, String>(); for( Field field : fields ) { Object objVal; try { objVal = field.get(null); } catch( Exception e ) { throw new IllegalStateException("Unable to get static value from field " + QueryParameterIdentifiers.class.getName() + "." + field.getName()); } if( ! (objVal instanceof String) ) { continue; } String val = (String) objVal; Integer idVal; try { idVal = Integer.valueOf(val); } catch( Exception e ) { continue; } idMap.put(idVal, field.getName()); } return idMap; } }