package gw.solr.request uses gw.solr.utils.PLSolrUtils uses org.json.simple.JSONObject uses java.util.LinkedList uses java.util.List @ReadOnly abstract class AbstractRequest { var _docList : List = new LinkedList() construct() { } final function addDocument(doc : AbstractIndexDocument ) { _docList.add(doc) } final function hasDocuments() : boolean { return !_docList.Empty } final function getDocumentList() : List { return _docList } abstract function getDocumentType() : String function transformBeanVersionsToConsistency( operation : String, jsonDoc : JSONObject ) : JSONObject { var beanVersions = jsonDoc.get(PLSolrUtils.VERSIONS_TAG) if(beanVersions != null) { var consistencyObj = new JSONObject() consistencyObj.put(PLSolrUtils.OPERATION_TAG, operation) consistencyObj.put(PLSolrUtils.VERSIONS_TAG, beanVersions) jsonDoc.remove(PLSolrUtils.VERSIONS_TAG) jsonDoc.put(PLSolrUtils.CONSISTENCY_TAG, consistencyObj) } return jsonDoc } }