Skip to content

Commit

Permalink
Review update
Browse files Browse the repository at this point in the history
  • Loading branch information
lordgamez committed Jul 24, 2023
1 parent 2b4605a commit 45c6779
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 34 deletions.
9 changes: 2 additions & 7 deletions controller/MiNiFiController.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -113,10 +113,6 @@ int main(int argc, char **argv) {
}
auto stream_factory_ = minifi::io::StreamFactory::getInstance(configuration);


std::string port_str;
std::string ca_cert;

cxxopts::Options options("MiNiFiController", "MiNiFi local agent controller");
options.positional_help("[optional args]").show_positional_help();

Expand Down Expand Up @@ -151,6 +147,7 @@ int main(int argc, char **argv) {
configuration->get(minifi::Configure::controller_socket_host, socket_data.host);
}

std::string port_str;
if (result.count("port")) {
socket_data.port = result["port"].as<int>();
} else if (socket_data.port == -1 && configuration->get(minifi::Configure::controller_socket_port, port_str)) {
Expand Down Expand Up @@ -189,9 +186,7 @@ int main(int argc, char **argv) {
auto& components = result["c"].as<std::vector<std::string>>();
for (const auto& connection : components) {
if (minifi::controller::clearConnection(socket_data, connection)) {
std::cout << "Sent clear command to " << connection << ". Size before clear operation sent: " << std::endl;
if (!minifi::controller::getConnectionSize(socket_data, std::cout, connection))
std::cout << "Could not connect to remote host " << socket_data.host << ":" << socket_data.port << std::endl;
std::cout << "Sent clear command to " << connection << "." << std::endl;
} else {
std::cout << "Could not connect to remote host " << socket_data.host << ":" << socket_data.port << std::endl;
}
Expand Down
43 changes: 16 additions & 27 deletions libminifi/include/io/AsioStream.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,19 +35,8 @@ class AsioStream : public io::BaseStream {
public:
explicit AsioStream(AsioSocketStreamType&& stream) : stream_(std::move(stream)) {}

/**
* Reads data and places it into buf
* @param buf buffer in which we extract data
* @param buflen
*/
size_t read(std::span<std::byte> buf) override;

/**
* writes value to stream
* @param value value to write
* @param size size of value
*/
size_t write(const uint8_t *value, size_t size) override;
size_t read(std::span<std::byte> source_buffer) override;
size_t write(const uint8_t *target_buffer, size_t size) override;

private:
AsioSocketStreamType stream_;
Expand All @@ -56,37 +45,37 @@ class AsioStream : public io::BaseStream {
};

template<typename AsioSocketStreamType>
size_t AsioStream<AsioSocketStreamType>::write(const uint8_t *value, size_t size) {
if (size == 0) {
size_t AsioStream<AsioSocketStreamType>::read(std::span<std::byte> source_buffer) {
if (source_buffer.empty()) {
return 0;
}

if (IsNullOrEmpty(value)) {
return STREAM_ERROR;
}

asio::error_code err;
auto bytes_written = asio::write(stream_, asio::buffer(value, size), asio::transfer_exactly(size), err);
if (err || bytes_written != size) {
auto read_bytes = stream_.read_some(asio::buffer(source_buffer.data(), source_buffer.size()), err);
if (err) {
return STREAM_ERROR;
}

return bytes_written;
return read_bytes;
}

template<typename AsioSocketStreamType>
size_t AsioStream<AsioSocketStreamType>::read(std::span<std::byte> buf) {
if (buf.empty()) {
size_t AsioStream<AsioSocketStreamType>::write(const uint8_t *target_buffer, size_t size) {
if (size == 0) {
return 0;
}

if (IsNullOrEmpty(target_buffer)) {
return STREAM_ERROR;
}

asio::error_code err;
auto read_bytes = stream_.read_some(asio::buffer(buf.data(), buf.size()), err);
if (err) {
auto bytes_written = asio::write(stream_, asio::buffer(target_buffer, size), asio::transfer_exactly(size), err);
if (err || bytes_written != size) {
return STREAM_ERROR;
}

return read_bytes;
return bytes_written;
}

} // namespace org::apache::nifi::minifi::io

0 comments on commit 45c6779

Please sign in to comment.