Package com.mongodb

Class MapReduceCommand


  • public class MapReduceCommand
    extends 
    This class groups the argument for a map/reduce operation and can build the underlying command object
    MongoDB documentation
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  MapReduceCommand.OutputType
      Represents the different options available for outputting the results of a map-reduce operation.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      getBypassDocumentValidation()
      Gets whether to bypass document validation, or null if unspecified.
      Collation getCollation()
      Returns the collation
      getFinalize()
      Gets the Finalize JS Function
      getInput()
      Get the name of the collection the MapReduce will read from
      getJsMode()
      Gets the (optional) JavaScript mode
      int getLimit()
      Gets the (optional) limit on input
      getMap()
      Get the map function, as a JS String
      long  timeUnit)
      Gets the max execution time for this command, in the given time unit.
      getOutputDB()
      Gets the (optional) database name where the output collection should reside
      getOutputTarget()
      Gets the output target (name of collection to save to) This value is nullable only if OutputType is set to INLINE
      MapReduceCommand.OutputType getOutputType()
      Gets the OutputType for this instance.
      DBObject getQuery()
      Gets the query to run for this MapReduce job
      ReadPreference getReadPreference()
      Gets the read preference
      getReduce()
      Gets the reduce function, as a JS String
      <,​> getScope()
      Gets the (optional) JavaScript scope
      DBObject getSort()
      Gets the (optional) sort specification object
      isVerbose()
      Gets the verbosity of the MapReduce job.
      void  bypassDocumentValidation)
      Sets whether to bypass document validation.
      void setCollation​(Collation collation)
      Sets the collation options
      void  finalize)
      Sets the Finalize JS Function
      void  jsMode)
      Sets the (optional) JavaScript Mode
      void setLimit​(int limit)
      Sets the (optional) limit on input
      void setMaxTime​(long maxTime,  timeUnit)
      Sets the max execution time for this command, in the given time unit.
      void  outputDB)
      Sets the (optional) database name where the output collection should reside
      void setReadPreference​(ReadPreference preference)
      Sets the read preference for this command.
      void <,​> scope)
      Sets the (optional) JavaScript scope
      void setSort​(DBObject sort)
      Sets the (optional) sort specification object
      void  verbose)
      Sets the verbosity of the MapReduce job, defaults to 'true'
      DBObject toDBObject()
      Turns this command into a DBObject representation of this map reduce command.
      toString()  
      • Methods inherited from class java.lang.

        , , , , , , , , ,
    • Constructor Detail

      • MapReduceCommand

        public MapReduceCommand​(DBCollection inputCollection,
                                 map,
                                 reduce,
                                @Nullable
                                 outputCollection,
                                MapReduceCommand.OutputType type,
                                DBObject query)
        Represents the command for a map reduce operation Runs the command in REPLACE output type to a named collection
        Parameters:
        inputCollection - collection to use as the source documents to perform the map reduce operation.
        map - a JavaScript function that associates or "maps" a value with a key and emits the key and value pair.
        reduce - a JavaScript function that "reduces" to a single object all the values associated with a particular key.
        outputCollection - optional - leave null if want to get the result inline
        type - the type of output
        query - specifies the selection criteria using query operators for determining the documents input to the map function.
        MongoDB documentation
    • Method Detail

      • setVerbose

        public void setVerbose​( verbose)
        Sets the verbosity of the MapReduce job, defaults to 'true'
        Parameters:
        verbose - The verbosity level.
      • isVerbose

        public  isVerbose()
        Gets the verbosity of the MapReduce job.
        Returns:
        the verbosity level.
      • getInput

        public  getInput()
        Get the name of the collection the MapReduce will read from
        Returns:
        name of the collection the MapReduce will read from
      • getMap

        public  getMap()
        Get the map function, as a JS String
        Returns:
        the map function (as a JS String)
      • getReduce

        public  getReduce()
        Gets the reduce function, as a JS String
        Returns:
        the reduce function (as a JS String)
      • getOutputTarget

        @Nullable
        public  getOutputTarget()
        Gets the output target (name of collection to save to) This value is nullable only if OutputType is set to INLINE
        Returns:
        The outputCollection
      • getFinalize

        @Nullable
        public  getFinalize()
        Gets the Finalize JS Function
        Returns:
        The finalize function (as a JS String).
      • setFinalize

        public void setFinalize​(@Nullable
                                 finalize)
        Sets the Finalize JS Function
        Parameters:
        finalize - The finalize function (as a JS String)
      • getQuery

        @Nullable
        public DBObject getQuery()
        Gets the query to run for this MapReduce job
        Returns:
        The query object
      • getSort

        @Nullable
        public DBObject getSort()
        Gets the (optional) sort specification object
        Returns:
        the Sort DBObject
      • setSort

        public void setSort​(@Nullable
                            DBObject sort)
        Sets the (optional) sort specification object
        Parameters:
        sort - The sort specification object
      • getLimit

        public int getLimit()
        Gets the (optional) limit on input
        Returns:
        The limit specification object
      • setLimit

        public void setLimit​(int limit)
        Sets the (optional) limit on input
        Parameters:
        limit - The limit specification object
      • getMaxTime

        public long getMaxTime​( timeUnit)
        Gets the max execution time for this command, in the given time unit.
        Parameters:
        timeUnit - the time unit to return the value in.
        Returns:
        the maximum execution time
        Since:
        2.12.0
        Since server release
      • setMaxTime

        public void setMaxTime​(long maxTime,
                                timeUnit)
        Sets the max execution time for this command, in the given time unit.
        Parameters:
        maxTime - the maximum execution time. A non-zero value requires a server version >= 2.6
        timeUnit - the time unit that maxTime is specified in
        Since:
        2.12.0
        Since server release
      • getScope

        @Nullable
        public <,​> getScope()
        Gets the (optional) JavaScript scope
        Returns:
        The JavaScript scope
      • setScope

        public void setScope​(@Nullable
                             <,​> scope)
        Sets the (optional) JavaScript scope
        Parameters:
        scope - The JavaScript scope
      • getJsMode

        @Nullable
        public  getJsMode()
        Gets the (optional) JavaScript mode
        Returns:
        The JavaScript mode
        Since:
        2.13
      • setJsMode

        public void setJsMode​(@Nullable
                               jsMode)
        Sets the (optional) JavaScript Mode
        Parameters:
        jsMode - Specifies whether to convert intermediate data into BSON format between the execution of the map and reduce functions
        Since:
        2.13
      • getOutputDB

        @Nullable
        public  getOutputDB()
        Gets the (optional) database name where the output collection should reside
        Returns:
        the name of the database the result is stored in, or null.
      • setOutputDB

        public void setOutputDB​(@Nullable
                                 outputDB)
        Sets the (optional) database name where the output collection should reside
        Parameters:
        outputDB - the name of the database to send the Map Reduce output to
      • getBypassDocumentValidation

        @Nullable
        public  getBypassDocumentValidation()
        Gets whether to bypass document validation, or null if unspecified. The default is null.
        Returns:
        whether to bypass document validation, or null if unspecified.
        Since:
        2.14
        Since server release
      • setBypassDocumentValidation

        public void setBypassDocumentValidation​(@Nullable
                                                 bypassDocumentValidation)
        Sets whether to bypass document validation.
        Parameters:
        bypassDocumentValidation - whether to bypass document validation, or null if unspecified
        Since:
        2.14
        Since server release
      • toDBObject

        public DBObject toDBObject()
        Turns this command into a DBObject representation of this map reduce command.
        Returns:
        a DBObject that contains the MongoDB document representation of this command.
      • setReadPreference

        public void setReadPreference​(@Nullable
                                      ReadPreference preference)
        Sets the read preference for this command. See the * documentation for ReadPreference for more information.
        Parameters:
        preference - Read Preference to use
      • getReadPreference

        @Nullable
        public ReadPreference getReadPreference()
        Gets the read preference
        Returns:
        the readPreference
      • getCollation

        @Nullable
        public Collation getCollation()
        Returns the collation
        Returns:
        the collation
        Since:
        3.4
        Since server release
      • setCollation

        @Nullable
        public void setCollation​(Collation collation)
        Sets the collation options
        Parameters:
        collation - the collation options
        Since:
        3.4
        Since server release
      • toString

        public  toString()
        Overrides:
         in class