00001 #ifndef SELECT_QBOX_H 00002 #define SELECT_QBOX_H 00003 00004 #include "QBox.h" 00005 #include "Table.h" 00006 #include "SQLSelect.h" 00007 00008 BOREALIS_NAMESPACE_BEGIN; 00009 00010 class SelectQBox : public QBox { 00011 private: 00012 ptr<SQLSelect> _sql; 00013 Table *_table; 00014 ptr<SelectQueryHandle> _query_handle; 00015 size_t _output_size; 00016 size_t _query_return_size; 00017 size_t _input_tuple_size; 00018 bool _pass_on_no_results; 00019 00020 protected: 00021 void setupImpl() throw (AuroraException); 00022 void initImpl() throw (AuroraException); 00023 void runImpl(QBoxInvocation&) throw (AuroraException); 00024 00025 AURORA_DECLARE_QBOX(SelectQBox, "select"); 00026 }; 00027 00028 BOREALIS_NAMESPACE_END; 00029 00030 #endif