Package fr.gouv.vitam.common.database.parser.request.multiple

# Class SelectParserMultiple

java.lang.Object
fr.gouv.vitam.common.database.parser.request.AbstractParser<RequestMultiple>
fr.gouv.vitam.common.database.parser.request.multiple.RequestParserMultiple
fr.gouv.vitam.common.database.parser.request.multiple.SelectParserMultiple

public class SelectParserMultiple extends RequestParserMultiple
Select Parser: { $roots: roots, $query : query, $filter : filter, $projection : projection }

- ## Field Summary

  ### Fields inherited from class fr.gouv.vitam.common.database.parser.request.multiple.RequestParserMultiple

  `lastDepth`

  ### Fields inherited from class fr.gouv.vitam.common.database.parser.request.AbstractParser

  `adapter, hasFullTextCurrentQuery, hasFullTextQuery, request, rootNode, sourceRequest`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `SelectParserMultiple()`
  Empty constructor
  `SelectParserMultiple(VarNameAdapter adapter)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected Facet`
  `analyzeOneFacet(com.fasterxml.jackson.databind.JsonNode facet, BuilderToken.FACET facetCommand)`
  Generate a Facet from a Json + command
  `protected void`
  `facetsParse(com.fasterxml.jackson.databind.JsonNode rootNode)`
  Parse facets
  `static final BuilderToken.FACET`
  `getFacetCommand(com.fasterxml.jackson.databind.JsonNode facet)`
  Get the facet command
  `protected RequestMultiple`
  `getNewRequest()`
  `SelectMultiQuery`
  `getRequest()`
  `void`
  `parse(com.fasterxml.jackson.databind.JsonNode request)`
  `void`
  `parseQueryOnly(String query)`
  `protected void`
  `parseTrackTotalHits(com.fasterxml.jackson.databind.JsonNode rootNode)`
  `protected void`
  `projectionParse(com.fasterxml.jackson.databind.JsonNode rootNode)`
  $fields : {name1 : 0/1, name2 : 0/1, ...}, $usage : contractId
  `protected void`
  `thresholdParse(com.fasterxml.jackson.databind.JsonNode rootNode)`
  {$"threshold" : arg}

  ### Methods inherited from class fr.gouv.vitam.common.database.parser.request.multiple.RequestParserMultiple

  `analyzeRootQuery, filterParse, getFinalScrollId, getFinalScrollTimeout, getLastDepth, hintCache, hintNoTimeout, model, parseJson, queryParse, rootParse, toString, trackTotalHits`

  ### Methods inherited from class fr.gouv.vitam.common.database.parser.request.AbstractParser

  `analyzeOneCommand, getAdapter, getRootNode, getSource, hasFullTextQuery, parseOrderByFilter`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### SelectParserMultiple

    public SelectParserMultiple()
    Empty constructor

  - ### SelectParserMultiple

    public SelectParserMultiple(VarNameAdapter adapter)
    Parameters:
      `adapter` - VarNameAdapter

- ## Method Details

  - ### getNewRequest

    protected RequestMultiple getNewRequest()
    Specified by:
      `getNewRequest` in class `AbstractParser<RequestMultiple>`
    Returns:
      a new Request

  - ### parse

    public void parse(com.fasterxml.jackson.databind.JsonNode request) throws InvalidParseOperationException
    Specified by:
      `parse` in class `AbstractParser<RequestMultiple>`
    Parameters:
      `request` - containing a parsed JSON as { $roots: root, $query : query, $filter : filter, $projection : projection }
    Throws:
      `InvalidParseOperationException` - if request could not parse to JSON

  - ### parseQueryOnly

    public void parseQueryOnly(String query) throws InvalidParseOperationException
    Overrides:
      `parseQueryOnly` in class `RequestParserMultiple`
    Parameters:
      `query` - containing only the JSON request part (no filter neither projection nor roots)
    Throws:
      `InvalidParseOperationException` - if request could not parse to JSON

  - ### facetsParse

    protected void facetsParse(com.fasterxml.jackson.databind.JsonNode rootNode) throws InvalidParseOperationException
    Parse facets
    Parameters:
      `rootNode` - JsonNode
    Throws:
      `InvalidParseOperationException` - if rootNode could not parse to JSON

  - ### getFacetCommand

    public static final BuilderToken.FACET getFacetCommand(com.fasterxml.jackson.databind.JsonNode facet) throws InvalidParseOperationException
    Get the facet command
    Parameters:
      `facet` - facet
    Returns:
      FACET command
    Throws:
      `InvalidParseOperationException` - when valid command could not be found

  - ### analyzeOneFacet

    protected Facet analyzeOneFacet(com.fasterxml.jackson.databind.JsonNode facet, BuilderToken.FACET facetCommand) throws InvalidCreateOperationException, InvalidParseOperationException
    Generate a Facet from a Json + command
    Overrides:
      `analyzeOneFacet` in class `AbstractParser<RequestMultiple>`
    Parameters:
      `facet` - facet as json
      `facetCommand` - facet command
    Returns:
      Facet
    Throws:
      `InvalidCreateOperationException` - parsing error
      `InvalidParseOperationException` - invalid command type

  - ### projectionParse

    protected void projectionParse(com.fasterxml.jackson.databind.JsonNode rootNode) throws InvalidParseOperationException
    $fields : {name1 : 0/1, name2 : 0/1, ...}, $usage : contractId
    Parameters:
      `rootNode` - JsonNode
    Throws:
      `InvalidParseOperationException` - if rootNode could not parse to JSON

  - ### thresholdParse

    protected void thresholdParse(com.fasterxml.jackson.databind.JsonNode rootNode) throws InvalidParseOperationException
    {$"threshold" : arg}
    Parameters:
      `rootNode` - JsonNode
    Throws:
      `InvalidParseOperationException` - if rootNode could not parse to JSON

  - ### parseTrackTotalHits

    protected void parseTrackTotalHits(com.fasterxml.jackson.databind.JsonNode rootNode) throws InvalidParseOperationException
    Throws:
      `InvalidParseOperationException`

  - ### getRequest

    public SelectMultiQuery getRequest()
    Overrides:
      `getRequest` in class `RequestParserMultiple`
    Returns:
      the Request