예제 #1
0
        // Token: 0x06001AC0 RID: 6848 RVA: 0x00064FF8 File Offset: 0x000631F8
        private ServiceResult <EwsRoomType[]> GetAllAvailableRooms()
        {
            UserContext       userContext  = UserContextManager.GetUserContext(base.CallContext.HttpContext, base.CallContext.EffectiveCaller, true);
            QueryFilter       filter       = null;
            AddressLists      addressLists = new AddressLists(base.CallContext.EffectiveCaller.ClientSecurityContext, base.MailboxIdentityMailboxSession.MailboxOwner, userContext);
            ADSessionSettings sessionSettings;

            if (addressLists.AllRoomsAddressList == null)
            {
                filter = new OrFilter(new QueryFilter[]
                {
                    new ComparisonFilter(ComparisonOperator.Equal, ADRecipientSchema.RecipientDisplayType, RecipientDisplayType.ConferenceRoomMailbox),
                    new ComparisonFilter(ComparisonOperator.Equal, ADRecipientSchema.RecipientDisplayType, RecipientDisplayType.SyncedConferenceRoomMailbox)
                });
                sessionSettings = ADSessionSettings.FromOrganizationIdWithAddressListScopeServiceOnly(addressLists.GlobalAddressList.OrganizationId, addressLists.GlobalAddressList.Id);
            }
            else
            {
                sessionSettings = ADSessionSettings.FromOrganizationIdWithAddressListScopeServiceOnly(addressLists.AllRoomsAddressList.OrganizationId, addressLists.AllRoomsAddressList.Id);
            }
            int         lcid        = 0;
            CultureInfo cultureInfo = base.CallContext.AccessingPrincipal.PreferredCultures.FirstOrDefault <CultureInfo>();

            if (cultureInfo != null)
            {
                lcid = cultureInfo.LCID;
            }
            IRecipientSession tenantOrRootOrgRecipientSession = DirectorySessionFactory.Default.GetTenantOrRootOrgRecipientSession(null, null, lcid, true, ConsistencyMode.IgnoreInvalid, null, sessionSettings, 123, "GetAllAvailableRooms", "f:\\15.00.1497\\sources\\dev\\clients\\src\\Owa2\\Server\\Core\\ServiceCommands\\GetRoomsInternal.cs");

            ADRecipient[] rooms = tenantOrRootOrgRecipientSession.Find(null, QueryScope.SubTree, filter, new SortBy(ADRecipientSchema.DisplayName, SortOrder.Ascending), 100);
            return(new ServiceResult <EwsRoomType[]>(GetRooms.GetRoomTypes(rooms, this.GetHashCode()).ToArray()));
        }
예제 #2
0
        private void Page_Load(object sender, System.EventArgs e)
        {
            // Put user code to initialize the page here

            MAPI.Session session = new SessionClass();
            //session.Logon(
            session.GetType().InvokeMember("Logon", BindingFlags.InvokeMethod, null, session, new Object[] { "*****@*****.**", "raghu123", false });
            AddressLists addrs = null;

            try
            {
                addrs = (AddressLists)session.AddressLists;
            }
            catch (Exception ex)
            {
                Response.Write(ex.Message); Response.End();
            }
            int addrCnt = (int)addrs.Count;

            for (int i = 0; i < addrCnt; i++)
            {
                AddressList curAddr = (AddressList)addrs.get_Item(i);
                Response.Write(curAddr.Name + "&nbsp;:" + ((AddressEntry)((AddressEntries)curAddr.AddressEntries).get_Item(0)).Name + "BR>");
            }
        }
예제 #3
0
        public AddressLists GetAddressLists(Address address)
        {
            DataSet      ds    = new DataSet();
            AddressLists lists = new AddressLists();

            try
            {
                paramList.Clear();
                paramList["@countryID"] = address.Country;
                paramList["@stateID"]   = address.State;
                paramList["@cityID"]    = address.City;
                spName          = "spEM_GetAddressLists";
                ds              = db.ExecuteQueryDataset(spName, true, Common.Enums.SQLConnectionNames.EMDB, paramList);
                lists.countries = Utility.ConvertFromDataTable <Country>(ds.Tables[0]);
                lists.states    = Utility.ConvertFromDataTable <State>(ds.Tables[1]);
                lists.cities    = Utility.ConvertFromDataTable <City>(ds.Tables[2]);
                lists.areas     = Utility.ConvertFromDataTable <Areas>(ds.Tables[3]);
            }
            catch
            {
                throw;
            }


            return(lists);
        }
예제 #4
0
        static void Main()
        {
            //Application.Run(new frmCtrlConsumer());
            MAPI.Session session = new SessionClass();
            session.GetType().InvokeMember("Logon", BindingFlags.InvokeMethod, null, session, new Object[] {});
            AddressLists addrs = null;

            try
            {
                addrs = (AddressLists)session.AddressLists;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message); return;
            }
            int    addrCnt = (int)addrs.Count;
            string x       = "";

            for (int i = 1; i <= addrCnt; i++)
            {
                AddressList curAddr = (AddressList)addrs.get_Item(i);
                x += (string)curAddr.Name + ":\n";
                AddressEntries entries  = (AddressEntries)curAddr.AddressEntries;
                int            entryCnt = (int)entries.Count;
                for (int j = 1; j <= entryCnt; j++)
                {
                    AddressEntry curEntry = (AddressEntry)entries.get_Item(j);
                    string       address;
                    try{ address = (string)curEntry.Address; }catch { address = "<null>"; }
                    x += (string)curEntry.Name + ": " + address + " -> " + (int)curEntry.DisplayType + "\n";
                }
            }
            MessageBox.Show(x);
        }
예제 #5
0
        internal static List <State> getStateList(int Id)
        {
            Address adr = new Address();

            adr.Country = Id;
            adr.State   = 0;
            adr.City    = 0;
            adr.Area    = 0;

            AddressLists lists = repository.GetAddressLists(adr);

            return(lists.states);
        }