Loading cmds/lshal/ListCommand.cpp +42 −32 Original line number Diff line number Diff line Loading @@ -213,30 +213,38 @@ void ListCommand::addLine(TextTable *textTable, const std::string &interfaceName const std::string &serverCmdline, const std::string &address, const std::string &clients, const std::string &clientCmdlines) const { std::vector<std::string> columns; if (mSelectedColumns & ENABLE_INTERFACE_NAME) for (TableColumnType type : mSelectedColumns) { switch (type) { case TableColumnType::INTERFACE_NAME: { columns.push_back(interfaceName); if (mSelectedColumns & ENABLE_TRANSPORT) } break; case TableColumnType::TRANSPORT: { columns.push_back(transport); if (mSelectedColumns & ENABLE_ARCH) } break; case TableColumnType::ARCH: { columns.push_back(arch); if (mSelectedColumns & ENABLE_THREADS) { } break; case TableColumnType::THREADS: { columns.push_back(threadUsage); } if (mSelectedColumns & ENABLE_SERVER_PID) { } break; case TableColumnType::SERVER_ADDR: { columns.push_back(address); } break; case TableColumnType::SERVER_PID: { if (mEnableCmdlines) { columns.push_back(serverCmdline); } else { columns.push_back(server); } } if (mSelectedColumns & ENABLE_SERVER_ADDR) columns.push_back(address); if (mSelectedColumns & ENABLE_CLIENT_PIDS) { } break; case TableColumnType::CLIENT_PIDS: { if (mEnableCmdlines) { columns.push_back(clientCmdlines); } else { columns.push_back(clients); } } break; } } textTable->add(std::move(columns)); } Loading Loading @@ -720,31 +728,31 @@ Status ListCommand::parseArgs(const std::string &command, const Arg &arg) { mVintf = true; } case 'i': { mSelectedColumns |= ENABLE_INTERFACE_NAME; mSelectedColumns.push_back(TableColumnType::INTERFACE_NAME); break; } case 't': { mSelectedColumns |= ENABLE_TRANSPORT; mSelectedColumns.push_back(TableColumnType::TRANSPORT); break; } case 'r': { mSelectedColumns |= ENABLE_ARCH; mSelectedColumns.push_back(TableColumnType::ARCH); break; } case 'p': { mSelectedColumns |= ENABLE_SERVER_PID; mSelectedColumns.push_back(TableColumnType::SERVER_PID); break; } case 'a': { mSelectedColumns |= ENABLE_SERVER_ADDR; mSelectedColumns.push_back(TableColumnType::SERVER_ADDR); break; } case 'c': { mSelectedColumns |= ENABLE_CLIENT_PIDS; mSelectedColumns.push_back(TableColumnType::CLIENT_PIDS); break; } case 'e': { mSelectedColumns |= ENABLE_THREADS; mSelectedColumns.push_back(TableColumnType::THREADS); break; } case 'm': { Loading Loading @@ -788,8 +796,9 @@ Status ListCommand::parseArgs(const std::string &command, const Arg &arg) { return USAGE; } if (mSelectedColumns == 0) { mSelectedColumns = ENABLE_INTERFACE_NAME | ENABLE_SERVER_PID | ENABLE_CLIENT_PIDS | ENABLE_THREADS; if (mSelectedColumns.empty()) { mSelectedColumns = {TableColumnType::INTERFACE_NAME, TableColumnType::THREADS, TableColumnType::SERVER_PID, TableColumnType::CLIENT_PIDS}; } return OK; } Loading @@ -807,3 +816,4 @@ Status ListCommand::main(const std::string &command, const Arg &arg) { } // namespace lshal } // namespace android cmds/lshal/ListCommand.h +1 −1 Original line number Diff line number Diff line Loading @@ -82,7 +82,7 @@ private: NullableOStream<std::ostream> mOut; NullableOStream<std::ofstream> mFileOutput = nullptr; TableEntryCompare mSortColumn = nullptr; TableEntrySelect mSelectedColumns = 0; std::vector<TableColumnType> mSelectedColumns; // If true, cmdlines will be printed instead of pid. bool mEnableCmdlines = false; Loading cmds/lshal/TableEntry.h +8 −10 Original line number Diff line number Diff line Loading @@ -84,18 +84,16 @@ struct Table { using TableEntryCompare = std::function<bool(const TableEntry &, const TableEntry &)>; enum : unsigned int { ENABLE_INTERFACE_NAME = 1 << 0, ENABLE_TRANSPORT = 1 << 1, ENABLE_SERVER_PID = 1 << 2, ENABLE_SERVER_ADDR = 1 << 3, ENABLE_CLIENT_PIDS = 1 << 4, ENABLE_ARCH = 1 << 5, ENABLE_THREADS = 1 << 6, enum class TableColumnType : unsigned int { INTERFACE_NAME, TRANSPORT, SERVER_PID, SERVER_ADDR, CLIENT_PIDS, ARCH, THREADS, }; using TableEntrySelect = unsigned int; enum { NO_PID = -1, NO_PTR = 0 Loading Loading
cmds/lshal/ListCommand.cpp +42 −32 Original line number Diff line number Diff line Loading @@ -213,30 +213,38 @@ void ListCommand::addLine(TextTable *textTable, const std::string &interfaceName const std::string &serverCmdline, const std::string &address, const std::string &clients, const std::string &clientCmdlines) const { std::vector<std::string> columns; if (mSelectedColumns & ENABLE_INTERFACE_NAME) for (TableColumnType type : mSelectedColumns) { switch (type) { case TableColumnType::INTERFACE_NAME: { columns.push_back(interfaceName); if (mSelectedColumns & ENABLE_TRANSPORT) } break; case TableColumnType::TRANSPORT: { columns.push_back(transport); if (mSelectedColumns & ENABLE_ARCH) } break; case TableColumnType::ARCH: { columns.push_back(arch); if (mSelectedColumns & ENABLE_THREADS) { } break; case TableColumnType::THREADS: { columns.push_back(threadUsage); } if (mSelectedColumns & ENABLE_SERVER_PID) { } break; case TableColumnType::SERVER_ADDR: { columns.push_back(address); } break; case TableColumnType::SERVER_PID: { if (mEnableCmdlines) { columns.push_back(serverCmdline); } else { columns.push_back(server); } } if (mSelectedColumns & ENABLE_SERVER_ADDR) columns.push_back(address); if (mSelectedColumns & ENABLE_CLIENT_PIDS) { } break; case TableColumnType::CLIENT_PIDS: { if (mEnableCmdlines) { columns.push_back(clientCmdlines); } else { columns.push_back(clients); } } break; } } textTable->add(std::move(columns)); } Loading Loading @@ -720,31 +728,31 @@ Status ListCommand::parseArgs(const std::string &command, const Arg &arg) { mVintf = true; } case 'i': { mSelectedColumns |= ENABLE_INTERFACE_NAME; mSelectedColumns.push_back(TableColumnType::INTERFACE_NAME); break; } case 't': { mSelectedColumns |= ENABLE_TRANSPORT; mSelectedColumns.push_back(TableColumnType::TRANSPORT); break; } case 'r': { mSelectedColumns |= ENABLE_ARCH; mSelectedColumns.push_back(TableColumnType::ARCH); break; } case 'p': { mSelectedColumns |= ENABLE_SERVER_PID; mSelectedColumns.push_back(TableColumnType::SERVER_PID); break; } case 'a': { mSelectedColumns |= ENABLE_SERVER_ADDR; mSelectedColumns.push_back(TableColumnType::SERVER_ADDR); break; } case 'c': { mSelectedColumns |= ENABLE_CLIENT_PIDS; mSelectedColumns.push_back(TableColumnType::CLIENT_PIDS); break; } case 'e': { mSelectedColumns |= ENABLE_THREADS; mSelectedColumns.push_back(TableColumnType::THREADS); break; } case 'm': { Loading Loading @@ -788,8 +796,9 @@ Status ListCommand::parseArgs(const std::string &command, const Arg &arg) { return USAGE; } if (mSelectedColumns == 0) { mSelectedColumns = ENABLE_INTERFACE_NAME | ENABLE_SERVER_PID | ENABLE_CLIENT_PIDS | ENABLE_THREADS; if (mSelectedColumns.empty()) { mSelectedColumns = {TableColumnType::INTERFACE_NAME, TableColumnType::THREADS, TableColumnType::SERVER_PID, TableColumnType::CLIENT_PIDS}; } return OK; } Loading @@ -807,3 +816,4 @@ Status ListCommand::main(const std::string &command, const Arg &arg) { } // namespace lshal } // namespace android
cmds/lshal/ListCommand.h +1 −1 Original line number Diff line number Diff line Loading @@ -82,7 +82,7 @@ private: NullableOStream<std::ostream> mOut; NullableOStream<std::ofstream> mFileOutput = nullptr; TableEntryCompare mSortColumn = nullptr; TableEntrySelect mSelectedColumns = 0; std::vector<TableColumnType> mSelectedColumns; // If true, cmdlines will be printed instead of pid. bool mEnableCmdlines = false; Loading
cmds/lshal/TableEntry.h +8 −10 Original line number Diff line number Diff line Loading @@ -84,18 +84,16 @@ struct Table { using TableEntryCompare = std::function<bool(const TableEntry &, const TableEntry &)>; enum : unsigned int { ENABLE_INTERFACE_NAME = 1 << 0, ENABLE_TRANSPORT = 1 << 1, ENABLE_SERVER_PID = 1 << 2, ENABLE_SERVER_ADDR = 1 << 3, ENABLE_CLIENT_PIDS = 1 << 4, ENABLE_ARCH = 1 << 5, ENABLE_THREADS = 1 << 6, enum class TableColumnType : unsigned int { INTERFACE_NAME, TRANSPORT, SERVER_PID, SERVER_ADDR, CLIENT_PIDS, ARCH, THREADS, }; using TableEntrySelect = unsigned int; enum { NO_PID = -1, NO_PTR = 0 Loading