greenplumn s3common_reader 源码

  • 2022-08-18
  • 浏览 (543)

greenplumn s3common_reader 代码

文件路径:/gpcontrib/gpcloud/include/s3common_reader.h

#ifndef INCLUDE_S3COMMON_READER_H_
#define INCLUDE_S3COMMON_READER_H_

#include "decompress_reader.h"
#include "s3common_headers.h"
#include "s3exception.h"
#include "s3key_reader.h"

class S3CommonReader : public Reader {
   public:
    S3CommonReader() : upstreamReader(NULL), s3InterfaceService(NULL) {
    }

    virtual ~S3CommonReader() {
        this->close();
    }

    virtual void open(const S3Params& params);

    // read() attempts to read up to count bytes into the buffer.
    // Return 0 if EOF. Throw exception if encounters errors.
    virtual uint64_t read(char* buf, uint64_t count);

    // This should be reentrant, has no side effects when called multiple times.
    virtual void close();

    // Used by Mock, DO NOT call it in other places.
    void setS3InterfaceService(S3Interface* s3InterfaceService) {
        this->s3InterfaceService = s3InterfaceService;
    }

   protected:
    Reader* upstreamReader;
    S3Interface* s3InterfaceService;
    S3KeyReader keyReader;
    DecompressReader decompressReader;
};

#endif /* INCLUDE_S3COMMON_READER_H_ */

相关信息

greenplumn 源码目录

相关文章

greenplumn compress_writer 源码

greenplumn decompress_reader 源码

greenplumn gpcheckcloud 源码

greenplumn gpcommon 源码

greenplumn gpreader 源码

greenplumn gpwriter 源码

greenplumn reader 源码

greenplumn restful_service 源码

greenplumn s3bucket_reader 源码

greenplumn s3common_headers 源码

0  赞