#include<string>
#include<iostream>
#include "teagent.h"
#include "teconnection.h"
#include "teexception.h"
#include "teauthuserctx.h"
#include "teauthwinctx.h"
#include "teobject.h"
#include "teadmin_local.h"
#include "teadmin_efefs.h"
#include "teefefs_securefolder.h"
using namespace ERUCES;
using namespace std;
int main()
{
string strServer = "localhost";
long nPort = 5050;
string strUser = "ls";
string strPswd = "password";
try
{
auto_ptr<TEConnection> conn = TEConnection::createInstance(TEConnection::SecureConnection);
auto_ptr<TEUserAuthenticationContext> ctx = TEUserAuthenticationContext::getInstance();
ctx->setUser(strUser);
ctx->setPasswd(strPswd);
ctx->setMode(2);
conn->open(strServer, nPort, *ctx.operator->());
cout << "Connected to " << strServer << " as " << strUser
<< " at port " << nPort << endl;
TEAdminEfefs adminEfefs;
adminEfefs.attachConnection(conn.operator->());
TEObjectContainer cont;
adminEfefs.getSecureFolder(cont);
cout << "Before adding secure folder, number of secure folders = " << cont.size() << endl;
int i;
for (i=0; i < cont.size(); ++i)
{
TEEfefsSecureFolder *secureFolder = (TEEfefsSecureFolder*)cont[i];
cout << endl;
cout << "\tSource: " << secureFolder->getSource() << endl;
cout << "\tDestination: " << secureFolder->getDestination() << endl;
cout << "\tUser: " << secureFolder->getUser() << endl;
}
TEEfefsSecureFolder newSecureFolder;
newSecureFolder.setSource("C:\\Temp");
newSecureFolder.setDestination("C:\\Temp");
adminEfefs.updateSecureFolder(newSecureFolder);
cont.clear();
adminEfefs.getSecureFolder(cont);
cout << "After adding secure folder, number of secure folders = " << cont.size() << endl;
for (i=0; i < cont.size(); ++i)
{
TEEfefsSecureFolder *secureFolder = (TEEfefsSecureFolder*)cont[i];
cout << endl;
cout << "\tSource: " << secureFolder->getSource() << endl;
cout << "\tDestination: " << secureFolder->getDestination() << endl;
cout << "\tUser: " << secureFolder->getUser() << endl;
}
adminEfefs.detachConnection();
conn->close();
cout << "Disconnected from " << strServer << endl;
}
catch (TEException &e)
{
cout << e.getAllMessages().c_str() << endl;
}
catch (...)
{
cout << "Unexpected error" << endl;
}
return 0;
}