isAuthorizedConnection() public static method

public static isAuthorizedConnection ( MySession mySession ) : string
mySession MySession
return string
Ejemplo n.º 1
0
        public PatientTO getDemographics()
        {
            PatientTO result = new PatientTO();

            string msg = MdwsUtils.isAuthorizedConnection(mySession);

            if (msg != "OK")
            {
                result.fault = new FaultTO(msg);
            }
            else if (String.IsNullOrEmpty(mySession.ConnectionSet.BaseConnection.Pid) || mySession.Patient == null)
            {
                result.fault = new FaultTO("Need to select patient");
            }
            if (result.fault != null)
            {
                return(result);
            }
            try
            {
                result = new PatientTO(getHomeData(mySession.Patient));
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }
            return(result);
        }
Ejemplo n.º 2
0
        public TaggedTextArray getUsersWithOption(string optionName)
        {
            TaggedTextArray result = new TaggedTextArray();

            if (!(MdwsUtils.isAuthorizedConnection(mySession) == "OK"))
            {
                result.fault = new FaultTO("Connections not ready for operation", "Need to login?");
            }
            else if (String.IsNullOrEmpty(optionName))
            {
                result.fault = new FaultTO("Empty Option Name");
            }
            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                OrderedDictionary d = User.getUsersWithOption(mySession.ConnectionSet.BaseConnection, optionName);
                result = new TaggedTextArray(d);
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }
            return(result);
        }
Ejemplo n.º 3
0
        public UserSecurityKeyArray getUserSecurityKeys(string uid)
        {
            UserSecurityKeyArray result = new UserSecurityKeyArray();

            if (!(MdwsUtils.isAuthorizedConnection(mySession) == "OK"))
            {
                result.fault = new FaultTO("Connections not ready for operation", "Need to login?");
            }
            else if (String.IsNullOrEmpty(uid))
            {
                result.fault = new FaultTO("Empty UID");
            }
            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                Dictionary <string, AbstractPermission> d = User.getPermissions(mySession.ConnectionSet.BaseConnection, uid, PermissionType.SecurityKey);
                result = new UserSecurityKeyArray(d);
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }
            return(result);
        }
Ejemplo n.º 4
0
        public TextTO getOrderStatusForPatient(string pid, string orderableItemId)
        {
            TextTO result = new TextTO();

            if (!(MdwsUtils.isAuthorizedConnection(mySession) == "OK"))
            {
                result.fault = new FaultTO("Connections not ready for operation", "Need to login?");
            }
            else if (String.IsNullOrEmpty(pid))
            {
                result.fault = new FaultTO("Empty PID");
            }
            else if (String.IsNullOrEmpty(orderableItemId))
            {
                result.fault = new FaultTO("Empty Orderable Item ID");
            }
            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                string s = Order.getOrderStatusForPatient(mySession.ConnectionSet.BaseConnection, pid, orderableItemId);
                result = new TextTO(s);
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }
            return(result);
        }
Ejemplo n.º 5
0
        //
        public UserArray cprsUserLookup(string sitecode, string target)
        {
            UserArray result = new UserArray();
            string    msg    = MdwsUtils.isAuthorizedConnection(mySession, sitecode);

            if (msg != "OK")
            {
                result.fault = new FaultTO(msg);
            }
            if (result.fault != null)
            {
                return(result);
            }

            if (String.IsNullOrEmpty(sitecode))
            {
                sitecode = mySession.ConnectionSet.BaseSiteId;
            }

            try
            {
                AbstractConnection cxn     = mySession.ConnectionSet.getConnection(sitecode);
                UserApi            api     = new UserApi();
                User[]             matches = api.providerLookup(cxn, new KeyValuePair <string, string>("NAME", target));
                result = new UserArray(matches);
            }
            catch (Exception e)
            {
                result.fault = new FaultTO(e.Message);
            }
            return(result);
        }
Ejemplo n.º 6
0
        public TextTO getVariableValue(string sitecode, string arg)
        {
            TextTO result = new TextTO();
            string msg    = MdwsUtils.isAuthorizedConnection(mySession, sitecode);

            if (msg != "OK")
            {
                result.fault = new FaultTO(msg);
            }
            if (result.fault != null)
            {
                return(result);
            }

            if (sitecode == null)
            {
                sitecode = mySession.ConnectionSet.BaseSiteId;
            }

            try
            {
                AbstractConnection cxn = mySession.ConnectionSet.getConnection(sitecode);
                ToolsApi           api = new ToolsApi();
                string             s   = api.getVariableValue(cxn, arg);
                result = new TextTO(s);
            }
            catch (Exception e)
            {
                result.fault = new FaultTO(e.Message);
            }
            return(result);
        }
Ejemplo n.º 7
0
        public TaggedTextArray getDiscontinueReasons()
        {
            TaggedTextArray result = new TaggedTextArray();

            if (MdwsUtils.isAuthorizedConnection(mySession) == "OK")
            {
                result.fault = new FaultTO("Connections not ready for operation", "Need to login?");
            }
            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                MedsApi          medsApi = new MedsApi();
                IndexedHashtable ht      = medsApi.getDiscontinueReasons(mySession.ConnectionSet);
                return(new TaggedTextArray(ht));
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }
            return(result);
        }
Ejemplo n.º 8
0
        public TaggedTextArray getCrisisNotes(string fromDate, string toDate, int nrpts)
        {
            TaggedTextArray result = new TaggedTextArray();

            string msg = MdwsUtils.isAuthorizedConnection(_mySession);

            if (msg != "OK")
            {
                result.fault = new FaultTO(msg);
            }
            else if (fromDate == "")
            {
                result.fault = new FaultTO("Missing fromDate");
            }
            else if (toDate == "")
            {
                result.fault = new FaultTO("Missing toDate");
            }
            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                NoteApi          api = new NoteApi();
                IndexedHashtable t   = api.getCrisisNotes(_mySession.ConnectionSet, fromDate, toDate, nrpts);
                return(new TaggedTextArray(t));
            }
            catch (Exception e)
            {
                result.fault = new FaultTO(e);
                return(result);
            }
        }
Ejemplo n.º 9
0
        public TaggedTextArray getComplications()
        {
            TaggedTextArray result = new TaggedTextArray();

            String sessionCheck = MdwsUtils.isAuthorizedConnection(_mySession);

            if (!String.Equals(sessionCheck, "OK", StringComparison.CurrentCultureIgnoreCase))
            {
                result.fault = new FaultTO(sessionCheck);
            }

            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                Dictionary <String, String> complications = new RadiologyApi().getComplications(_mySession.ConnectionSet.BaseConnection);
                result = new TaggedTextArray(complications);
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }

            return(result);
        }
Ejemplo n.º 10
0
        public TextTO getNote(string siteId, string noteId)
        {
            TextTO result = new TextTO();

            string msg = MdwsUtils.isAuthorizedConnection(_mySession, siteId);

            if (msg != "OK")
            {
                result.fault = new FaultTO(msg);
            }
            else if (siteId == "")
            {
                result.fault = new FaultTO("Missing siteId");
            }
            else if (noteId == "")
            {
                result.fault = new FaultTO("Missing noteId");
            }
            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                NoteApi api = new NoteApi();
                string  s   = api.getNoteText(_mySession.ConnectionSet.getConnection(siteId), noteId);
                result = new TextTO(s);
            }
            catch (Exception e)
            {
                result.fault = new FaultTO(e);
            }
            return(result);
        }
Ejemplo n.º 11
0
        public TaggedNoteArrays getDischargeSummaries(String fromDate, String toDate, int nNotes)
        {
            TaggedNoteArrays result = new TaggedNoteArrays();

            string msg = MdwsUtils.isAuthorizedConnection(_mySession);

            if (msg != "OK")
            {
                result.fault = new FaultTO(msg);
            }
            else if (fromDate == "")
            {
                result.fault = new FaultTO("Missing fromDate");
            }
            else if (toDate == "")
            {
                result.fault = new FaultTO("Missing toDate");
            }
            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                NoteApi          api = new NoteApi();
                IndexedHashtable t   = api.getDischargeSummaries(_mySession.ConnectionSet, fromDate, toDate, nNotes);
                result = new TaggedNoteArrays(t);
            }
            catch (Exception e)
            {
                result.fault = new FaultTO(e);
            }
            return(result);
        }
Ejemplo n.º 12
0
        public PatientRecordFlagArray getPrfNoteActions(string sitecode, string noteDefinitionIEN)
        {
            PatientRecordFlagArray result = new PatientRecordFlagArray();
            string msg = MdwsUtils.isAuthorizedConnection(_mySession, sitecode);

            if (msg != "OK")
            {
                result.fault = new FaultTO(msg);
            }
            else if (noteDefinitionIEN == "")
            {
                result.fault = new FaultTO("Missing noteDefinitionIEN");
            }
            if (result.fault != null)
            {
                return(result);
            }
            if (sitecode == null)
            {
                sitecode = _mySession.ConnectionSet.BaseSiteId;
            }

            try
            {
                AbstractConnection  cxn   = _mySession.ConnectionSet.getConnection(sitecode);
                PatientRecordFlag[] flags = _api.getPrfNoteActions(cxn, noteDefinitionIEN);
                result = new PatientRecordFlagArray(flags);
            }
            catch (Exception e)
            {
                result.fault = new FaultTO(e.Message);
            }
            return(result);
        }
Ejemplo n.º 13
0
        public TextTO getNoteText(string sitecode, string noteIEN)
        {
            TextTO result = new TextTO();
            string msg    = MdwsUtils.isAuthorizedConnection(_mySession, sitecode);

            if (msg != "OK")
            {
                result.fault = new FaultTO(msg);
            }
            else if (noteIEN == "")
            {
                result.fault = new FaultTO("Missing noteIEN");
            }
            if (result.fault != null)
            {
                return(result);
            }

            if (sitecode == null)
            {
                sitecode = _mySession.ConnectionSet.BaseSiteId;
            }

            try
            {
                AbstractConnection cxn = _mySession.ConnectionSet.getConnection(sitecode);
                result.text = _api.getNoteText(cxn, noteIEN);
            }
            catch (Exception e)
            {
                result.fault = new FaultTO(e.Message);
            }
            return(result);
        }
Ejemplo n.º 14
0
        public TaggedTextArray getNoteTitles(string sitecode, string target, string direction)
        {
            TaggedTextArray result = new TaggedTextArray();
            string          msg    = MdwsUtils.isAuthorizedConnection(_mySession, sitecode);

            if (msg != "OK")
            {
                result.fault = new FaultTO(msg);
            }

            if (sitecode == null)
            {
                sitecode = _mySession.ConnectionSet.BaseSiteId;
            }

            if (direction == "")
            {
                direction = "1";
            }

            try
            {
                AbstractConnection             cxn = _mySession.ConnectionSet.getConnection(sitecode);
                Dictionary <string, ArrayList> x   = _api.getNoteTitles(cxn, target, direction);
                IndexedHashtable t = new IndexedHashtable();
                t.Add(sitecode, x);
                result = new TaggedTextArray(t);
            }
            catch (Exception e)
            {
                result.fault = new FaultTO(e.Message);
            }
            return(result);
        }
Ejemplo n.º 15
0
        public TextTO cancelImagingExam(String examIdentifier, String reasonIen, bool cancelAssociatedOrder, String holdDescription)
        {
            TextTO result = new TextTO();

            String sessionCheck = MdwsUtils.isAuthorizedConnection(_mySession);

            if (!String.Equals(sessionCheck, "OK", StringComparison.CurrentCultureIgnoreCase))
            {
                result.fault = new FaultTO(sessionCheck);
            }

            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                new RadiologyApi().cancelExam(_mySession.ConnectionSet.BaseConnection, examIdentifier, reasonIen, cancelAssociatedOrder, holdDescription);
                result.text = "OK";
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }

            return(result);
        }
Ejemplo n.º 16
0
        public ImagingExamTO registerExam(String orderId,
                                          String examDateTime,
                                          String examCategory,
                                          String hospitalLocation,
                                          String ward,
                                          String service,
                                          String technologistComment)
        {
            ImagingExamTO result = new ImagingExamTO();

            String sessionCheck = MdwsUtils.isAuthorizedConnection(_mySession);

            if (!String.Equals(sessionCheck, "OK", StringComparison.CurrentCultureIgnoreCase))
            {
                result.fault = new FaultTO(sessionCheck);
            }

            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                result.fault = new FaultTO("Not yet implemented");
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }

            return(result);
        }
Ejemplo n.º 17
0
        public PatientArray getPatientsByClinic(string clinicId, string startDate, string stopDate)
        {
            PatientArray result = new PatientArray();

            string msg = MdwsUtils.isAuthorizedConnection(_mySession);

            if (msg != "OK")
            {
                result.fault = new FaultTO(msg);
            }
            else if (String.IsNullOrEmpty(clinicId))
            {
                result.fault = new FaultTO("Missing clinicId");
            }

            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                Patient[] matches = new PatientApi().getPatientsByClinic(_mySession.ConnectionSet.BaseConnection, clinicId, startDate, stopDate);
                result = new PatientArray(matches);
            }
            catch (Exception e)
            {
                result.fault = new FaultTO(e.Message);
            }

            return(result);
        }
Ejemplo n.º 18
0
        public RadiologyCancellationReasonArray getCancellationReasons()
        {
            RadiologyCancellationReasonArray result = new RadiologyCancellationReasonArray();

            String sessionCheck = MdwsUtils.isAuthorizedConnection(_mySession);

            if (!String.Equals(sessionCheck, "OK", StringComparison.CurrentCultureIgnoreCase))
            {
                result.fault = new FaultTO(sessionCheck);
            }

            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                IList <RadiologyCancellationReason> reasons = new RadiologyApi().getCancellationsReasons(_mySession.ConnectionSet.BaseConnection);
                result = new RadiologyCancellationReasonArray(reasons);
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }

            return(result);
        }
Ejemplo n.º 19
0
        public TextArray ddrGetsEntry(string file, string iens, string flds, string flags)
        {
            TextArray result = new TextArray();
            string    msg    = MdwsUtils.isAuthorizedConnection(mySession);

            if (msg != "OK")
            {
                result.fault = new FaultTO(msg);
            }
            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                ToolsApi api      = new ToolsApi();
                string[] response = api.ddrGetsEntry(mySession.ConnectionSet.BaseConnection, file, iens, flds, flags);
                return(new TextArray(response));
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
                return(result);
            }
        }
Ejemplo n.º 20
0
        public OrderTO discontinueAndSignRadiologyOrder(String patientId, String orderIen, String providerDuz, String locationIen, String reasonIen, String eSig)
        {
            OrderTO result       = new OrderTO();
            String  sessionCheck = MdwsUtils.isAuthorizedConnection(_mySession);

            if (!String.Equals(sessionCheck, "OK", StringComparison.CurrentCultureIgnoreCase))
            {
                result.fault = new FaultTO(sessionCheck);
            }

            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                Order mdo = new RadiologyApi().discontinueAndSignOrder(_mySession.ConnectionSet.BaseConnection, patientId, orderIen, providerDuz, locationIen, reasonIen, eSig);
                result = new OrderTO(mdo);
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }
            return(result);
        }
Ejemplo n.º 21
0
        public TaggedOrderArrays getOrdersForPatient()
        {
            TaggedOrderArrays result = new TaggedOrderArrays();

            if (!(MdwsUtils.isAuthorizedConnection(mySession) == "OK"))
            {
                result.fault = new FaultTO("Connections not ready for operation", "Need to login?");
            }
            else if (mySession.Patient == null)
            {
                result.fault = new FaultTO("No patient selected", "Need to select patient");
            }
            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                IndexedHashtable t = Order.getOrdersForPatient(mySession.ConnectionSet);
                result = new TaggedOrderArrays(t);
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }
            return(result);
        }
Ejemplo n.º 22
0
        public TextTO signOrder(String orderId, String providerDuz, String locationIen, String eSig)
        {
            TextTO result       = new TextTO();
            String sessionCheck = MdwsUtils.isAuthorizedConnection(_mySession);

            if (!String.Equals(sessionCheck, "OK", StringComparison.CurrentCultureIgnoreCase))
            {
                result.fault = new FaultTO(sessionCheck);
            }

            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                new RadiologyApi().signOrder(_mySession.ConnectionSet.BaseConnection, orderId, providerDuz, locationIen, eSig);
                result.text = "OK";
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }
            return(result);
        }
Ejemplo n.º 23
0
        public TaggedTextArray getOrderDialogsForDisplayGroup(string displayGroupId)
        {
            TaggedTextArray result = new TaggedTextArray();

            if (!(MdwsUtils.isAuthorizedConnection(mySession) == "OK"))
            {
                result.fault = new FaultTO("Connections not ready for operation", "Need to login?");
            }
            else if (String.IsNullOrEmpty(displayGroupId))
            {
                result.fault = new FaultTO("Empty Display Group ID");
            }
            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                OrderedDictionary d = Order.getOrderDialogsForDisplayGroup(mySession.ConnectionSet.BaseConnection, displayGroupId);
                result = new TaggedTextArray(d);
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }
            return(result);
        }
Ejemplo n.º 24
0
        public List <OrderTypeTO> getOrderableItems(String dialogId)
        {
            List <OrderTypeTO> result = new List <OrderTypeTO>();

            if ("OK" != MdwsUtils.isAuthorizedConnection(_mySession))
            {
                result.Add(new OrderTypeTO(new UnauthorizedAccessException("No active session. You need to login first")));
            }

            if (result.Count > 0)
            {
                return(result);
            }

            try
            {
                IList <OrderType> mdos = new RadiologyApi().getOrderableItems(_mySession.ConnectionSet.BaseConnection, dialogId);
                foreach (OrderType ot in mdos)
                {
                    result.Add(new OrderTypeTO(ot));
                }
            }
            catch (Exception exc)
            {
                result.Add(new OrderTypeTO(exc));
            }

            return(result);
        }
Ejemplo n.º 25
0
        public UserTO userLookup(string duz)
        {
            UserTO result = new UserTO();
            string msg    = MdwsUtils.isAuthorizedConnection(mySession);

            if (String.IsNullOrEmpty(duz))
            {
                result.fault = new FaultTO("Missing DUZ param");
            }
            else if (msg != "OK")
            {
                result.fault = new FaultTO(msg);
            }
            if (result.fault != null)
            {
                return(result);
            }
            try
            {
                AbstractConnection cxn  = mySession.ConnectionSet.BaseConnection;
                UserApi            api  = new UserApi();
                User[]             user = api.userLookup(cxn, new System.Collections.Generic.KeyValuePair <string, string>("DUZ", duz));
                result = new UserTO(user[0]);
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }
            return(result);
        }
Ejemplo n.º 26
0
        public RadiologyOrderDialogTO getRadiologyOrderDialog(String patientId, String dialogId)
        {
            RadiologyOrderDialogTO result = new RadiologyOrderDialogTO();

            if ("OK" != MdwsUtils.isAuthorizedConnection(_mySession))
            {
                result = new RadiologyOrderDialogTO(new UnauthorizedAccessException("No active session. You need to login first"));
            }
            else if (String.IsNullOrEmpty(patientId) || String.IsNullOrEmpty(dialogId))
            {
                result = new RadiologyOrderDialogTO(new ArgumentNullException("Must supply all arguments"));
            }

            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                RadiologyOrderDialog dialog = new RadiologyApi().getRadiologyDialogData(_mySession.ConnectionSet.BaseConnection, patientId, dialogId);
                result = new RadiologyOrderDialogTO(dialog);
            }
            catch (Exception exc)
            {
                result = new RadiologyOrderDialogTO(exc);
            }

            return(result);
        }
Ejemplo n.º 27
0
        public BoolTO hasPermission(string uid, string permissionName)
        {
            BoolTO result = new BoolTO();

            if (!(MdwsUtils.isAuthorizedConnection(mySession) == "OK"))
            {
                result.fault = new FaultTO("Connections not ready for operation", "Need to login?");
            }
            else if (String.IsNullOrEmpty(uid))
            {
                result.fault = new FaultTO("Empty UID");
            }
            else if (String.IsNullOrEmpty(permissionName))
            {
                result.fault = new FaultTO("Empty permission name");
            }
            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                AbstractPermission p = new gov.va.medora.mdo.dao.vista.MenuOption(permissionName);
                bool f = User.hasPermission(mySession.ConnectionSet.BaseConnection, uid, p);
                result = new BoolTO(f);
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }
            return(result);
        }
Ejemplo n.º 28
0
        public TaggedImagingExamArray getImagingExamsByPatient(String patientId)
        {
            TaggedImagingExamArray result = new TaggedImagingExamArray();

            String sessionCheck = MdwsUtils.isAuthorizedConnection(_mySession);

            if (!String.Equals(sessionCheck, "OK", StringComparison.CurrentCultureIgnoreCase))
            {
                result.fault = new FaultTO(sessionCheck);
            }

            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                IList <ImagingExam> exams = new RadiologyApi().getExamsByPatient(_mySession.ConnectionSet.BaseConnection, patientId);
                result = new TaggedImagingExamArray(_mySession.ConnectionSet.BaseSiteId, exams);
            }
            catch (Exception exc)
            {
                result.fault = new FaultTO(exc);
            }

            return(result);
        }
Ejemplo n.º 29
0
        // DON'T SEE A USERLOOKUPBYNAME FUNCTION ON USERAPI
        public TaggedUserArrays lookupMS(string target, string maxRex)
        {
            TaggedUserArrays result = new TaggedUserArrays();
            string           msg    = MdwsUtils.isAuthorizedConnection(mySession);

            if (msg != "OK")
            {
                result.fault = new FaultTO(msg);
            }
            else if (target == "")
            {
                result.fault = new FaultTO("Missing target");
            }
            //else if (!StringUtils.isNumeric(maxRex))
            //{
            //    result.fault = new FaultTO("Non-numeric maxRex");
            //}
            if (result.fault != null)
            {
                return(result);
            }

            try
            {
                KeyValuePair <string, string> kvp = new KeyValuePair <string, string>("NAME", target);
                UserApi          api = new UserApi();
                IndexedHashtable t   = api.userLookup(mySession.ConnectionSet, kvp, maxRex);
                result = new TaggedUserArrays(t);
            }
            catch (Exception e)
            {
                result.fault = new FaultTO(e.Message);
            }
            return(result);
        }
Ejemplo n.º 30
0
        public TaggedOefOifArray getOefOif()
        {
            TaggedOefOifArray result = new TaggedOefOifArray();
            string            msg    = MdwsUtils.isAuthorizedConnection(mySession, null);

            if (msg != "OK")
            {
                result.fault = new FaultTO(msg);
            }
            if (result.fault != null)
            {
                return(result);
            }

            string sitecode = mySession.ConnectionSet.BaseSiteId;

            try
            {
                AbstractConnection cxn = mySession.ConnectionSet.getConnection(sitecode);
                PatientApi         api = new PatientApi();
                OEF_OIF[]          rex = api.getOefOif(cxn);
                result = new TaggedOefOifArray(sitecode, rex);
            }
            catch (Exception e)
            {
                result.fault = new FaultTO(e.Message);
            }
            return(result);
        }