@Override public DataFieldDefinition getProcessDataField(final ProcessDefinitionUUID processDefinitionUUID, final String dataFieldId, final Map<String, String> options) throws ProcessNotFoundException, DataFieldNotFoundException, RemoteException { return getAPI(options).getProcessDataField(processDefinitionUUID, dataFieldId); }
public DataFieldDefinition getProcessDataField(ProcessDefinitionUUID processDefinitionUUID, String dataFieldId) throws ProcessNotFoundException, DataFieldNotFoundException { return getAPI().getProcessDataField(processDefinitionUUID, dataFieldId); }
private static String getProcessDataTypeClassName(final QueryDefinitionAPI queryDefinitionAPI, final ProcessDefinitionUUID processDefinitionUUID, final String variableName) { try { final DataFieldDefinition data = queryDefinitionAPI.getProcessDataField(processDefinitionUUID, variableName); return data.getDataTypeClassName(); } catch (final Exception e) { throw new BonitaRuntimeException(e.getMessage(), e); } }
private DataFieldDefinition getDataFieldDefinition(final ProcessDefinitionUUID processUUID, final ActivityInstance activity, final String variableName) throws ActivityDefNotFoundException, ProcessNotFoundException, DataFieldNotFoundException { final APIAccessor apiAccessor = new StandardAPIAccessorImpl(); final QueryDefinitionAPI queryDefinitionAPI = apiAccessor.getQueryDefinitionAPI(); DataFieldDefinition dataField = null; if (activity != null) { try { dataField = queryDefinitionAPI.getActivityDataField(activity.getActivityDefinitionUUID(), variableName); } catch (final DataFieldNotFoundException e) { // it's a global variable dataField = queryDefinitionAPI.getProcessDataField(processUUID, variableName); } } else { dataField = queryDefinitionAPI.getProcessDataField(processUUID, variableName); } return dataField; }
datafield = queryDefinitionAPI.getActivityDataField(activityUUID, varName); } catch (final DataFieldNotFoundException e) { datafield = queryDefinitionAPI.getProcessDataField(processUUID, varName); datafield = queryDefinitionAPI.getProcessDataField(processUUID, varName);
private static String getDataTypeClassName(String variableName, final ProcessDefinitionUUID processDefinitionUUID) { if (isXPathVariableReference(variableName)) { return String.class.getName(); } variableName = Misc.getVariableName(variableName); final StandardQueryAPIAccessorImpl accessor = new StandardQueryAPIAccessorImpl(); final QueryDefinitionAPI queryDefinitionAPI = accessor.getQueryDefinitionAPI(AccessorUtil.QUERYLIST_JOURNAL_KEY); try { final DataFieldDefinition data = queryDefinitionAPI.getProcessDataField(processDefinitionUUID, variableName); return data.getDataTypeClassName(); } catch (final Exception a) { throw new BonitaRuntimeException(a.getMessage(), a); } }
private String getDataTypeClassName(final String variableId, final Object variableValue, final AbstractUUID uuid) { final boolean mayBeAnXmlDocument = mayBeAnXMLDocument(variableValue); if (mayBeAnXmlDocument) { String dataTypeClassName = null; DataFieldDefinition dataFieldDefinition = null; final String dataFieldName = Misc.getVariableName(variableId); final APIAccessor accessor = new StandardAPIAccessorImpl(); final QueryDefinitionAPI queryDefinitionAPI = accessor.getQueryDefinitionAPI(AccessorUtil.QUERYLIST_JOURNAL_KEY); try { if (uuid instanceof ProcessDefinitionUUID) { dataFieldDefinition = queryDefinitionAPI.getProcessDataField((ProcessDefinitionUUID) uuid, dataFieldName); } else if (uuid instanceof ActivityDefinitionUUID) { dataFieldDefinition = queryDefinitionAPI.getActivityDataField((ActivityDefinitionUUID) uuid, dataFieldName); } // do that only if the string may be a Document dataTypeClassName = dataFieldDefinition.getDataTypeClassName(); } catch (final Exception e) { throw new BonitaRuntimeException("unable to find datafield with name: " + dataFieldName + " in " + uuid); } return dataTypeClassName; } return null; }