|
.
.
.
/// <summary>
/// Get authorization to make calls to the UTS.
/// </summary>
/// <param name="objAppErr">The application error object</param>
/// <returns></returns>
protected string getProxyGrantTicket(ref ToolKit.AppErr objAppErr)
{
objAppErr.Initialize();
string pgt = "";
var svc = new AuthorizationPortTypeService();
try
{
pgt = svc.getProxyGrantTicket(_utsUserName, _utsPassword);
}
catch (Exception ex)
{
objAppErr.AppErrNum = -1;
objAppErr.AppErrMsg = ex.Message;
objAppErr.LoadException(ex);
}
finally
{
svc.Dispose();
}
svc = null;
return pgt;
}
/// <summary>
/// Returns a single use ticket that must be supplied with every call
/// </summary>
/// <param name="objAppErr">The application error object</param>
/// <returns></returns>
protected string getSingleUseTicket(ref ToolKit.AppErr objAppErr)
{
objAppErr.Initialize();
string singleUseTicket = "";
var svc = new AuthorizationPortTypeService();
try
{
singleUseTicket = svc.getProxyTicket(_proxyGrantTicket, "http://umlsks.nlm.nih.gov");
}
catch (Exception ex)
{
objAppErr.AppErrNum = -1;
objAppErr.AppErrMsg = ex.Message;
objAppErr.LoadException(ex);
}
finally
{
svc.Dispose();
}
svc = null;
return singleUseTicket;
}
/// <summary>
/// Returns the current version of the service
/// </summary>
/// <param name="objAppErr">The application error object</param>
/// <returns></returns>
protected string getCurrentUMLSVersion(ref ToolKit.AppErr objAppErr)
{
string currentUMLSVersion = "";
objAppErr.Initialize();
// get single use ticket (Note: every call must have a single use ticket
string singleUseTicket = getSingleUseTicket(ref objAppErr);
if (objAppErr.AppErrNum == 0)
{
var svc = new UMLSKSService();
var request = new CurrentUMLSRequest();
request.casTicket = singleUseTicket;
try
{
currentUMLSVersion = svc.getCurrentUMLSVersion(request);
}
catch (Exception ex)
{
objAppErr.AppErrNum = -1;
objAppErr.AppErrMsg = ex.Message;
objAppErr.LoadException(ex);
}
finally
{
svc.Dispose();
}
svc = null;
}
return currentUMLSVersion;
}
.
.
.
|