#pragma once #include "../../shared/url.h" #include "../../util/util.h" #include <unistd.h> #include <sys/types.h> #include <sys/socket.h> #include <netdb.h> #include <iostream> #include <string.h> #include <string> #include <cassert> #include <openssl/ssl.h> using namespace std; class StreamReader { public: StreamReader ( ) { }; virtual bool request ( ) = 0; virtual bool fillBuffer ( char *buf, size_t buf_size ) = 0; virtual bool checkStatus ( ) = 0; virtual string PageToString ( ) = 0; virtual ParsedUrl * getUrl ( ) =0; virtual void closeReader ( ) = 0; }; //fix interface with Parsed URL to parser //implement getUrl function so parser can just call that //remove stale code from spider.cpp