Exemplo n.º 1
0
    void callback_before_relations() {
        rel_conn = PQconnectdb(dbConnectionString.c_str());
        if(PQstatus(rel_conn) != CONNECTION_OK) {
            std::cerr << "DB Connection for Relations failed: ";
            std::cerr << PQerrorMessage(rel_conn) << std::endl;
            exit(1);
        }
        sendBegin(rel_conn);

        PGresult *res;
        res = PQexec(rel_conn, "COPY relations (id, version, user_id, tstamp, changeset_id, tags) FROM STDIN DELIMITER ';'");
        if (PQresultStatus(res) != PGRES_COPY_IN) {
            std::cerr << "COMMAND COPY for relations failed: ";
            std::cerr << PQerrorMessage(rel_conn) << std::endl;
            PQclear(res);
            PQfinish(rel_conn);
            PQfinish(relmem_conn);
            exit(1);
        }

        relmem_conn = PQconnectdb(dbConnectionString.c_str());
        if(PQstatus(relmem_conn) != CONNECTION_OK) {
            std::cerr << "DB Connection for Relation Members failed: ";
            std::cerr << PQerrorMessage(relmem_conn) << std::endl;
            exit(1);
        }
        sendBegin(relmem_conn);

        res = PQexec(relmem_conn, "COPY relation_members (relation_id, member_id, member_type, member_role, sequence_id) FROM STDIN DELIMITER ';'");
        if (PQresultStatus(res) != PGRES_COPY_IN) {
            std::cerr << "COMMAND COPY for relation members failed: ";
            std::cerr << PQerrorMessage(relmem_conn) << std::endl;
            PQclear(res);
            PQfinish(rel_conn);
            PQfinish(relmem_conn);
            exit(1);
        }
    }
Exemplo n.º 2
0
    void callback_before_ways() {
        way_conn = PQconnectdb(dbConnectionString.c_str());
        if(PQstatus(way_conn) != CONNECTION_OK) {
            std::cerr << "DB Connection for Ways failed: ";
            std::cerr << PQerrorMessage(way_conn) << std::endl;
            exit(1);
        }

        PGresult *res;
        sendBegin(way_conn);
        res = PQexec(way_conn, "COPY ways (id, version, user_id, tstamp, changeset_id, tags, nodes, linestring) FROM STDIN DELIMITER ';'");
        if (PQresultStatus(res) != PGRES_COPY_IN) {
            std::cerr << "COMMAND COPY for ways failded: ";
            std::cerr << PQerrorMessage(way_conn) << std::endl;
            PQclear(res);
            PQfinish(way_conn);
            exit(1);
        }

        waynode_conn = PQconnectdb(dbConnectionString.c_str());
        if(PQstatus(waynode_conn) != CONNECTION_OK) {
            std::cerr << "DB Connection for way_nodes failed: ";
            std::cerr << PQerrorMessage(waynode_conn) << std::endl;
            exit(1);
        }

        sendBegin(waynode_conn);
        res = PQexec(waynode_conn, "COPY way_nodes (way_id, node_id, sequence_id) FROM STDIN DELIMITER ';'");
        if (PQresultStatus(res) != PGRES_COPY_IN) {
            std::cerr << "COMMAND COPY for way_nodes failded: ";
            std::cerr << PQerrorMessage(waynode_conn) << std::endl;
            PQclear(res);
            PQfinish(way_conn);
            PQfinish(waynode_conn);
            exit(1);
        }
    }
Exemplo n.º 3
0
    void callback_before_nodes() {
        node_conn = PQconnectdb(dbConnectionString.c_str());
        if(PQstatus(node_conn) != CONNECTION_OK) {
            std::cerr << "DB Connection for Nodes failed: ";
            std::cerr << PQerrorMessage(node_conn) << std::endl;
            exit(1);
        }

        PGresult *res;
        sendBegin(node_conn);
        res = PQexec(node_conn, "COPY nodes (id, version, user_id, tstamp, changeset_id, tags, geom) FROM STDIN DELIMITER ';'");
        if (PQresultStatus(res) != PGRES_COPY_IN) {
            std::cerr << "COMMAND COPY for nodes failed: ";
            std::cerr << PQerrorMessage(node_conn) << std::endl;
            PQclear(res);
            PQfinish(node_conn);
            exit(1);
        }
    }
Exemplo n.º 4
0
void FtpServer::sendWrite( const char * s )
{
  sendBegin( s );
  sendWrite();
}