summaryrefslogtreecommitdiffstats
path: root/examples/cpp/Identify.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/cpp/Identify.cpp')
-rw-r--r--examples/cpp/Identify.cpp43
1 files changed, 43 insertions, 0 deletions
diff --git a/examples/cpp/Identify.cpp b/examples/cpp/Identify.cpp
new file mode 100644
index 0000000..dabca15
--- /dev/null
+++ b/examples/cpp/Identify.cpp
@@ -0,0 +1,43 @@
+#include <iostream>
+#include <cpp/OpenWsmanClient.h>
+#include <u/libu.h>
+
+using std::cout;
+
+using namespace WsmanClientNamespace;
+int main(int argc, char* argv[])
+{
+ const char *endpoint, *resource_uri;
+ string out;
+ u_uri_t *uri;
+ if (argc< 2) {
+ fprintf(stderr, "Usage: %s <endpoint>\n", argv[0]);
+ }
+ endpoint= argv[1];
+
+ if (!endpoint) {
+ fprintf(stderr, "endpoint option required\n");
+ return 1;
+ }
+ if (endpoint != NULL)
+ if (u_uri_parse((const char *) endpoint, &uri) != 0 )
+ return 1;
+ OpenWsmanClient *client = new OpenWsmanClient( uri->host,
+ uri->port,
+ uri->path,
+ uri->scheme,
+ "digest",
+ uri->user,
+ uri->pwd);
+ try {
+ out = client->Identify();
+ }
+
+ catch (GeneralWsmanException &e) {
+ printf("GeneralWsmanException:\n");
+ printf("%s\n", e.what());
+
+ }
+ cout << "Identify: " << out << "\n";
+ return 0;
+}