1 /* Copyright (C) 2014 InfiniDB, Inc.
2 
3    This program is free software; you can redistribute it and/or
4    modify it under the terms of the GNU General Public License
5    as published by the Free Software Foundation; version 2 of
6    the License.
7 
8    This program is distributed in the hope that it will be useful,
9    but WITHOUT ANY WARRANTY; without even the implied warranty of
10    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11    GNU General Public License for more details.
12 
13    You should have received a copy of the GNU General Public License
14    along with this program; if not, write to the Free Software
15    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
16    MA 02110-1301, USA. */
17 
18 /***********************************************************************
19 *   $Id: filtercommand-jl.h 9210 2013-01-21 14:10:42Z rdempsey $
20 *
21 *
22 ***********************************************************************/
23 /** @file
24  * class FilterCommand interface
25  */
26 
27 #ifndef JOBLIST_FILTERCOMMANDJL_H_
28 #define JOBLIST_FILTERCOMMANDJL_H_
29 
30 #include "joblist.h"
31 #include "command-jl.h"
32 
33 namespace joblist
34 {
35 
36 class FilterCommandJL : public CommandJL
37 {
38 public:
39     FilterCommandJL(const FilterStep&);
40     virtual ~FilterCommandJL();
41 
42     void setLBID(uint64_t rid, uint32_t dbroot);
43     uint8_t getTableColumnType();
44     CommandType getCommandType();
45     std::string toString();
46     void createCommand(messageqcpp::ByteStream& bs) const;
47     void runCommand(messageqcpp::ByteStream& bs) const;
48     uint16_t getWidth();
getBOP()49     uint8_t getBOP() const
50     {
51         return fBOP;
52     };
53 
54 private:
55     FilterCommandJL();
56     FilterCommandJL(const FilterCommandJL&);
57 
58     uint8_t  fBOP;
59     execplan::CalpontSystemCatalog::ColType fColType;
60 };
61 
62 };
63 
64 
65 #endif // JOBLIST_FILTERCOMMANDJL_H_
66 
67