Resumo técnico
Relatório Descritivo da Patente de Invenção para "SISTEMA E MÉTODO PARA APRESENTAÇÃO COMBINADA DE MENSAGENS ELETRÔNICAS LOCALMENTE E REMOTAMENTE ARMAZENADAS".Antecedentes[001] Vários clientes de email modernos proporcionam uma cache local para acesso rápido e off-line às mensagens de email e a outros dados. Tal cache local pode incluir uma cópia completa da caixa de email de um usuário que também é armazenada em um servidor de email. Durante a última década, as quotas de armazenamento de caixa de correio eletrônico têm crescido exponencialmente, e agora têm vários gigabytes de tamanho. Para a maioria dos usuários, existe pouca ou nenhuma utilizada proporcionar acesso off-line aos dados extremamente antigos. Além disso, devido às caixas de correio eletrônico terem se tornado muito grandes, tem se tornado crescentemente de difícil manuseio baixar dados da caixa de correio eletrônico a partir de um servidor de email bem como crescentemente difícil operar em relação a tais dados de forma local sem significativamente ter impacto sobre a performance. Além disso, se o dispositivo no qual o cliente de email está instalado possuir área limitada de armazenamento (como no caso com vários dispositivos móveis atuais), então, a cache local pode consumir uma quantidade inaceitável do espaço disponível de armazenamento.[002] Alguns clientes de email móveis tentam endereçar as questões precedentes por baixar e localmente armazenar somente um subconjunto dos emails de um usuário que estão disponíveis em um servidor de email. Tal subconjunto pode ser definido em termos de uma janela de tempo mutável. Por exemplo, somente emails recebidos durante os últimos sete dias podem ser mantidos em uma cache local a qualquer tempo. Em algumas implementações, o tamanho da janela de tempo pode ser fixo, enquanto em outras implementações, o tamanho da janela de tempo pode ser configurável por um usuário.[003] Apesar de tais clientes de email estarem aptos a limitar os requerimentos de armazenamento da cache local por baixar somente os emails mais recentemente recebidos, estes clientes de email não proporcionam para um usuário indicações visuais ou qualquer informação sobre o estado de mensagens de email antigas que residem somente no servidor de email. Tipicamente, tais mensagens de email mais antigas somente podem ser acessadas por ampliar a janela de tempo (nestas implementações que suportam uma janela de tempo configurável), por fazer uma pesquisa em relação a tais emails mais antigos, ou por baixar de forma incremental mais itens. Neste caso, cópias dos emails mais antigos devem ser armazenadas na cache local, desse modo consumindo espaço extra de armazenamento no dispositivo móvel do usuário.Breve Descrição dos Desenhos/Figuras[004] Os desenhos acompanhantes, os quais são incorporados neste documento e fazem parte do relatório descritivo, ilustram modalidades da presente invenção e juntos com a descrição, adicionalmente servem para explicar os princípios da invenção e para permitir aos versados na(s) técnica(s) relevante(s) construírem e utilizarem a invenção.[005] A Figura 1 é um diagrama de blocos de um sistema ilustrativo que proporciona a apresentação combinada de mensagens eletrônicas localmente armazenadas e remotamente armazenadas de acordo com uma modalidade.[006] A Figura 2 é um diagrama de blocos que representa uma área de vídeo que pode ser utilizada para apresentar mensagens eletrônicas localmente armazenadas e remotamente armazenadas de uma maneira combinada de acordo com uma modalidade.[007] A Figura 3 representa um fluxograma de um método para proporcionar uma apresentação combinada de mensagens eletrônicas localmente armazenadas e remotamente armazenadas de acordo com uma modalidade.[008] A Figura 4 representa um fluxograma de um método para apresentar um estado combinado associado com um contêiner de mensagens eletrônicas localmente armazenadas e remotamente armazenadas de acordo com uma modalidade.[009] A Figura 5 representa um fluxograma de um método adicional para apresenta um estado combinado associado com um contêiner de mensagens eletrônicas localmente armazenadas e remotamente armazenadas de acordo com uma modalidade.[0010] A Figura 6 representa um fluxograma de um método para executar uma pesquisa combinada de mensagens eletrônicas localmente armazenadas e remotamente armazenadas de acordo com uma modalidade.[0011] A Figura 7 representa um fluxograma de um método adicional para executar uma pesquisa combinada de mensagens eletrônicas localmente armazenadas e remotamente armazenadas de acordo com uma modalidade.[0012] A Figura 8 é um diagrama de blocos de um sistema baseado em processador ilustrativo que pode ser utilizado para implementar várias modalidades.[0013] Os aspectos e vantagens da presente invenção irão se tornar mais aparentes a partir da descrição detalhada exposta abaixo quando feita em conjunto com os desenhos, nos quais caracteres de referência iguais identificam elementos correspondentes por todas as partes. Nos desenhos, números de referência iguais geralmente indicam funcionalidade idêntica ou similar e/ou elementos estruturalmente similares. O desenho no qual um elemento aparece primeiro é indicado pelo(s) dígito(s) mais à esquerda no número de referência correspondente.Descrição DetalhadaI. Introdução[0014] A descrição detalhada seguinte se refere aos desenhos acompanhantes que ilustram modalidades ilustrativas da presente invenção. Entretanto, o escopo da presente invenção não está limitado a estas modalidades, mas ao invés disso, é definido pelas reivindicações anexas. Assim, modalidades além destas apresentadas nos desenhos acompanhantes, tais como versões modificadas das modalidades ilustradas, podem, entretanto, se abrangidas pela presente invenção.[0015] Referências no relatório descritivo a "uma modalidade", "a modalidade", "uma modalidade ilustrativa", dentre outras, indicam que a modalidade descrita pode incluir um aspecto, estrutura ou características particular, mas cada modalidade pode não necessariamente incluir o aspecto, estrutura ou característica particular. Além disso, tais frases não estão necessariamente se referindo à mesma modalidade. Adicionalmente, quando um aspecto, estrutura ou característica particular é descrito em conexão com uma modalidade, é sugerido que ele está dentro do conhecimento de pessoas versadas na(s) técnica(s) relevante(s) para implementar tal aspecto, estrutura ou característica em conexão com outras modalidades seja ou não explicitamente descrito.[0016] Modalidades descritas neste documento baixam cópias de um subconjunto de mensagens eletrônicas disponíveis em um depósito remoto para um depósito local do dispositivo de um usuário. Isto permite a um usuário do dispositivo do usuário acessar um subconjunto de suas mensagens eletrônicas mesmo quando o dispositivo do usuário está em um estado off-line. Quando o dispositivo do usuário está em um estado online, modalidades descritas neste documento proporcionam a apresentação combinada de mensagens eletrônicas de modo que um usuário pode simultaneamente visualizar informação sobre as mensagens eletrônicas que foram colocadas em memória cache no depósito local bem como informação sobre mensagens eletrônicas que estão armazenadas somente no depósito remoto. Informação sobre tais mensagens eletrônicas pode ser apresentada para o usuário de uma maneira direta, de modo que é dada para o usuário a impressão de que todas as mensagens eletrônicas são parte de um único repositório unificado, mesmo que, no entanto, a informação sobre e o conteúdo de tais mensagens eletrônicas possa ser obtido a partir de diferentes depósitos. Adicionalmente, quando o dispositivo do usuário está em um estado online, o usuário pode visualizar informação sobre e/ou o conteúdo de mensagens eletrônicas remotamente armazenadas sem requerer que tais mensagens eletrônicas remotamente armazenadas sejam copiadas para o depósito local.[0017] Desde que as modalidades descritas neste documento baixam e armazenam de forma local somente um subconjunto das mensagens eletrônicas de um usuário que estão disponíveis em um depósito remoto, estas modalidades reduzem a quantidade de largura de banda da rede necessária para baixar as mensagens eletrônicas, a quantidade de capacidade de processamento requerida para sincronizar as mensagens eletrônicas localmente armazenadas com o depósito remoto, e a quantidade de espaço de armazenamento consumido pelo depósito local.[0018] Adicionalmente, as modalidades descritas neste documento representam um melhoramento em relação aos clientes convencionais de troca de mensagens eletrônicas que baixam e localmente armazenam somente um subconjunto de mensagens eletrônicas de um usuário armazenadas remotamente, desde que, como discutido na Seção de Antecedentes acima, tais clientes convencionais de troca de mensagens eletrônicas não proporcionam para um usuário informação sobre ou acesso às mensagens eletrônicas que residem somente no depósito remoto. Ao invés disso, para obter acesso às mensagens eletrônicas que residem somente no depósito remoto, tais clientes convencionais de troca de mensagens eletrônicas podem requer que um usuário amplie uma janela de tempo utilizada para determinar quais mensagens eletrônicas são localmente colocadas em memória cache, para executar uma pesquisa em relação a tais emails mais antigos, ou que de forma incremental baixem mais mensagens eletrônicas. Em cada caso, uma mensagem eletrônica remotamente armazenada somente pode ser visualizada no dispositivo do usuário pela cópia da mesma para o depósito local, desse modo consumindo espaço de armazenamento. Em contraste, como citado acima, modalidades descritas neste documento permitem a um usuário visualizar informação sobre e/ou o conteúdo de mensagens eletrônicas remotamente armazenadas sem requerer que tais mensagens eletrônicas remotamente armazenadas sejam baixas para o depósito local.[0019] Modalidades descritas neste documento também são capazes de apresentar um estado combinado associado com um contêiner de mensagens eletrônicas para um usuário de um dispositivo de usuário em um cenário no qual algumas mensagens eletrônicas armazenadas no recipiente são colocadas em memória cache em um depósito local do dispositivo do usuário e algumas das mensagens eletrônicas armazenadas no container ficam disponíveis somente em um depósito remoto. O estado combinado pode compreender, por exemplo, uma contagem de item que descreve um número de mensagens eletrônicas no container possuindo um estado particular (por exemplo, incluída ou não incluída no container, lida ou não lida, sinalizada ou não sinalizada, dentre outros).[0020] Geralmente falando, em uma modalidade na qual o estado combinado compreende uma contagem de item para um container, a contagem de item pode ser determina por pegar a soma de uma contagem de itens locais com uma quantidade delta. A contagem de itens locais representa o número de mensagens eletrônicas armazenadas no depósito local do dispositivo do usuário que estão incluídas no contêiner e possuem o estado particular. A quantidade delta representa uma última diferença conhecida entre uma contagem de itens remotos e a contagem de itens locais, onde a contagem de itens remotos representa um número de mensagem eletrônicas armazenadas no depósito remoto que estão incluídas no contêiner e possuem o estado particular. Por determinar a contagem de itens para o contêiner desta maneira, modalidades descritas neste documento estão aptas a apresentar para o usuário uma contagem de itens atualizada para todo o contêiner mesmo quando o usuário executa alguma ação que altera somente a contagem de itens locais enquanto o dispositivo do usuário está em um estado off-line. Adicionalmente, por determinar a contagem de itens para o contêiner desta maneira, modalidades descritas neste documento estão aptas a apresentar para o usuário uma contagem de itens atualizada durante um processo de sincronização, onde tal contagem de itens atualizada reflete alterações junto à contagem de itens locais resultado de tal processo de sincronização.[0021] Adicionalmente, modalidades descritas neste documento também são capazes de permitir a um usuário de um dispositivo do usuário executar uma pesquisa de mensagens eletrônicas colocadas em memória cache armazenadas em um depósito local do dispositivo do usuário bem como de mensagens eletrônicas armazenadas em um depósito remoto acessível para um servidor de troca de mensagens eletrônicas quando é determinado que o dispositivo do usuário é para ser conectado com o servidor de troca de mensagens eletrônicas. Os resultados da pesquisa obtidos a partir das pesquisas em relação aos depósitos local e remoto podem ser apresentados na mesma GUI. Quando o usuário solicita visualizar o conteúdo de uma mensagem eletrônica que é identificada nos resultados da pesquisa e colocada em memória cache no depósito local, o conteúdo da mensagem eletrônica é obtido a partir do depósito local. Quando o usuário solicita visualizar o conteúdo de uma mensagem eletrônica que é identificada nos resultados da pesquisa e somente está disponível no depósito remoto, o conteúdo da mensagem eletrônica será obtido a partir do depósito remoto, mas não colocado em memória cache no depósito local.II. Sistema Ilustrativo para Apresentação Combinada de Mensagens Eletrônicas[0022] A Figura 1 é um diagrama de blocos de um sistema ilustrativo 100 que proporciona a apresentação combinada de mensagens eletrônicas localmente armazenadas e remotamente armazenadas de acordo com uma modalidade. Como utilizado neste documento, o termo "mensagem eletrônica" é pretendido para amplamente representar qualquer tipo de mensagem ou item de informação que possa ser transmitido em forma eletrônica (isto é, como sinais). Exemplos de mensagens eletrônicas incluem, mas não estão limitados a mensagens de email, mensagens de texto, postagens de microblog, entradas de agenda, tarefas, anotações, contatos, dentre outras.[0023] Como apresentado na Figura 1, o sistema 100 inclui pelo menos um servidor de troca de mensagens eletrônicas 102 e pelo menos um dispositivo do usuário 106 que pode ser comunicativamente conectado com o mesmo via uma rede 104.[0024] O servidor de troca de mensagens eletrônicas 102 é pretendido para representar um dispositivo eletrônico baseado em processador que é configurado para receber comunicação eletrônica a partir e enviar comunicações eletrônicas para várias outras entidades, incluindo outros servidores de troca de mensagens eletrônicas. O servidor de troca de mensagens eletrônicas 102 é adicionalmente configurado para interagir com clientes de troca de mensagens eletrônicas que estão instalados nos dispositivos de usuário (tal como o dispositivo do usuário 106) para permitir aos usuários dos mesmos acessarem mensagens eletrônicas que foram recebidas pelo servidor de troca de mensagens eletrônica 102 e enviarem mensagens eletrônicas para outros dispositivos de usuário via o servidor de troca de mensagens eletrônicas 102. Cópias de mensagens eletrônicas recebidas e enviadas pelo servidor de troca de mensagens eletrônicas podem ser armazenadas no depósito remoto 132. O depósito remoto 132 é pretendido para amplamente representar qualquer dispositivo ou sistema de armazenamento adequado para armazenar cópias de mensagens eletrônicas.[0025] Em uma modalidade, o servidor de troca de mensagens eletrônicas 102 gerencia um repositório separado de comunicações eletrônicas para cada um dos vários usuários, onde cada repositório pode ser armazenado no depósito remoto 132. Cada um dos vários usuários pode acessar pelo menos uma parte de seu repositório por interagir com o servidor de troca de mensagens eletrônicas 102 utilizando um cliente de troca de mensagens eletrônicas adequado. Em uma modalidade na qual as comunicações eletrônicas compreendem emails, tais repositórios podem compreender caixas de correio eletrônico do usuário. Como é conhecida na técnica, uma caixa de correio eletrônico do usuário adicionalmente pode compreender qualquer número de subcaixas de correio eletrônico.[0026] A rede 104 é pretendida para representar qualquer tipo de rede ou combinação de redes adequadas para facilitar comunicação entre dispositivos eletrônicos, tal como o servidor de troca de mensagens eletrônicas 102 e o dispositivo do usuário 106. A rede 104 pode incluir, por exemplo, e sem limitação, uma rede de longa distância, uma rede de área local, uma rede privada, uma rede pública, uma rede de transmissão de pacotes, uma rede comutada por circuitos, uma rede com uso de fios e/ou uma rede sem uso de fios.[0027] O dispositivo do usuário 106 é pretendido para representar um dispositivo eletrônico baseado em processador que é capaz de executar um ou mais componentes de software que estão instalados no mesmo. A título de exemplo somente e sem limitação, o dispositivo do usuário 106 pode compreender um computador pessoal, um computador laptop, um computador tablet, um smartphone, uma televisão inteligente, um console de jogo, um reprodutor pessoal de mídia, um assistente pessoal digital, um dispositivo incorporado, dentre outros.[0028] Como adicionalmente apresentado na Figura 1, o dispositivo do usuário 106 inclui um cliente de troca de mensagens eletrônicas 110 instaladas no mesmo. O cliente de troca de mensagens eletrônicas 110 compreende software que, quando executado pelo dispositivo do usuário 106, interage com o servidor de troca de mensagens eletrônicas 102 para permitir a um usuário extrair, enviar, receber, inspecionar, organizar ou de outro modo gerenciar mensagens eletrônicas. Em uma modalidade na qual as mensagens eletrônicas compreendem mensagens de email, o cliente de troca de mensagens eletrônicas 110 pode compreender um cliente de email, tal como uma versão do MICROSOFT(r) OUTLOOK(r), publicado pela Microsoft Corporation of Redmond, Washington. Entretanto, este exemplo não é pretendido para ser limitativo.[0029] O dispositivo do usuário 106 também inclui um vídeo 112 para o qual os componentes de software instalados podem sintetizar conteúdo gráfico para visualização por um usuário do mesmo. Por exemplo, o cliente de troca de mensagens eletrônicas 110 é configurado para causar que uma interface gráfica com o usuário (GUI) 132 seja sintetizada para o vídeo 112. A GUI 132 inclui o dispositivo pelo qual um usuário pode ativar as várias funções e aspectos do cliente de troca de mensagens eletrônicas 110.[0030] O dispositivo do usuário 106 ainda adicionalmente inclui um depósito local 114, o qual também pode ser referido neste documento como uma cache local. O depósito local 114 é pretendido para amplamente representar qualquer tipo de dispositivo ou sistema de armazenamento para armazenar mensagens eletrônicas no dispositivo do usuário 106. O cliente de troca de mensagens eletrônica 110 é configurado para periodicamente interagir com o servidor de troca de mensagens eletrônicas 102 via a rede 104 para obter cópias de mensagens eletrônicas que estão disponíveis para o cliente de troca de mensagens eletrônicas 110 no depósito remoto 132 e para armazenar tais cópias no depósito local 114. Por exemplo, em uma modalidade na qual as mensagens eletrônicas compreendem emails, o cliente de troca de mensagens eletrônicas 100 pode periodicamente interagir com o servidor de troca de mensagens eletrônicas 102 via a rede 104 para obter cópias de emails a partir de uma caixa de correio eletrônico de um usuário armazenada no depósito remoto 132 e armazenar tal email copiado no depósito local 114. Uma vez que uma cópia de uma mensagem eletrônica tenha sido armazenada no depósito local 14, o cliente de troca de mensagens eletrônicas 110 pode tornar a mensagem eletrônica e a informação com respeito à mesma acessível para um usuário do dispositivo do usuário 106 mesmo quando o dispositivo do usuário 106 não é capaz de se conectar com o servidor de troca de mensagens eletrônicas 102.[0031] Em uma modalidade, o cliente de troca de mensagens eletrônicas 110 e/ou o servidor de troca de mensagens eletrônicas 102 são configurados de modo que somente um subconjunto das mensagens eletrônicas que estão disponíveis para o cliente de troca de mensagens eletrônicas 110 no depósito remoto 132 possa ser baixado para armazenamento no depósito local 114. Por exemplo, em uma modalidade na qual o servidor de troca de mensagens eletrônicas 104 compreende um servidor de email, o depósito remoto 132 pode armazenar uma cópia completa de uma caixa de correio eletrônico de um usuário e o cliente de troca de mensagens eletrônicas 110 pode operar para periodicamente baixar e localmente armazenar cópias somente de um subconjunto das mensagens de email nesta caixa de correio eletrônico.[0032] Várias abordagens podem ser utilizadas para determinar qual subconjunto de mensagens eletrônicas é baixado e armazenado no depósito local 114. Em uma modalidade, uma janela de tempo mutável (também referida neste documento como uma "janela de sincronização") é utilizada. De acordo com tal abordagem, somente mensagens eletrônicas que foram recebidas dentro da janela de tempo mutável são baixadas e armazenadas no depósito local 114. A janela de tempo é dita como sendo "mutável" devido a ela se deslocar para frente no tempo (por exemplo, os últimos 7 dias, os últimos 3 meses, etc.). À medida que janela de tempo muda, mensagens eletrônicas que não estão mais dentro da janela de tempo "ficam velhas" e são removidas do depósito local 114. Várias resoluções temporais podem ser utilizadas para determinar quando a janela de tempo é para ser mudada. Por exemplo, em uma modalidade, a resolução temporal é 1 dia.[0033] Dependendo da implementação, a duração da janela de tempo mutável pode ou não ser configurável por um usuário. Por exemplo, em uma modalidade, o usuário pode interagir com o cliente de troca de mensagens eletrônicas 110 para selecionar uma dentre várias janelas de tempo mutáveis predefinidas, cada uma possuindo uma duração diferente. Em uma implementação específica, o usuário pode selecionar entre uma janela de tempo de 1 mês, 3 meses, 6 meses e 12 meses. Em algumas implementações, o usuário pode selecionar não utilizar uma janela de tempo, caso em que uma cópia de todas as mensagens eletrônicas armazenadas no depósito remoto 132 será baixada e armazenada no depósito local 114. Entretanto, este modo de operação não é necessariamente pertinente às modalidades descritas neste documento lidando com a apresentação combinada de mensagens eletrônicas.[0034] É observado que a descrição de uma janela de tempo mutável como proporcionada acima representa somente um meio pelo qual um subconjunto das mensagens eletrônicas no depósito remoto 132 pode ser selecionado para ser baixado e armazenado no depósito local 114. Outros métodos podem ser utilizados. Adicionalmente, o método utilizado pode variar dependendo do tipo de mensagem eletrônica (por exemplo, se as mensagens eletrônicas representarem dados de agenda, uma janela de tempo mutável pode não ser utilizada).[0035] Como discutido acima, desde que o cliente de troca de mensagens eletrônicas 110 baixa e armazena no depósito local 114 pelo menos algumas das mensagens eletrônicas de um usuário que estão disponíveis no depósito remoto 132, o cliente de troca de mensagens eletrônicas 110 pode permitir a um usuário obter informação sobre e inspecionar o conteúdo de qualquer mensagens eletrônica armazenada no depósito local 114 mesmo quando o dispositivo do usuário 106 é incapaz de se conectar com o servidor de troca de mensagens eletrônicas 102. Adicionalmente, desde que o cliente de troca de mensagens eletrônica 110 pode baixar e armazenar no depósito local 114 somente um subconjunto das mensagens eletrônicas do usuário que estão disponíveis no depósito remoto 132, o cliente de troca de mensagens eletrônicas 110 pode reduzir a quantidade de largura de banda necessária na rede 104 para baixar mensagens eletrônicas, a quantidade de capacidade de processamento do dispositivo do usuário 106 requerida para sincronizar mensagens eletrônicas localmente armazenadas com o depósito remoto 132, e a quantidade de espaço de armazenamento consumido pelo depósito local 114 se comparado com uma implementação na qual todas as mensagens eletrônicas de um usuário disponível no depósito remoto 132 são copiadas para o depósito local 114.[0036] Também como apresentado na Figura 1, o cliente de troca de mensagens eletrônicas 110 inclui lógica de apresentação combinada 122, lógica de estado combinado 124 e lógica de pesquisa combinada 126. Em uma modalidade, cada um destes componentes compreende um módulo de software que é ativado pelo ou faz parte do cliente de troca de mensagens eletrônicas 110.[0037] A lógica de apresentação combinada 122 opera para determinar quando o dispositivo do usuário 106 está conectado com o servidor de troca de mensagens eletrônicas 102. Em resposta a determinar que o dispositivo do usuário 105 está conectado com o servidor de troca de mensagens eletrônicas 102, a lógica de apresentação combinada 122 opera para proporcionar a apresentação combinada de mensagens eletrônicas via a GUI 132 de modo que um usuário possa simultaneamente visualizar informação sobre as mensagens eletrônicas que foram colocadas em memória cache no depósito local 14 bem como informação sobre mensagens eletrônicas que estão armazenadas somente no depósito remoto 132. Informação sobre tais mensagens eletrônicas podem ser apresentadas para o usuário de uma maneira direta, de modo que o usuário tem a impressão de que todas as mensagens eletrônicas são parte de um único repositório unificado, mesmo que, no entanto, a informação sobre e o conteúdo de tais mensagens eletrônicas possam ser obtidos a partir de depósitos diferentes. Adicionalmente, a lógica de apresentação combinada 122 opera de modo que, quando o dispositivo do usuário 106 está conectado com o servidor de troca de mensagens eletrônicas 102, o usuário possa visualizar informação sobre e/ou o conteúdo de mensagens eletrônicas armazenadas no depósito remoto 132 sem requerer que tais mensagens eletrônicas remotamente armazenadas sejam copiadas para o depósito local 14. Detalhes adicionais com respeito à maneira de operação da lógica de apresentação combinada 122 serão proporcionados abaixo na Seção II.A.[0038] A lógica de estado combinado 124 opera para apresentar um estado combinado associado com um contêiner de mensagens eletrônicas para um usuário do dispositivo do usuário 106 em um cenário no qual algumas das mensagens eletrônicas armazenadas no contêiner são colocadas na memória cache no depósito local 114 e algumas das mensagens eletrônicas armazenadas no contêiner ficam disponíveis somente no depósito remoto 132. O estado combinado pode compreender, por exemplo, uma contagem de itens que descreve um número de mensagens eletrônicas no contêiner possuindo um estado particular (por exemplo, incluída ou não incluída no contêiner, lida ou não lida, sinalizada ou não sinalizada, dentre outros).[0039] Geralmente falando, em uma modalidade na qual o estado combinado compreende uma contagem de itens para um contêiner, a lógica de estado combinado 124 pode determinar a contagem de itens por pegar uma soma de uma contagem de itens locais e uma quantidade delta. A contagem de itens locais representa o número de mensagens eletrônicas armazenadas no depósito local 14 que estão incluídas no contêiner e possuem o estado particular. A quantidade delta representa uma última diferença conhecida entre uma contagem de itens remotos e a contagem de itens locais, onde a contagem de itens remotos representa um número de mensagens eletrônicas armazenadas no depósito remoto 132 que estão incluídas no contêiner e possuem o estado particular. Por determinar a contagem de itens para o contêiner desta maneira, a lógica de estado combinado 124 está apta a apresentar para o usuário uma contagem de itens atualizada para todo o contêiner mesmo quando o usuário executa alguma ação que altera somente a contagem de itens locais enquanto o dispositivo do usuário 106 está em um estado off-line. Adicionalmente, por determinar a contagem de itens para o contêiner desta maneira, a lógica de estado combinado 124 está apta a apresentar para o usuário uma contagem de itens atualizada para todo o contêiner durante um processo de sincronização, onde tal contagem de itens atualizada reflete alterações para a contagem de itens locais resultando de tal processo de sincronização. Detalhes adicionais com respeito à maneira de operação da lógica de estado combinado 124 serão proporcionados abaixo na Seção II.B.[0040] A lógica de pesquisa combinada 126 opera para permitir a um usuário do dispositivo 106 executar uma pesquisa de mensagens eletrônicas colocadas em memória cache armazenadas no depósito local 114 bem como de mensagens eletrônicas armazenadas no depósito remoto 132 quando o dispositivo do usuário 106 é determinado como estando conectado com o servidor de troca de mensagens eletrônicas 102. Os resultados da pesquisa obtidos a partir das pesquisas em relação ao depósito local 14 e ao depósito remoto 132 podem ser ambas apresentadas na GUI 132. Quando o usuário solicita visualizar o conteúdo de uma mensagem eletrônica que é identificada nos resultados da pesquisa e colocada em memória cache no depósito local 114, a lógica de pesquisa combinada 126 irá obter o conteúdo da mensagem eletrônica a partir do depósito local 114. Quando o usuário solicita visualizar o conteúdo de uma mensagem eletrônica que é identificada nos resultados da pesquisa e está somente disponível no depósito remoto 132, a lógica de pesquisa combinada 126 irá obter o conteúdo da mensagem eletrônica a partir do depósito remoto 132 via a interação com o servidor de troca de mensagens eletrônicas 102, mas não colocará o conteúdo na memória cache no depósito local 14. Detalhes adicionais com respeito à maneira de operação da lógica de pesquisa combinada 126 serão proporcionados abaixo na Seção II.C.Técnicas de Apresentação Combinada Ilustrativa[0041] A Figura 2 é um diagrama de blocos 200 que é pretendido para demonstrar a maneira na qual a lógica de apresentação combinada 122 opera para proporcionar a apresentação combinada de mensagens eletrônicas via a GUI 132 quando o dispositivo do usuário 106 é determinado como estando conectado com o servidor de troca de mensagens eletrônicas 102.[0042] Na Figura 2, uma área do vídeo 202 da GUI 132 que é gerenciada pela lógica de apresentação combinada 122 geralmente é representada. A área do vídeo 202 pode compreender, por exemplo, uma janela ou painel de visualização dentro da GUI 132 dentro qual a informação sobre as mensagens eletrônicas de um usuário é apresentada. Tal informação pode amplamente incluir qualquer item de informação sobre uma mensagem eletrônica. Por exemplo, em uma modalidade na qual as mensagens eletrônicas compreendem mensagens de email, tal informação pode incluir, mas não está limitada a um remetente da mensagem de email, um assunto da mensagem de email, uma data e/ou hora em que a mensagem de email foi enviada, uma data e/ou hora em que a mensagem de email foi recebida, informação de estado com respeito à mensagem de email (por exemplo, lida, não lida, sinalizada, não sinalizada), dentre outras.[0043] A informação sobre as mensagens eletrônicas exibidas dentro da área do vídeo 202 pode ser organizada de vários modos dependendo da implementação. Por exemplo, tal informação pode ser apresentada na forma de uma tabela ou lista, com informação sobre cada mensagem eletrônica sendo exibida em uma fileira correspondente da tabela ou como um item correspondente na lista. De acordo com outra implementação, a informação sobre as mensagens eletrônicas pode ser apresentada em associação com ícones que representam as mensagens eletrônicas correspondentes. Ainda outras maneiras de apresentação podem ser utilizadas.[0044] A informação sobre as mensagens eletrônicas pode ser armazenada ou de outro modo organizada de acordo com um ou mais critérios definidos pelo sistema e/ou definidos pelo usuário. Por exemplo, a informação sobre as mensagens eletrônicas pode ser classificada baseada na data e na hora da recepção das mensagens eletrônicas. Em uma modalidade na qual as mensagens eletrônicas são apresentadas como uma lista, o uso de tais critérios de classificação pode resultar na informação sobre as mensagens eletrônicas mais recentemente recebidas aparecendo no começo da lista e informação sobre as mensagens eletrônicas mais antigas aparecendo no final da lista. Entretanto, isto é somente um exemplo, e uma ampla variedade de critérios pode ser utilizada para classificar ou de outro modo organizar as informações sobre as mensagens eletrônicas.[0045] Em uma modalidade na qual as mensagens eletrônicas compreendem mensagens de email armazenadas em uma caixa de correio eletrônico que pode incluir subcaixas de correio eletrônico e/ou subpastas, as mensagens de correio eletrônico sobre as quais a informação é exibida na janela do vídeo 202 pode compreender mensagens de email armazenadas em uma caixa de correio eletrônico, subcaixa de correio eletrônico ou subpasta particular.[0046] Como adicionalmente apresentado na Figura 2, uma primeira parte 204 da área do vídeo 202 é utilizada para apresentar informação sobre mensagens eletrônicas que estão dentro de uma janela de sincronização. Como discutido acima, tal janela de sincronização pode ser utilizada para determinar quais mensagens eletrônicas são copiadas a partir do depósito remoto 132 para o depósito local 114. Desde que as mensagens eletrônicas sobre as quais a informação é exibida na primeira parte 204 da área de vídeo 202 estão armazenadas no depósito local 14, em uma modalidade, a lógica de apresentação combinada 122 obtém a informação da mensagem eletrônica que é exibida dentro da primeira parte 204 da área do vídeo 202 a partir do depósito local 114 ao invés do que a partir do depósito remoto 132. Tais dados podem ser ditos como estando disponíveis "off-line" como denotado na Figura 2.[0047] Como também apresentado na Figura 2, uma segunda parte 206 da área do vídeo 202 é utilizada para apresentar informações sobre mensagens eletrônicas que se situam fora da janela de sincronização e assim, não estão armazenadas no depósito local 114. Desde que as mensagens eletrônicas sobre as quais a informação é exibida na segunda parte 206 da área do vídeo 202 não estão armazenadas no depósito local 114, em uma modalidade, a lógica de apresentação combinada 122 obtém a informação da mensagem eletrônica que é exibida dentro da segunda parte 206 da área do vídeo 202 a partir do depósito remoto 132 via a interação dentro do servidor de troca de mensagens eletrônicas 102 quando é determinado que o dispositivo do usuário 106 está conectado com o servidor de troca de mensagens eletrônicas 102. Tais dados podem ser ditos como estando disponíveis "off-line" como denotado na Figura 2[0048] Por simultaneamente apresentar informação sobre mensagens eletrônicas que estão localmente colocadas em memória cache no depósito local 114 e informação sobre mensagens eletrônicas que estão remotamente armazenadas no depósito remoto 132 na mesma área do vídeo 202 como apresentado na Figura 2, a lógica de apresentação combinada 122 pode proporcionar para um usuário a impressão de que todas as mensagens eletrônicas são parte de um único repositório unificado, mesmo que, no entanto, a lógica de apresentação combinada 122 possa obter a informação sobre e o conteúdo de tais mensagens eletrônicas a partir de depósitos diferentes. Dito de outra maneira, a lógica de apresentação combinada 122 pode proporcionar para o usuário a percepção de que ele tem acesso a todas as mensagens eletrônicas armazenadas no depósito remoto 132 mesmo que, no entanto, a lógica de apresentação combinada 122 possa obter algumas das mensagens eletrônicas e informação sobre estas mensagens eletrônicas a partir do depósito local 114.[0049] Para obter este efeito de combinação, a lógica de apresentação combinada 122 pode apresentar informação sobre mensagens eletrônicas localmente armazenadas e remotamente armazenadas essencialmente da mesma forma e/ou maneira, de modo que o usuário não pode facilmente determinar quais mensagens eletrônicas estão armazenadas localmente e quais estão armazenadas remotamente. Entretanto, em uma modalidade alternativa, algum tipo de indicação visual pode ser proporcionado, o qual pode ser utilizado para distinguir mensagens eletrônicas localmente armazenadas de mensagens eletrônicas remotamente armazenadas.[0050] Em algumas modalidades, para cada mensagem eletrônica sobre a qual informação é apresentada na área de vídeo 202, também é apresentado um meio pelo qual um usuário pode causar que o conteúdo de tal mensagem eletrônica seja apresentado na GUI 132. Por exemplo, o meio pode compreender um componente que é apresentado em associação com a informação sobre cada mensagem eletrônica que, quando sofre uma interação com usuário, causa que o conteúdo desta mensagem eletrônica seja exibido dentro da GUI 132. Por exemplo, em uma modalidade na qual informação sobre cada mensagem eletrônica é exibida como um item em uma lista, um usuário pode ser habilitado a visualizar o conteúdo de uma mensagem eletrônica por clicar no item correspondente na lista. Ainda outros componentes de interface com o usuário podem ser utilizados para facilitar a visualização seletiva dos conteúdos de uma mensagem eletrônica sobre a qual informação é apresentada na área do vídeo 202.[0051] Adicionalmente de acordo com a modalidade ilustrativa apresentada na Figura 2, uma vez que um usuário tenha selecionado uma mensagem eletrônica para visualização, a lógica de apresentação combinada 122 irá obter o conteúdo da mensagem eletrônica e exibir tal conteúdo dentro da GUI 132. Se uma cópia da mensagem eletrônica selecionada for armazenada no depósito local 114, então a lógica de apresentação combinada 122 irá obter o conteúdo da mensagem eletrônica a partir do armazenamento local 114. Entretanto, se não existir cópia da mensagem eletrônica selecionada armazenada no depósito local 114 (isto é, a mensagem eletrônica selecionada está fora da janela de sincronização), então a lógica de apresentação combinada 122 irá obter o conteúdo da mensagem eletrônica a partir do depósito remoto 132 via a interação com o servidor de troca de mensagens eletrônicas 102. Neste último caso, a lógica de apresentação combinada 122 não irá armazenar uma cópia da mensagem eletrônica remotamente armazenada no depósito local 114 como parte do processo de apresentação. Ou seja, apesar de o conteúdo da mensagem eletrônica remotamente armazenada poder ser temporariamente colocado em memória temporária dentro da memória do dispositivo do usuário 106 para facilitar a exibição do mesmo, uma vez que o usuário tenha fechado a parte da GUI 1342 que é utilizada para visualizar o conteúdo da mensagem eletrônica remotamente armazenada, tais dados colocados em memória temporária são descartados. Obviamente, é possível que em algumas situações (por exemplo, por razões de performance), a lógica de apresentação combinada 122 possa causar que uma cópia da mensagem eletrônica remotamente armazenada seja armazenada dentro do depósito local 114.[0052] Em uma modalidade, a lógica de apresentação combinada 122 pode inicialmente somente apresentar informação sobre mensagens eletrônicas que se situem dentro da janela de sincronização dentro da área do vídeo 202 mesmo que, no entanto, tenha sido determinado que o dispositivo do usuário 106 está conectado com o servidor de troca de mensagens eletrônicas 102. Adicionalmente de acordo com uma modalidade, a lógica de apresentação combinada 122 pode proporcionar um componente dentro da GUI 132 com o qual um usuário pode interagir para causar que a informação com respeito às mensagens eletrônicas se situando fora da janela de sincronização também seja exibida dentro da área do vídeo 202 de uma maneira combinada como descrita acima. Tal componente interativo pode incluir ou ser acompanhado por uma indicação visual de sua função. Por exemplo, tal componente interativo pode incluir ou ser acompanhado por texto dizendo "Existem mais mensagens no servidor, por favor clique aqui para visualizar as mesmas", "Clique aqui para ver mais mensagens", ou alguma coisa parecida. Entretanto, estes são meramente exemplos e não são pretendidos para ser limitativos.[0053] É observado que a representação da área do vídeo e 202 foi proporcionada somente a título de ilustração. A área do vídeo 202 pode ser de qualquer tamanho ou formato dependendo da implementação. Adicionalmente, toda a área do vídeo 202 pode não ser visualizável ao mesmo tempo dentro da GUI 132 e/ou do vídeo 12 e rolamento ou outros mecanismos similares conhecidos na técnica podem ser utilizados para visualizar partes selecionadas da área do vídeo 202.[0054] Adicionalmente, apesar de a Figura 2 pode parecer sugerir que a informação sobre as mensagens eletrônicas que estão incluídas dentro da janela de sincronização são apresentadas como uma unidade contígua que é separada da informação sobre as mensagens eletrônicas que não estão dentro da janela de sincronização, é totalmente possível que tal informação possa ser misturada por toda a área de vídeo 202. Poro exemplo, em uma modalidade na qual a informação é apresentada como uma lista, a primeira mensagem eletrônica sobre a qual informação é apresentada na lista pode ser fora da janela de sincronização, a segunda mensagem eletrônica sobre a qual informação é apresentada na lista pode estar dentro da janela de sincronização, e a terceira informação eletrônica sobre a qual informação é apresentada na lista pode estar fora da janela de sincronização. Dito de outra maneira, as partes 204 e 206 da área do vídeo 202 podem ser misturadas ou mescladas. Isto pode ocorrer, por exemplo, devido à maneira na qual tal informação é classificada ou por outras razões.[0055] A Figura 3 representa um fluxograma 300 de um método para proporcionar uma apresentação combinada de mensagens eletrônicas localmente armazenadas e remotamente armazenadas de acordo com uma modalidade. O método do fluxograma 300 pode ser executado, por exemplo, pela lógica de apresentação combinada 122 como descrita acima com referência ao sistema 100 da Figura 1. Entretanto, o método não está limitado a esta modalidade e pode ser totalmente implementado por outros componentes ou sistemas.[0056] Como apresentado na Figura 3, o método do fluxograma 300 começa na etapa 302, na qual informação com respeito a uma ou mais mensagens eletrônicas é exibida em uma GUI sintetizada em um vídeo do dispositivo de um usuário, onde os conteúdos da uma ou mais primeiras mensagens eletrônicas são armazenados em um depósito local do dispositivo do usuário. Por exemplo, esta etapa pode acarretar exibir informação com respeito às mensagens eletrônicas dentro de uma janela de sincronização para a GUI 132 sintetizada junto ao vídeo 112 do dispositivo do usuário 106, onde tais mensagens eletrônicas são armazenadas no depósito local 114 do dispositivo do usuário 106.[0057] Na etapa 304, é feita uma determinação quanto a se o dispositivo do usuário está conectado com um servidor de troca de mensagens eletrônicas. Por exemplo, esta etapa pode acarretar determinar se o dispositivo do usuário 106 está conectado com o servidor de troca de mensagens eletrônicas 106. Vários métodos podem ser utilizados para determinar se tal conexão existe, incluindo, mas não limitado a requerer uma troca de mensagens entre o dispositivo do usuário 106 e o servidor de troca de mensagens eletrônicas 102 ou simplesmente determinar que o dispositivo do usuário 106 possui uma conexão de trabalho com a rede 104.[0058] Na etapa 306, em resposta a pelo menos determinar que o dispositivo do usuário está conectado com o servidor de troca de mensagens eletrônicas, informação com respeito a uma ou mais mensagens eletrônicas é exibida na GUI simultaneamente com a informação com respeito as uma ou mais primeiras mensagens eletrônicas, onde os conteúdos da uma ou mais segundas mensagens eletrônicas são armazenados em um depósito remoto acessível para o servidor de troca de mensagens eletrônicas, mas não no depósito local. Por exemplo, esta etapa pode acarretar, em resposta a pelo menos determinar que o dispositivo do usuário 106 está conectado com o servidor de troca de mensagens eletrônicas 102, exibir informação com respeito às mensagens eletrônicas não armazenadas dentro de uma janela de sincronização junto à GUI 132 sintetizada junto ao vídeo 112 do dispositivo do usuário 106, onde tais mensagens eletrônicas são armazenadas no depósito remoto 132 acessível para o servidor de troca de mensagens eletrônicas 102, mas não no depósito local 114.[0059] Em uma modalidade, o método do fluxograma 300 pode adicionalmente compreender proporcionar um componente de interface com o usuário dentro da GUI com o qual o usuário pode interagir para causar que a informação com respeito a uma ou mais segundas mensagens eletrônicas seja exibida na GUI simultaneamente com informação com respeito a uma ou mais primeiras mensagens eletrônicas. Adicionalmente de acordo com tal modalidade, a etapa 306 pode ser executada em resposta a pelo menos determinar que o dispositivo do usuário está conectado com o servidor de troca de mensagens eletrônicas e que o usuário interagiu com o componente de interface com o usuário. Como discutido acima com referência à Figura 2, tal componente de interface com o usuário pode incluir ou ser acompanhado por uma indicação visual de sua função. Por exemplo, tal componente interativo pode incluir ou ser acompanhado por texto declarando "Existem mais mensagens no servidor, por favor, clique aqui para ver as mesmas", "Clique aqui para ver mais mensagens" ou alguma do tipo.[0060] Em uma modalidade adicional, o método do fluxograma 300 também pode compreender proporcionar um componente de interface com o usuário dentro da GUI com o qual o usuário interage para causar que os conteúdo de uma mensagem selecionada dentre a uma ou mais primeiras mensagens eletrônicas seja exibido na GUI e então, em resposta a determinar que o usuário interagiu com o componente de interface com o usuário, obter os conteúdo da mensagem selecionada dentre a uma ou mais primeiras mensagens eletrônicas a partir do depósito local para exibição na GUI.[0061] Em uma modalidade adicional, o método do fluxograma 300 também pode compreender proporcionar um componente de interface com o usuário dentro da GUI com o qual o usuário interage para causar que o conteúdo de uma mensagem selecionada dentre a uma ou mais segundas mensagens eletrônicas seja exibido na GUI e então, em resposta a determinar que o usuário interagiu com o componente de interface com o usuário, obter o conteúdo da mensagem selecionada dentre a uma ou mais segundas mensagens eletrônicas a partir do depósito remoto para exibição na GUI sem salvar uma cópia do conteúdo da mensagem selecionada dentre a uma ou mais segundas mensagens eletrônicas no depósito local.Técnicas Ilustrativas para Apresentação de Informação de Estado Combinado[0062] A Figura 4 representa um fluxograma 400 de um processo pelo qual a lógica de estado combinado 124 pode operar para apresentar um estado combinado associado com um contêiner de mensagens eletrônicas para um usuário do dispositivo do usuário 106 em um cenário no qual algumas das mensagens eletrônicas armazenadas no contêiner são colocadas em memória cache no depósito local 114 e algumas das mensagens eletrônicas armazenadas no contêiner estão disponíveis somente no depósito remoto 132. O contêiner pode compreender, por exemplo, uma pasta que é utilizada para armazenar todas ou um subconjunto de mensagens eletrônicas de um usuário. O método do fluxograma 400 é focado sobre a maneira na qual o estado combinado é primeiro apresentado para o usuário após o cliente de troca de mensagens eletrônicas 110 ser ativado. No método do fluxograma 400, o estado combinado compreende uma contagem de itens que descreve um número de mensagens eletrônicas no contêiner possuindo um estado particular. Tal estado particular pode compreender, por exemplo, e sem limitação: incluída ou não incluída no contêiner, lida ou não lida, sinalizada ou não sinalizada, dentre outros.[0063] Somente para propósito de ilustração, o método do fluxograma 400 será agora descrito com referência aos vários componentes do sistema 100 como descrito acima com referência à Figura 1. Entretanto, os versados na técnica(s) relevante irão apreciar que o método pode ser igualmente implementado por outros componentes ou sistemas.[0064] Como apresentado na Figura 4, o método do fluxograma 400 começa na etapa 402, na qual o cliente de troca de mensagens eletrônicas 110 é iniciado. Dependendo da implementação, esta etapa pode ocorre de vários modos. Por exemplo, esta etapa pode ocorrer quando um usuário do dispositivo do usuário 106 ativa o cliente de troca de mensagens eletrônicas 110 via interação com um sistema operacional do dispositivo do usuário 106 ou via algum outro componente do mesmo.[0065] Após a etapa 402, o controle flui para a etapa 404, durante a qual a lógica de estado combinado 124 carrega uma ou mais contagens de itens locais associados com um contêiner, onde tais contagens de itens locais são armazenadas no armazenamento local do dispositivo do usuário 106 (por exemplo, depósito local 114). De acordo com este método, uma contagem de itens locais compreende uma representação de um número de mensagens eletrônicas armazenadas no depósito local 114 que estão incluídas no contêiner e possuem um estado particular. As contagens de itens locais podem ser mantidas para diferentes tipos de estado. Por exemplo, para um dado contêiner, uma contagem de itens locais pode ser mantida, a qual representa: um número de mensagens eletrônicas no contêiner que estão armazenadas no depósito local 114, um número de mensagens eletrônicas no contêiner que são lidas ou não lidas e estão armazenadas no depósito local 114, um número de mensagens eletrônicas que estão sinalizadas ou não sinalizadas e armazenadas no depósito local 114, e assim por diante.[0066] Após a etapa 404, o controle flui para a etapa 406 durante a qual a lógica de estado combinado 126 carrega uma ou mais quantidades delta associadas com um contêiner, onde tais quantidades delta são armazenadas no armazenamento local do dispositivo do usuário 106 (por exemplo, depósito local 114). De acordo com este método, uma quantidade delta representa uma última diferença conhecida entre uma contagem de itens remotos e uma contagem de itens locais para o contêiner, onde a contagem de itens remotos representa um número de mensagens eletrônicas armazenadas no depósito remoto 132 que estão incluídas no contêiner e possuem um estado particular.[0067] Após a etapa 406, o controle flui para a etapa 408, durante a qual a lógica de estado combinado 124 calcula contagens de itens para o contêiner por somar cada contagem de itens locais carregada durante a etapa 404 com uma quantidade delta correspondente carregada durante a etapa 406. Por exemplo, esta etapa pode acarretar adicionar uma contagem de itens locais que especifica o número total de itens incluídos no contêiner e armazenados no depósito local 114 com uma quantidade delta que especifica a última diferença conhecida entre o número total de itens incluídos no contêiner e armazenados no depósito remoto 132 e a contagens de itens locais. Como outro exemplo, esta etapa pode acarretar adicionar uma contagem de itens locais que especifica o número total de itens não lidos incluídos no contêiner e armazenados no depósito local 114 com uma quantidade delta que especifica a última diferença conhecida entre o número total de itens não lidos incluído no contêiner e armazenados no depósito remoto 132 e a contagem de itens locais.[0068] Durante a etapa 408, a lógica de estado combinado 124 também apresenta as contagens de itens assim calculadas para a GUI 132 de modo que elas podem ser visualizadas por um usuário do dispositivo 106. Esta etapa pode compreender exibir as contagens de itens em uma localização ou de uma maneira que indica que tais contagens de itens correspondem ao contêiner para o qual elas foram calculadas (por exemplo, próximo a uma representação icônica do contêiner, em uma barra de status de um painel de navegação que exibe informação sobre mensagens eletrônicas no contêiner, ou coisa parecida).[0069] Após a etapa 408, o controle flui para a etapa de decisão 410, durante a qual a lógica de estado combinado 124 determina se o dispositivo do usuário 106 está conectado com o servidor de troca de mensagens eletrônicas 102 ou não. Vários métodos podem ser utilizados para determinar se tal conexão existe, incluindo, mas não limitado a requerer uma troca de mensagens entre o dispositivo do usuário 106 e o servidor de troca de mensagens eletrônicas 102 ou simplesmente determinar que o dispositivo do usuário 106 possui uma conexão de trabalho com a rede 104.[0070] Como apresentado na Figura 4, se for determinado durante a etapa de decisão 406 que o dispositivo do usuário 106 não está conectado com o servidor de troca de mensagens eletrônicas 102, então o controle retorna para a etapa 408, durante a qual a lógica de estado combinado 126 continua a apresentar as contagens de itens para o contêiner como uma soma das contagens de itens locais para o contêiner com as quantidades delta correspondentes obtidas durante a etapa 406. É observado que enquanto o dispositivo do usuário 106 está off-line, as contagens de itens locais carregadas durante a etapa 404 podem ser atualizadas como resultado da execução de qualquer uma dentre várias ações por um usuário do dispositivo 106, como será discutido abaixo com referência ao fluxograma 500 da Figura 5. Assim, as contagens de itens para o contêiner que são exibidas durante a etapa 408 enquanto o dispositivo do usuário 106 está off-line serão o total das contagens de itens locais mais atuais para o contêiner (como influenciadas pelas atividades off-line do usuário) mais as quantidades delta correspondentes obtidas durante a etapa 406. É observado que, em algumas modalidades, quando a lógica de estado combinado 124 determina que o dispositivo do usuário 106 não está conectado com o servidor de troca de mensagens eletrônicas 102 e que a quantidade delta para um contêiner particular é maior do que zero (indicando que existem mensagens eletrônicas disponíveis no depósito remoto 132 que não estão colocadas em memória cache no depósito local 114), então a lógica de estado combinado 124 pode causar que um indicador seja apresentado, o qual notifica um usuário de que mensagens eletrônicas adicionais estão disponíveis no depósito remoto 132. Por exemplo, tal indicador pode compreender texto sintetizado na GUI 132 que declara "Existem mais itens - se conecte com o servidor para ver os mesmos", apesar de isto ser meramente um exemplo. Adicionalmente de acordo com tal modalidade, quando a quantidade delta para um contêiner particular é zero (indicando que todas as mensagens eletrônicas disponíveis no depósito remoto 132 estão colocadas em memória cache no depósito local 114), nenhuma tal indicação pode ser apresentada.[0071] Entretanto, se for determinado durante a etapa de decisão 410 que o dispositivo do usuário 106 está conectado com o servidor de troca de mensagens eletrônicas 102, então o controle flui para a etapa 412, durante a qual um processo de sincronização é iniciado, o qual é pretendido para sincronizar o estado das mensagens eletrônicas armazenadas no depósito local 114 com das mensagens eletrônicas armazenadas no depósito remoto 132. Tal processo de sincronização é executado devido ao estado das mensagens eletrônicas armazenadas no depósito local 114 e/ou no depósito remoto 132 poder ter alterado (e assim, se tornado não sincronizado) enquanto o dispositivo do usuário 106 estava off-line ou enquanto o cliente de troca de mensagens eletrônicas 110 não estava funcionando. Por exemplo, o usuário pode ter alterado o estado de uma ou mais mensagens eletrônicas armazenadas no depósito local 14 enquanto o dispositivo do usuário 106 estava off-line ou enquanto o cliente de troca de mensagens eletrônicas 110 não estava funcionando. Como outro exemplo, o servidor de troca de mensagens eletrônica 102 pode ter alterado o estado de uma ou mais mensagens eletrônicas disponíveis para o cliente de troca de mensagens eletrônicas 110 e armazenadas no depósito remoto 132 enquanto o dispositivo do usuário 106 estava off-line ou enquanto o cliente de troca de mensagens eletrônicas 110 não estava funcionando. Tal processo de sincronização também pode ser utilizado para remover mensagens eletrônicas do depósito local 114 que ficaram fora de uma janela de sincronização.[0072] Enquanto o processo de sincronização está sendo executado, a lógica de estado combinado 124 irá continuar a exibir as contagens de itens para um contêiner como uma soma das contagens de itens locais para o contêiner com as quantidades deltas correspondentes obtidas durante a etapa 406. É possível que enquanto o processo de sincronização está sendo executado, as contagens de itens locais irão alterar devido a tal processo de sincronização (por exemplo, devido à adição de novas mensagens eletrônicas para o depósito local 114). Assim, as contagens de itens para o contêiner que são exibidas enquanto a sincronização está ocorrendo serão o total das contagens de itens locais mais atuais para o contêiner (como influenciadas pelo processo de sincronização) mais as quantidades delta correspondentes obtidas durante a etapa 406.[0073] Como apresentado na etapa de decisão 414, uma vez que o processo de sincronização iniciado durante a etapa 412 seja determinado como estando completo, o controle flui para a etapa 416. Durante a etapa 416, a lógica de estado combinado 124 obtém novas contagens de itens remotos e novas contagens de itens locais para o contêiner, à medida que tais contagens podem ter alterado como resultado do processo de sincronização. Durante a etapa 416, a lógica de estado combinado 124 também calcula novas quantidades delta para o contêiner por determinar a diferença entre cada nova contagem de itens remotos e cada nova contagem de itens locais correspondente. Durante esta etapa, a lógica de estado combinado 124 também armazena as quantidades delta mais recentemente calculadas no armazenamento local do dispositivo do usuário 106, desse modo substituindo as quantidades delta anteriormente calculadas pelas quantidades delta mais recentemente calculadas.[0074] Após a etapa 416, o controle flui para a etapa 418, durante a qual a lógica de estado combinado 124 calcula contagens de itens para o contêiner por somar cada contagem de itens locais obtida durante a etapa 416 com uma quantidade delta correspondente calculada durante esta etapa. Durante a etapa 418, a lógica de estado combinado 124 também apresenta as contagens de itens assim calculadas junto à GUI 132 de modo que elas podem ser vistas por um usuário do dispositivo do usuário 106.[0075] A Figura 5 representa um fluxograma 500 de um processo adicional pelo qual a lógica de estado combinado 124 pode operar para apresentar um estado combinado associado com um contêiner de mensagens eletrônicas para um usuário do dispositivo do usuário 106 em um cenário no qual algumas das mensagens eletrônicas armazenadas no contêiner são colocadas em memória cache no depósito local 14 e algumas das mensagens eletrônicas armazenadas no contêiner estão disponíveis no depósito remoto 132. O método do fluxograma 500 é focado na maneira na qual o estado combinado é apresentado após o usuário ter executado uma ação via o cliente de troca de mensagens eletrônica 110 que altera o estado de uma mensagem eletrônica. Como no caso do fluxograma 400, o estado combinado compreende uma contagem de itens que descreve um número de mensagens eletrônicas no contêiner possuindo um estado particular.[0076] Somente para o propósito de ilustração, o método do fluxograma 500 será agora descrito com referência aos vários componentes do sistema 100 como descrito acima com referência à Figura 1. Entretanto, os versados na(s) técnica(s) relevante(s) irão apreciar que o método pode ser igualmente implementado por outros componentes e sistemas.[0077] Como apresentado na Figura 5, o método do fluxograma 500 começa na etapa 502, na qual um usuário utiliza o cliente de troca de mensagens eletrônicas 110 para executar uma ação em relação a uma ou mais mensagens eletrônicas que estão localizadas em um contêiner de modo que o número total de mensagens eletrônicas no contêiner possuindo um estado particular é alterado. Tal ação pode incluir, por exemplo, adicionar uma mensagem eletrônica para o contêiner, apagar ou de outro modo remover uma mensagem eletrônica do contêiner, ler uma mensagem eletrônica não lida no contêiner, sinalizar uma mensagem eletrônica não sinalizada no contêiner, dentre outras.[0078] Na etapa de decisão 504, em resposta a determinar que a ação da etapa 502 ocorreu, a lógica de estado combinado 124 determina se a mensagem (mensagens) eletrônica em relação a qual tal ação foi executada está no depósito local 114. Se uma mensagem eletrônica em relação a qual a ação foi executada estiver armazenada no depósito local 114, então a lógica de estado combinado 124 irá poro consequência incrementar ou decrementar a contagem de itens locais relevante para o contêiner como apresentado na etapa 506. Assim, por exemplo, se o usuário tiver apagado uma mensagem eletrônica do contêiner e a mensagem eletrônica que foi apagada estava colocada na memória cache no depósito local 114, então a lógica de estado combinado 124 irá decrementar a contatem de itens locais para este contêiner em um. Como outro exemplo, se o usuário tiver lido uma mensagem eletrônica não lida no contêiner e a mensagem eletrônica que foi lida tiver sido colocada em cache no depósito local 114, então a lógica de estado combinado 124 irá decrementar a contagem de itens locais não lidos para este contêiner em um. Adicionalmente, a lógica de estado combinado 124 também pode incrementar a contagem de itens locais lidos para este contêiner em um.[0079] Entretanto, se a lógica de estado combinado 124 determinar durante a etapa de decisão 504 que a mensagem(mensagens) eletrônica(s) em relação a qual a ação da etapa 502 foi executada não está(estão) armazenada(s) no depósito local 114 (isto é, ela somente está armazenada no depósito remoto 132), então a lógica de estado combinado 124 irá por consequência incrementar ou decrementar a quantidade delta relevante para o contêiner como apresentado na etapa 508. Assim, por exemplo, se o usuário tiver apagado uma mensagem eletrônica do contêiner e a mensagem eletrônica que foi apagada não estava colocada em cache no depósito local 114, então a lógica de estado combinado 124 irá decrementar a quantidade delta que representa a diferença entre o número total de itens remotamente armazenados no contêiner e a contagem de itens locais para o contêiner em um. Como outro exemplo, se o usuário tiver lido uma mensagem eletrônica não lida no contêiner e a mensagem eletrônica que foi lida não tiver sido colocada em cache no depósito local 114, então a lógica de estado combinado 124 irá decrementar a quantidade delta que representa a diferença entre o número total de itens não lidos remotamente armazenados no contêiner e a contagem de itens locais não lidos para o contêiner em um. Adicionalmente, a lógica de estado combinado 124 também pode incrementar a quantidade delta que representa a diferença entre o número total de itens lidos remotamente armazenados no contêiner e a contagem de itens locais lidos para o contêiner em um.[0080] Após a etapa 506 ou 508, o controle flui para a etapa 510, durante a qual a lógica de estado combinado 124 calcula contagens de itens para o contêiner por somar as contagens de itens locais para o contêiner com as quantidades delta correspondentes. Durante a etapa 510, a lógica de estado combinado 124 também apresenta as contagens de itens assim calculadas para a GUI 132 de modo que elas podem ser vistas por um usuário do dispositivo 106.[0081] Após a etapa 510, o controle flui para a etapa 512 durante a qual um processo de sincronização é iniciado, o qual é pretendido para sincronizar o estado das mensagens eletrônicas armazenadas no depósito local 114 e das mensagens eletrônicas armazenadas no depósito remoto 132. O cliente de troca de mensagens eletrônica 110 pode iniciar tal processo de sincronização de acordo com uma programação de atividade definida pelo sistema ou definida pelo usuário, em resposta a ocorrência de um evento ou coisa parecida. Tal processo de sincronização pode ser necessário devido ao estado das mensagens eletrônicas armazenadas no depósito local 114 e/ou no depósito remoto 132 poder ter alterado (e assim, se tornado não sincronizado) desde a ocorrência de uma sincronização anterior. Por exemplo, o usuário pode ter alterado o estado de uma ou mais mensagens eletrônicas armazenadas no depósito local 114 desde a ocorrência de uma sincronização anterior. Como outro exemplo, o servidor de troca de mensagens eletrônicas 102 pode ter alterado o estado de uma ou mais mensagens eletrônicas disponíveis para o cliente de troca de mensagens eletrônicas 110 e armazenadas no depósito remoto 132 desde a ocorrência de uma sincronização anterior. Tal processo de sincronização também pode ser utilizado para remover mensagens eletrônicas do depósito local 114 que estiverem fora da janela de sincronização.[0082] Enquanto o processo de sincronização está sendo executado, a lógica de estado combinado 124 irá continuar a exibir as contagens de itens para um contêiner como uma soma das contagens de itens locais para o contêiner com as quantidades delta correspondentes. É possível que enquanto o processo de sincronização está sendo executado, que as contagens de itens locais se alterem devido a tal processo de sincronização (por exemplo, devido à adição de novas mensagens eletrônicas para o depósito local 114). Assim, as contagens de itens para o contêiner que são exibidas enquanto a sincronização está ocorrendo serão o total das contagens de itens locais mais atuais para o contêiner (como influenciadas pelo processo de sincronização) mais as quantidades delta correspondentes.[0083] Como apresentado na etapa de decisão 514, uma vez que o processo de sincronização iniciado durante a etapa 512 seja determinado como estando completo, o controle flui para a etapa 516.[0084] Durante a etapa 516, a lógica de estado combinado 124 obtém novas contagens de itens remotos e novas contagens de itens locais para o contêiner, à medida que tais contagens de itens podem ter alteado como resultado do processo de sincronização. Durante a etapa 516, a lógica de estado combinado 124 também calcula novas quantidades delta para o contêiner por determinar a diferença entre cada nova contagem de itens remotos e cada nova contagem de itens locais correspondente. Durante esta etapa, a lógica de estado combinado 124 também armazena as quantidades delta mais recentemente calculadas no armazenamento local do dispositivo do usuário 106, desse modo substituindo as quantidades delta anteriormente calculadas pelas quantidades delta mais recentemente calculadas.[0085] Após a etapa 516, o controle flui para a etapa 518, durante a qual a lógica de estado combinado 124 calcula contagens de itens para o contêiner por somar cada contagem de itens locais obtida durante a etapa 516 com uma quantidade delta correspondente calculada durante a mesma etapa. Durante a etapa 518, a lógica de estado combinado 124 também apresenta as contagens de itens assim calculadas para a GUI 132 de modo que elas podem ser vistas por um usuário do dispositivo 106.[0086] Um exemplo instrucional simples será agora proporcionado para ajudar a ilustrar como os métodos precedentes dos fluxogramas 400 e 500 podem ser utilizados para apresentar a informação de estado combinado para um usuário. Para o propósito destes exemplos, é assumido que mensagens eletrônicas são emails, o contêiner relevante é uma pasta chamada "Caixa de Correio Eletrônico" e a contagem de itens a ser exibida é a contagem de itens da Caixa de Correio Eletrônico.[0087] É para ser adicionalmente assumido que antes de iniciar o cliente de troca de mensagens eletrônicas 110 (e assim, ativar o método do fluxograma 400), a contagem de itens locais para a Caixa de Correio Eletrônico é 50 e a quantidade delta para os itens da Caixa de Correio Eletrônico é 150 (isto é, quando a quantidade delta para os itens da Caixa de Correio Eletrônico foi calculada, existiam 200 itens remotamente armazenados e 50 itens localmente armazenados na Caixa de Correio Eletrônico).[0088] Agora, assuma que o cliente de troca de mensagens eletrônicas inicia de acordo com a etapa 402 do fluxograma 400 e a lógica de estado combinado 124 carrega a contagem de itens locais para a Caixa de Correio Eletrônico como exposto acima de acordo com a etapa 404 e carrega a quantidade delta para itens da Caixa de Correio Eletrônico como exposto acima de acordo com a etapa 406. Então, durante a etapa 408, a lógica de estado combinado 124 irá calcular a contagem de itens para a Caixa de Correio Eletrônico como a soma da contagem de itens locais para a Caixa de Correio Eletrônico 50 com a quantidade delta para os itens da Caixa de Correio Eletrônico 150, produzindo uma contagem de itens de 200. A lógica de estado combinado 124 então irá apresentar esta contagem de itens para o usuário via a GUI 132 adicionalmente de acordo com a etapa 408.[0089] Para adicionalmente ilustrar como os métodos do fluxograma 400 e 500 podem ser utilizados para apresentar informação de estado combinado para um usuário, assuma que enquanto o dispositivo do usuário 106 está no estado off-line, o usuário adiciona 5 novos emails para a Caixa de Correio Eletrônico. Desde que esta ação altera o estado da Caixa de Correio Eletrônico, ela irá ativar a etapa 502 do fluxograma 500. Adicionalmente, desde que esta ação envolve emails localmente armazenados, ela irá resultar na contagem de itens locais para a Caixa de Correio Eletrônico sendo incrementada em 5 (produzindo uma contagem de itens locais de 55) de acordo com a etapa 506. Então, durante a etapa 510, a contagem de itens para a Caixa de Correio Eletrônico será apresentada como 205 (contagem de itens locais de 55 mais a quantidade delta de 150). Assim, irá parecer para o usuário como se suas ações executadas off-line afetaram o estado de toda a Caixa de Correio Eletrônico, não apenas estes emails armazenados nos depósito local 114.[0090] Para adicionalmente ilustrar como os métodos do fluxograma 400 e 500 podem ser utilizados para apresentar informação de estado combinado para um usuário, assuma que enquanto o dispositivo do usuário 106 está off-line, o servidor de troca de mensagens eletrônicas 102 recebe 20 novos emails na Caixa de Correio Eletrônico em nome do usuário e armazena os mesmos no depósito remoto 132 e também apaga 40 emails mais antigos na Caixa de Correio Eletrônico que estão fora de uma janela de tempo mutável e assim, foram somente armazenados no depósito remoto 132. Isto resulta em uma contagem de itens remotos para a Caixa de Correio Eletrônico de 180. Assuma também que após adicionar o 5 novos emails para a Caixa de Correio Eletrônico enquanto o dispositivo do usuário 106 está em um estado off-line como discutido acima, o usuário desliga o dispositivo do usuário 106. Posteriormente, o usuário liga o dispositivo do usuário 106 novamente e inicia o cliente de troca de mensagens eletrônicas 110, ativando a etapa 402 do fluxograma 400. [0091] Neste caso, durante a etapa 404, a lógica de estado combinado 124 carrega a contagem de itens locais para a caixa de entrada do correio eletrônico (contagem de itens locais = 55), durante a etapa 406, a lógica de estado combinado 124 carrega a quantidade delta para os itens da Caixa de Correio Eletrônico (quantidade delta - 150), e durante a etapa 408, a lógica de estado combinado apresenta a contagem de itens para a Caixa de Correio Eletrônico como 205 (55 + 150). Então, na etapa de decisão 410, o controle flui para a etapa 412 devido à lógica de estado combinado 124 determinar que o dispositivo do usuário 106 está agora conectado com o servidor de troca de mensagens eletrônica 102.[0092] Na etapa 412, a sincronização é iniciada. Como resultado da sincronização, os 20 novos emails na Caixa de Correio Eletrônico são baixados para o depósito local 114, resultando na contagem de itens locais da Caixa de Correio Eletrônico sendo incrementada de 55 para 75. Enquanto a sincronização está ocorrendo, a lógica de estado combinado 124 continua a exibir a contagem de itens da caixa de entrada da Caixa de Correio Eletrônico como a soma da contagem de itens locais (agora 75) com a quantidade delta para os itens da Caixa de Correio Eletrônico 150, a qual é igual a 225. Durante o processo de sincronização, os cinco emails criados localmente na Caixa de Correio Eletrônico são carregados para o depósito remoto 132, aumentando a contagem de itens remotos de 180 para 185.[0093] Durante a etapa 416, a lógica de estado combinado 124 obtém as contagens de itens locais e remotos após a sincronização. Neste caso, após a sincronização, a contagem de itens locais para a Caixa de Entrada da Caixa de Correio Eletrônico será 75 e a contagem de itens remotos para a Caixa de Entrada da Caixa de Correio Eletrônico será 185. Por consequência, durante a etapa 416, a lógica de estado combinado 124 irá calcular a quantidade delta para os Itens da Caixa de Entrada como sendo 110. A seguir, durante a etapa 418, a lógica de estado combinado 124 exibe a contagem de itens da Caixa de Entrada como 185, a qual é a soma da contagem de itens locais para a Caixa de Entrada 75 mais a quantidade delta para os itens da Caixa de Entrada 110.C. Técnicas Ilustrativas para Performance de Pesquisa Combinada[0094] A Figura 6 representa um fluxograma 600 de um primeiro método pelo qual a lógica de pesquisa combinada 126 pode operar para executar uma pesquisa combinada de mensagens eletrônicas localmente armazenadas e remotamente armazenadas de acordo com uma modalidade. Somente para propósito de ilustração, o método do fluxograma 60 será agora descrito com referência aos vários componentes do sistema 100 como descrito acima com referência à Figura 1. Entretanto, os versados na(s) técnica(s) relevante(s) irão apreciar que o método pode ser implementado igualmente por outros componentes ou sistemas.[0095] Como apresentado na Figura 6, o método do fluxograma 600 começa na etapa 602 a qual um usuário informa uma consulta para o dispositivo do usuário 106 e inicia uma pesquisa. A maneira na qual tal consulta pode ser submetida e na qual tal consulta pode ser iniciada pode depender da implementação. Por exemplo, em uma modalidade, a GUI 132 proporciona uma caixa de entrada de texto que um usuário pode utilizar para digitar uma consulta e um botão de pesquisa que o usuário pode ativar para iniciar a pesquisa. Entretanto, isto é somente um exemplo, e vários mecanismos de entrada do usuário bem conhecidos podem ser utilizados para submeter a consulta e iniciar a pesquisa.[0096] Na etapa 604, a lógica de pesquisa combinada 126 executa uma pesquisa localmente em relação às mensagens eletrônicas armazenadas no depósito local 114 baseada na consulta submetida durante a etapa 602. A lógica de pesquisa combinada 126 pode utilizar qualquer um dentre vários algoritmos de pesquisa bem conhecidos para determinar quais mensagens eletrônicas armazenadas no depósito local 114 devem ser identificadas como correspondendo à entrada de consulta durante a etapa 602. Se a lógica de pesquisa combinada 126 determinar que qualquer mensagem eletrônica armazenada no depósito local 114 corresponde à consulta, então a lógica de pesquisa combinada 126 apresenta informação sobre estas mensagens eletrônicas na GUI 132. A informação apresentada pode amplamente incluir qualquer item de informação sobre uma mensagem eletrônica. Por exemplo, em uma modalidade na qual as mensagens eletrônicas compreendem mensagens de email, tal informação pode incluir, mas não está limitada a um remetente da mensagem de email, um assunto da mensagem de email, uma data e/ou hora em que a mensagem de email foi enviada, uma data e/ou hora em que a mensagem de email foi recebida, informação de estado com respeito à mensagem de email (por exemplo, lida, não lida, sinalizada, não sinalizada), dentre outras.[0097] Em algumas modalidades, para cada mensagem eletrônica correspondente sobre a qual informação é apresentada como resultado da pesquisa local executada durante a etapa 604, também é apresentado um meio pelo qual um usuário pode causar que o conteúdo de tal mensagem eletrônica seja exibido na GUI 132. Por exemplo, o meio pode compreender um componente que é apresentado em associação com a informação sobre cada mensagem eletrônica que, quando é interagido por um usuário, causa que o conteúdo da mensagem eletrônica seja exibido dentro da GUI 132. Adicionalmente de acordo com tais modalidades, uma vez que um usuário tenha selecionado uma mensagem eletrônica para visualização, a lógica de pesquisa combinada 126 irá obter o conteúdo da mensagem eletrônica a partir do depósito local 114 e exibir tal conteúdo dentro da GUI 132.[0098] Após a etapa 604, o controle flui para a etapa de decisão 606 durante a qual a lógica de pesquisa combinada 126 determina se existem mensagens eletrônicas disponíveis no depósito remoto 132 que não estão colocadas em cache no depósito local 114. A maneira na qual esta determinação é feita pode variar dependendo da implementação. Por exemplo, em uma modalidade, a lógica de pesquisa combinada 126 determina que existem mensagens eletrônicas disponíveis no depósito remoto 132 que não estão colocadas em cache no depósito local 114 pode determinar que uma janela de sincronização baseada em hora está sendo utilizada, a qual pode resultar somente em um subconjunto das mensagens eletrônicas disponíveis no depósito remoto 132 sendo colocadas em cache no depósito local 114. Entretanto, outras técnicas podem ser igualmente utilizadas.[0099] Se a lógica de pesquisa combinada 126 determinar durante a etapa de decisão 606 que não existem mensagens eletrônicas disponíveis no depósito remoto 132 que também não estão em cache no depósito local 114, então o método do fluxograma 600 termina. Entretanto, se a lógica de pesquisa combinada 126 determinar durante a etapa de decisão 606 que existem mensagens eletrônicas disponíveis no depósito remoto 132 que não estão colocadas em cache no depósito local 114, o controle flui para a etapa de decisão 608.[00100] Durante a etapa de decisão 608, a lógica de pesquisa combinada 126 determina se o dispositivo do usuário 106 está conectado com o servidor de troca de mensagens eletrônicas 126 ou não. Vários métodos podem ser utilizados para determinar se tal conexão existe, incluindo, mas não limitado a requerer uma troca de mensagens entre o dispositivo do usuário 106 e o servidor de troca de mensagens eletrônicas 102 ou simplesmente determinar que o dispositivo do usuário 106 possui uma conexão de trabalho com a rede 104.[00101] Se a lógica de pesquisa combinada 126 determinar durante a etapa de decisão 608 que o dispositivo do usuário 106 não está conectado com o servidor de troca de mensagens eletrônica 102, então o método do fluxograma 600 termina. Entretanto, se a lógica de pesquisa combinada 126 determinar durante a etapa de decisão 608 que o dispositivo do usuário 106 está conectado com o servidor de troca de mensagens eletrônicas 102, então o controle flui para a etapa 610.[00102] Durante a etapa 610, a lógica de pesquisa combinada causa que um componente de interface com o usuário seja exibido dentro da GUI 132 que quando ativado por um usuário, irá causar que o servidor de troca de mensagens eletrônicas 102 execute uma pesquisa em relação às mensagens eletrônicas disponíveis armazenadas no depósito remoto 132 baseada na consulta submetida durante a etapa 602 e retornar uma lista que identifica quaisquer mensagens eletrônicas correspondentes. Tal componente de interface com o usuário pode incluir ou ser acompanhado por uma indicação visual de sua função. Por exemplo, o componente de interface com o usuário pode incluir ou ser acompanhado por texto que declara "Continue a pesquisa no servidor", "Somente itens locais foram pesquisados, de modo que os resultados da pesquisa podem estar incompletos - continue a pesquisa no servidor", ou coisa parecida. Entretanto, estes são somente exemplos e não são pretendidos para ser limitativos.[00103] Se o usuário não ativar o componente de interface com o usuário apresentado junto a GUI 132 durante a etapa 610, então o método do fluxograma 600 termina. Entretanto, se o usuário ativar o componente de interface com o usuário apresentado junto à GUI 132, como apresentado na etapa 612, então o controle flui para a etapa 614.[00104] Durante a etapa 614, o servidor de troca de mensagens eletrônicas 102 executa uma pesquisa em relação à mensagens eletrônicas disponíveis armazenadas no depósito remoto 132 baseada na consulta submetida durante a etapa 602 e retorna uma lista que identifica quaisquer mensagens eletrônicas correspondentes. A lógica de pesquisa combinada 126 apresenta informação sobre as mensagens eletrônicas correspondentes na GUI 132. A informação apresentada pode amplamente incluir qualquer item de informação sobre uma mensagem eletrônica.[00105] Em algumas modalidades, para cada mensagem eletrônica correspondente sobre a qual informação é apresentada como resultado da pesquisa remota executada durante a etapa 614, também é apresentado um meio pelo qual um usuário pode causar que o conteúdo de tal mensagem eletrônica seja exibido na GUI 132. Por exemplo, o meio pode compreender um componente que é apresentado em associação com a informação sobre cada mensagem eletrônica que, quando interagido pelo usuário, causa que o conteúdo desta mensagem eletrônica seja exibido dentro da GUI 132.[00106] Adicionalmente de acordo com tais modalidades, uma vez que um usuário tenha selecionado uma mensagem eletrônica para visualização, a lógica de pesquisa combinada 126 irá obter o conteúdo da mensagem eletrônica e exibir tal conteúdo dentro da GUI 132. Se uma cópia da mensagem eletrônica selecionada estiver armazenada no depósito local 114, então a lógica de pesquisa combinada 126 irá obter o conteúdo da mensagem eletrônica a partir do depósito local. Entretanto, se não existir cópia da mensagem eletrônica selecionada no depósito local 114 (isto é, a mensagem eletrônica selecionada está fora da janela de sincronização), então a lógica de pesquisa combinada 126 irá obter o conteúdo da mensagem eletrônica a partir do depósito remoto 132 via a interação com o servidor de troca de mensagens eletrônicas 102. Neste último caso, a lógica de pesquisa combinada 126 não irá armazenar uma cópia da mensagem eletrônica remotamente armazenada no depósito local 114 como parte do processo de apresentação. Ou seja, apesar de o conteúdo da mensagem eletrônica remotamente armazenada poder ser temporariamente colocado em memória temporária dentro do dispositivo do usuário 106 para facilitar a exibição do mesmo, uma vez que o usuário tenha fechado a parte da GUI 132 que é utilizada para ver o conteúdo da mensagem eletrônica remotamente armazenada, tais dados colocados em memória temporária podem ser descartados.[00107] A Figura 7 representa um fluxograma 700 de um segundo método para executar uma pesquisa combinada de mensagens eletrônicas localmente armazenadas e remotamente armazenadas de acordo com uma modalidade. O método do fluxograma 700 pode ser pensado como uma variação do método do fluxograma 600 e é descrito neste documento para ilustrar que várias implementações alternativas da pesquisa combinada podem ser utilizadas. Somente para o propósito de ilustração, o método do fluxograma 700 será agora descrito com referência aos vários componentes do sistema 100 como descritos acima com referência à Figura 1. Entretanto, os versados na técnica(s) relevante irão apreciar que o método pode ser igualmente implementado por outros componentes ou sistemas.[00108] Como apresentado na Figura 7, o método do fluxograma 700 começa na etapa 702 durante a qual um usuário informa uma consulta no dispositivo do usuário 106 e inicia uma pesquisa. A maneira na qual tal consulta pode ser submetida e na qual tal pesquisa pode ser iniciada pode depender da implementação.[00109] Na etapa 704, a lógica de pesquisa combinada 126 executa uma pesquisa localmente em relação às mensagens eletrônicas armazenadas no depósito local 114 baseada na consulta submetida durante a etapa 602. A pesquisa que é executada durante a etapa 704 é limitada de modo que ela irá não irá emitir mais do que um número predeterminado de mensagens associadas, onde o número predeterminado pode ser menor do que o número total de mensagens associadas que poderiam ser identificadas pela pesquisa.[00110] Durante a etapa 704, a lógica de pesquisa combinada 126 apresenta informação sobre quaisquer mensagens eletrônicas identifica das como um resultado da pesquisa local limitada na GUI 132. A informação apresentada pode amplamente incluir qualquer item ou informação sobre uma mensagem eletrônica. Em algumas modalidades, para cada mensagem eletrônica associada sobre a qual a informação é apresentada como resultado da pesquisa local limitada executada durante a etapa 704, também é apresentado um dispositivo pelo qual um usuário pode causar que o conteúdo de tal mensagem eletrônica seja exibido na GUI 132. Por exemplo, o dispositivo pode compreender um componente que é apresentado em associação com a informação sobre cada mensagem eletrônica que, quando sofre interação com o usuário, causa que o conteúdo da mensagem eletrônica seja exibido dentro da GUI 132. Adicionalmente de acordo com tais modalidades, uma vez que um usuário tenha selecionado uma mensagem eletrônica para visualização, a lógica de pesquisa combinada 126 irá obter o conteúdo da mensagem eletrônica a partir do depósito local 14 e exibir tal conteúdo dentro da GUI 132.[00111] De acordo com o método do fluxograma 700, como parte da etapa 704, a lógica de pesquisa combinada 126 também proporcionar uma indicação para o usuário via a GUI 132 de que podem existir mais resultados de pesquisa disponíveis e apresenta um componente pelo qual o usuário pode ativar uma pesquisa adicional. Por exemplo, a lógica de pesquisa combinada 126 pode apresenta um componente da interface com o usuário que inclui ou é acompanhado pela palavra "mais", no qual o usuário pode então clicar para obter resultados adicionais de pesquisa. Entretanto, isto é meramente um exemplo e uma ampla variedade de outras indicações e de componentes de interface com o usuário pode ser utilizada. Se o usuário não ativar o componente da interface com o usuário, então o método do fluxograma 700 termina. Entretanto, se o usuário ativar o componente da interface com o usuário como apresentado na etapa 706, então o controle flui para a etapa de decisão 708.[00112] Durante a etapa de decisão 708, a lógica de pesquisa combinada 126 determina se o dispositivo do usuário 106 está conectado com o servidor de troca de mensagens eletrônicas 102 ou não. Vários métodos podem ser utilizados para determinar se tal conexão existe, incluindo, mas não limitado a requerer uma troca de mensagens entre o dispositivo do usuário 106 e o servidor de troca de mensagens eletrônicas 102 ou simplesmente determinar que o dispositivo do usuário 106 possui uma conexão de trabalho com a rede 104.[00113] Se a lógica de pesquisa combinada 126 determinar durante a etapa de decisão 708 que o dispositivo do usuário 106 não está conectado com o servidor de troca de mensagens eletrônicas 102, então o controle flui para a etapa 710. Durante a etapa 710, a lógica de pesquisa combinada 126 executa uma pesquisa não limitada em relação às mensagens eletrônicas armazenadas no depósito local 114 baseada na consulta submetida durante a etapa 602. A pesquisa que é executada durante a etapa 704 não é limitada de modo que ela irá emitir todas as mensagens que sejam determinadas como sendo correspondentes.[00114] Durante a etapa 710, a lógica de pesquisa combinada 126 apresenta informação sobre quaisquer mensagens eletrônicas identificadas como resultado da pesquisa local limitada na GUI 132. A informação apresentada pode amplamente incluir qualquer item de informação sobre uma mensagem eletrônica.[00115] Em algumas modalidades, para cada mensagem eletrônica correspondente sobre a qual informação é apresentada como resultado da pesquisa local não limitada executada durante a etapa 710, também é apresentado um dispositivo pelo qual um usuário pode causar que o conteúdo de tal mensagem eletrônica seja exibido na GUI 132. Por exemplo, o dispositivo pode compreender um componente que é apresentado em associação com a informação sobre cada mensagem eletrônica que, quando sofre interação com o usuário, causa que o conteúdo desta mensagem eletrônica seja exibido dentro da GUI 132. Adicionalmente de acordo com tais modalidades, uma vez que um usuário tenha selecionado uma mensagem eletrônica para visualização, a lógica de pesquisa combinada 126 irá obter o conteúdo da mensagem eletrônica a partir do depósito local 114 e exibir tal conteúdo dentro da GUI 132.[00116] Após a etapa 710, o controle flui para a etapa de decisão 712 durante a qual a lógica de pesquisa combinada determina se existem mensagens eletrônicas disponíveis no depósito remoto 132 que não estão colocadas na cache no depósito local 114. A maneira na qual esta determinação é feita pode variar dependendo da implementação. Por exemplo, em uma modalidade, a lógica de pesquisa combinada 126 determina que existem mensagens eletrônicas disponíveis no depósito remoto 132 que não estão colocadas em cache no depósito local 14 por determinar que uma janela de sincronização baseada no tempo está sendo utilizada, a qual pode resultar em somente um subconjunto das mensagens eletrônicas disponíveis no depósito remoto 132 sendo colocadas em cache no depósito local 14. Entretanto, outras técnicas podem ser igualmente utilizadas.[00117] Se a lógica de pesquisa combinada 126 determinar durante a etapa de decisão 712 que não existem mensagens eletrônicas disponíveis no depósito remoto 132 que também não estão colocadas em cache no depósito local 14, então o método do fluxograma 700 termina. Entretanto, se a lógica de pesquisa combinada 126 determinar durante a etapa de decisão 712 que existem mensagens eletrônicas disponíveis no depósito remoto 132 que não estão colocadas em cache no depósito local 114, o controle flui para a etapa 714, durante a qual a lógica de pesquisa combinada 126 proporciona uma indicação ou aviso para o usuário via a GUI 132 de que os resultados da pesquisa local não limitada podem estar incompletos.[00118] Como citado acima, durante a etapa de decisão 708, a lógica de pesquisa combinada 126 determinar se o dispositivo do usuário 106 está conectado com o servidor de troca de mensagens eletrônicas 102 ou não. Se a lógica de pesquisa combinada 126 determinar durante a etapa de decisão 708 que o dispositivo do usuário 106 está conectado com o servidor de troca de mensagens eletrônicas 102, então o controle flui para a etapa de decisão 716. [00119] Durante a etapa de decisão 716, a lógica de pesquisa combinada 126 determinar se existem mensagens eletrônicas disponíveis no depósito remoto 132 que não estão colocadas na cache no depósito local 114. Se a lógica de pesquisa combinada 126 determinar durante a etapa de decisão 716 que não existem mensagens eletrônicas disponíveis no depósito remoto 132 que também não estão colocadas na cache no depósito local 114, então o controle flui para a etapa de decisão 718.[00120] Durante a etapa de decisão 718, a lógica de pesquisa combinada 126 determina se um índice de pesquisa que é localmente armazenado com respeito ao dispositivo do usuário 106 está desatualizado. Se a lógica de pesquisa combinada 718 determina que o índice de pesquisa não está desatualizado, então o controle flui para a etapa 710, a qual foi anteriormente descrita.[00121] Se a lógica de pesquisa combinada 126 determinar durante a etapa de decisão 716 que existem mensagens eletrônicas disponíveis no depósito remoto 132 que não estão colocadas em cache no depósito local 114 ou se a lógica de pesquisa combinada 126 determinar durante a etapa de decisão 718 que o índice de pesquisa está desatualizado, então o controle flui para a etapa 720. Durante a etapa 720, o servidor de troca de mensagens eletrônicas 102 executa uma pesquisa não limitada em relação às mensagens eletrônicas disponíveis armazenadas no depósito remoto 132 baseado na consulta submetida durante a etapa 702 e retorna uma lista que identifica quaisquer mensagens eletrônicas correspondentes. A lógica de pesquisa combinada 126 apresenta informação sobre as mensagens eletrônicas correspondentes na GUI 132. A informação apresentada pode amplamente incluir qualquer item de informação sobre uma mensagem eletrônica.[00122] Em algumas modalidades, para cada mensagem eletrônica correspondente sobre a qual informação é apresentada como resultado da pesquisa remota executada durante a etapa 720, também é apresentado um dispositivo pelo qual um usuário pode causar que o conteúdo de tal mensagem eletrônica seja exibido na GUI 132. Por exemplo, o dispositivo pode compreender um componente que é apresentado em associação com a informação sobre cada mensagem eletrônica, o qual, quando sofre interação com o usuário, causa que o conteúdo da mensagem eletrônica seja exibido dentro da GUI 132.[00123] Adicionalmente de acordo com tais modalidades, uma vez que um usuário tenha selecionado uma mensagem eletrônica para visualização, a lógica de pesquisa combinada 126 irá obter o conteúdo da mensagem eletrônica e exibir tal conteúdo dentro da GUI 132. Se uma cópia da mensagem eletrônica selecionada for armazenada no depósito local 114, então a lógica de pesquisa combinada 126 irá obter o conteúdo da mensagem eletrônica a partir do depósito local 114. Entretanto, se não existir cópia da mensagem eletrônica selecionada armazenada no depósito local 114 (isto é, a mensagem eletrônica selecionada está fora da janela de sincronização), então a lógica de pesquisa combinada 126 irá obter o conteúdo da mensagem eletrônica a partir do depósito remoto 132 via a interação com o servidor de troca de mensagens eletrônicas 102. Neste último caso, a lógica de pesquisa combinada 126 não irá armazenar uma cópia da mensagem eletrônica remotamente armazenada no depósito local 114 como parte do processo de apresentação. Ou seja, apesar de o conteúdo da mensagem eletrônica remotamente armazenada poder ser temporariamente colocado em memória temporária do dispositivo do usuário 106 para facilitar a exibição do mesmo, uma vez que o usuário tenha fechado a parte da GUI 132 que utilizada para ver o conteúdo da mensagem eletrônica remotamente armazenada, tais dados colocados em memória temporária podem ser descartados.[00124] De acordo com uma modalidade alternativa, um usuário informa uma consulta no dispositivo do usuário 106 e inicia uma pesquisa. Se a lógica de pesquisa combinada 126 determinar que o dispositivo do usuário 106 está conectado com o servidor de troca de mensagens eletrônicas 102, então o servidor de troca de mensagens eletrônicas 102 executa uma pesquisa não limitada em relação às mensagens eletrônicas disponíveis armazenadas no depósito remoto 132 baseado na consulta e retorna uma lista que identifica quaisquer mensagens eletrônicas correspondentes sem qualquer entrada adicional do usuário. A informação sobre as mensagens eletrônicas correspondentes pode ser apresentada na GUI 132 utilizando uma visualização combinada, de modo que os conteúdos de mensagens eletrônicas correspondentes localmente colocadas em cache possam ser acessados a partir do depósito local 114 enquanto os conteúdos de mensagens eletrônicas correspondentes que não estão localmente colocadas em cache possam ser acessados a partir do depósito remoto 132.[00125] Ainda de acordo com uma modalidade adicional, um usuário informa uma consulta no dispositivo do usuário 106 e inicia uma pesquisa. A lógica de pesquisa combinada 126 executa a pesquisa em relação às mensagens eletrônicas armazenadas no depósito local 114 e também automaticamente causa que uma pesquisa não limitada seja executada em relação às mensagens eletrônicas disponíveis no depósito remoto 132 quando o dispositivo do usuário 106 está conectado com o servidor de troca de mensagens eletrônicas 102. De acordo com tal modalidade, a lógica de pesquisa combinada 126 pode primeiro apresentar para o usuário os resultados da pesquisa local (a qual pode produzir resultados mais rapidamente do que a pesquisa remota) e então apresenta uma vista totalmente combinada de todas as mensagens eletrônicas correspondentes disponíveis no depósito remoto 132 quando os resultados da pesquisa remota são retornados. Tudo isso pode ocorrer sem qualquer entrada adicional a partir do usuário além de submeter a consulta e iniciar a pesquisa.III. Implementação Ilustrativa de Sistema Baseado em Processador[00126] A Figura 8 representa um sistema de computador baseado em processador ilustrativo 800 que pode ser utilizado para implementar várias modalidades descritas neste documento. Por exemplo, o sistema 800 pode ser utilizado para implementar qualquer um ou ambos dentre o servidor de troca de mensagens eletrônicas 102 e o dispositivo do usuário 106, bem como vários subcomponentes dos mesmos. A descrição do sistema 800 proporcionada neste documento é proporcionada para propósito de ilustração e não é pretendida para ser limitativa. As modalidades podem ser implementadas em tipos adicionais de sistemas de computador, como seria conhecido pelos versados na técnica(s) relevante.[00127] Como apresentado na Figura 7, o sistema 800 inclui uma unidade de processamento 802, uma memória do sistema 804 e um barramento 806 que acopla vários componentes do sistema incluindo a memória do sistema 804 com a unidade de processamento 802. A unidade de processamento 802 pode compreender um ou mais processadores ou núcleos de processamento. O barramento 806 representa uma ou mais dentre qualquer uma de vários tipos de estruturas de barramento, incluindo um barramento de memória ou controlador de memória, um barramento periférico, uma porta de elementos gráficos acelerada, e um processador ou barramento local utilizando qualquer uma dentre várias arquiteturas de barramento. A memória do sistema 804 inclui memória somente para leitura (ROM) 808 e memória de acesso aleatório (RAM) 810. Um sistema básico de entrada/saída (BIOS) 812 é armazenado na ROM 808.[00128] O sistema 800 também possui uma ou mais dentre as seguintes unidades: uma unidade de disco rígido 814 para leitura a partir ou gravação junto a um disco rígido, uma unidade de disco magnético 816 para leitura a partir ou gravação junto a um disco magnético removível 818, e uma unidade de disco ótico 820 para leitura a partir ou gravação junto a um disco ótico removível 822 tal como um disco CD ROM, DVD ROM, BLU-RAYTM ou outro meio ótico. A unidade de disco rígido 814, a unidade de disco magnético 816, e a unidade de disco ótico 820 são conectadas com o barramento 806 por uma interface de unidade de disco rígido 824, por uma interface de unidade de disco magnético 826 e por uma interface de unidade ótica 828, respectivamente. As unidades e seus meios legíveis por computador associados proporcionam armazenamento não volátil de instruções legíveis por computador, de estruturas de dados, de módulos de programa e de outros dados para o computador. Apesar de um disco rígido, de um disco magnético removível e de um disco ótico removível serem descritos, outros tipos de meios legíveis por computador podem ser utilizados para armazenar dados, tais como cartões de memória flash, disco de vídeo digital, memórias de acesso aleatório (RAMs), memória somente para leitura (ROM) e assim por diante.[00129] Vários módulos de programa podem ser armazenados no disco rígido, no disco magnético, no disco ótico, na ROM, ou na RAM. Estes módulos de programa incluem um sistema operacional 830, um ou mais programas aplicativos 832, outros módulos de programa 834 e dados de programa 836. De acordo com várias modalidades, os módulos de programa podem incluir lógica de programa de computador que é executável pela unidade de processamento 802 para executar qualquer uma ou todas as funções e aspectos do servidor de troca de mensagens eletrônicas 102 e do dispositivo do usuário 106, bem como quaisquer subcomponentes dos mesmos, como descrito em outras partes neste documento. Os módulos de programa também podem incluir lógica de programa de computador que, quando executada pela unidade de processamento 802, executa qualquer uma das etapas ou operações apresentadas ou descritas com referência às Figuras 2 até 7.[00130] Um usuário pode entrar com comandos e informação no sistema 800 através dos dispositivos de entrada tais como um teclado 838 e um dispositivo apontador 840. Outros dispositivos de entrada (não apresentados) podem incluir um microfone, um joystick, controlador de jogo, scanner, dentre outros. Em uma modalidade, uma tela sensível ao toque é proporcionada em conjunto com um vídeo 844 para permitir a um usuário proporcionar entrada do usuário via a aplicação de um toque (como por um dedo ou caneta, por exemplo) junto a um ou mais pontos na tela sensível ao toque. Estes e outros dispositivos de entrada frequentemente estão conectados com a unidade de processamento 802 através de uma interface de porta serial 842 que é acoplada com o barramento 806, mas podem ser conectados por outras interfaces, tal como uma porta paralela, porta de jogo, ou um barramento serial universal (USB).[00131] Um vídeo 844 também está conectado com o barramento 806 via uma interface, tal como um adaptador de vídeo 846. Em adição ao vídeo 844, o sistema 800 pode incluir outros dispositivos periféricos de saída (não apresentados) tais como alto-falantes e impressoras.[00132] O sistema 800 está conectado com uma rede 848 (por exemplo, uma rede de área local ou uma rede de longa distância, tal como a Internet) através de uma interface ou adaptador de rede 850, de um modem 852, ou de outro dispositivo para estabelecer comunicações através da rede. O modem 852, o qual pode ser interno ou externo, está conectado com o barramento 806 via uma interface de porta serial 842. [00133] Como utilizado neste documento, os termos "meio de programa de computador" e "meio legível por computador" são utilizados para geralmente se referir a meio não temporário tal como a ROM 808 e a RAM 810 utilizadas para implementar a memória do sistema 804, o disco rígido associado com a unidade de disco rígido 814, o disco magnético removível 818, o disco ótico removível 822, bem como outros meios tais como cartões de memória flash, disco de vídeo digital, dentre outros.[00134] Como citado acima, os programa e módulos de computador (incluindo os programas aplicativos 832 e outros módulos de programa 834) podem ser armazenados na ROM 808, na RAM 810, no disco rígido, no disco magnético, ou no disco ótico. Tais programas de computador também podem ser recebidos via a interface de rede 850 ou interface de porta serial 842. Tais programas de computador, quando executados pela unidade de processamento 802, permitem ao sistema 800 implementar aspectos de modalidades discutidos neste documento. Por consequência, tais programas de computador representam controladores do sistema 80.[00135] As modalidades também são direcionadas para produtos de programa de computador compreendendo software armazenado em qualquer meio legível por computador. Tal software, quando executado em um ou mais dispositivos de processamento de dados, causa que um dispositivo(s) de processamento de dados opere como descrito neste documento. As modalidades podem empregar qualquer meio utilizável por computador ou legível por computador, conhecido agora ou no futuro. Exemplos de meios legíveis por computador incluem, mas não estão limitados aos dispositivos de armazenamento tais como ROM, RAM, disco rígidos, discos flexíveis, CD ROMs, DVD ROM, disco zip, fitas, dispositivos de armazenamento magnético, dispositivos de armazenamento ótico, dispositivos de armazenamento baseados em MEMS, dispositivos de armazenamento baseados em nanotecnologia, dentre outros.[00136] Em implementações alternativas, cada um dentre o servidor de troca de mensagens eletrônicas 102 e o dispositivo do usuário 106, bem como quaisquer subcomponentes dos mesmos, pode ser implementado como lógica de hardware/conjunto de circuitos elétricos ou firmware. De acordo com modalidades adicionais, um ou mais destes componentes podem ser implementados em um sistema no chip (SoC). O SoC pode incluir um chip de circuito integrado que inclui um ou mais dentre um processador (por exemplo, um microcontrolador, microprocessador, processador de sinal digital (DSP), etc.), memória, uma ou mais interfaces de comunicação, e/ou circuitos adicionais e/ou firmware embutido para executar suas funções.IV. Conclusão[00137] Apesar de várias modalidades terem sido descritas acima, deve ser entendido que elas foram apresentadas somente a título de exemplo e não de limitação. Será aparente para os versados na técnica(s) relevante que várias alterações na forma e nos detalhes podem ser feitas nos mesmos sem afastamento do espírito e do escopo da invenção. Assim, o alcance e o escopo da presente invenção não devem ser limitados por qualquer uma das modalidades ilustrativas descritas açaima, mas deve ser somente definido de acordo com as reivindicações seguintes e com seus equivalentes.REIVINDICAÇÕES 1. Método executado por um cliente de troca de mensagens eletrônicas instalado em um dispositivo do usuário, caracterizado por compreender: (a) exibir informação com respeito a uma ou mais primeiras mensagens eletrônicas em uma interface gráfica com o usuário (GUI) sintetizada junto a um vídeo do dispositivo do usuário, os conteúdos da uma ou mais primeiras mensagens eletrônicas sendo armazenados em um depósito local do dispositivo do usuário; (b) determinar se o dispositivo do usuário está conectado com um servidor de troca de mensagens eletrônicas; e (c) em resposta a pelo menos determinar que o dispositivo do usuário está conectado com o servidor de troca de mensagens eletrônicas, exibir informação com respeito a uma ou mais segundas mensagens eletrônicas na GUI simultaneamente com a informação com respeito à uma ou mais primeiras mensagens eletrônicas, os conteúdos da uma ou mais segundas mensagens eletrônicas sendo armazenado em um depósito remoto acessível para o servidor de troca de mensagens eletrônicas, mas não no depósito local. 2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de adicionalmente compreender: proporcionar um componente dentro da GUI com o qual o usuário pode interagir para causar que a informação com respeito à uma ou mais segundas mensagens eletrônicas seja exibido na GUI simultaneamente com a informação com respeito à uma ou mais primeiras mensagens eletrônicas; onde a etapa (c) é executada em resposta a pelo menos determinar que o dispositivo do usuário está conectado com o servidor de troca de mensagens eletrônica e que o usuário interagiu com o componente. 3. Método, de acordo com a reivindicação 1, caracterizado pelo fato de adicionalmente compreender: proporcionar um componente dentro da GUI com o qual o usuário pode interagir para causar que o conteúdo de uma mensagem selecionada das uma ou mais primeiras mensagens eletrônicas seja exibido na GUI; e em resposta a determinar que o usuário interagiu com o componente, obter o conteúdo da mensagem selecionada das uma ou mais primeiras mensagens eletrônicas a partir do depósito local para exibição na GUI. 4. Método, de acordo com a reivindicação 1, caracterizado por adicionalmente compreender: proporcionar um componente dentro da GUI com o qual o usuário pode interagir para causar que o conteúdo de uma mensagem selecionada das uma ou mais segundas mensagens eletrônicas seja exibido na GUI; e em resposta a determinar que o usuário interagiu com o componente, obter o conteúdo a mensagem selecionada das uma ou mais segundas mensagens eletrônicas a partir do depósito remoto para exibição na GUI sem salvar uma cópia do conteúdo da mensagem selecionada das uma ou mais segundas mensagens eletrônicas no depósito local. 5. Dispositivo do usuário, caracterizado por compreender: um vídeo; um cliente de troca de mensagens eletrônicas executado por processador que inclui lógica de estado combinado, a lógica de estado combinado sendo configurada para apresentar um estado combinado associado com um contêiner de mensagens eletrônicas para exibição por: determinar uma contagem de itens locais, onde a contagem de itens locais representa um número de mensagens eletrônicas armazenadas em um depósito local do dispositivo do usuário que estão incluídas no contêiner e possuem um estado particular; determinar se o dispositivo do usuário está conectado com um servidor de troca de mensagens eletrônicas; e em resposta a determinar que o dispositivo do usuário não está conectado com o servidor de troca de mensagens eletrônicas: carregar a partir do depósito local uma quantidade que representa uma última diferença conhecida ente uma contagem de itens remotos e a contagem de itens locais, onde a contagem de itens remotos representa um número de mensagens eletrônicas armazenadas em um depósito remoto acessível pelo servidor de troca de mensagens eletrônicas que estão incluídas no contêiner e possuem o estado particular; e carregar a partir do depósito local uma quantidade que representa a última diferença conhecida entre uma contagem de itens remotos e a contagem de itens locais, onde a contagem de itens remotos representa um número de mensagens eletrônicas armazenadas em um depósito remoto acessível pelo servidor de troca de mensagens eletrônicas que estão incluída no contêiner e possuem um estado particular; e apresenta uma contagem de itens combinados para o contêiner para a exibição, onde a contagem de itens combinados para o contêiner é a soma da contagem de itens locais com a quantidade. 6. Dispositivo do usuário, de acordo com a reivindicação 5, caracterizado pelo fato de que a lógica de estado combinado é adicionalmente configurada para apresentar o estado combinado associado com o contêiner de mensagens eletrônicas para exibição por: em resposta a determinar que o dispositivo do usuário está conectado com o servidor de troca de mensagens eletrônicas e que uma sincronização entre o depósito local e o depósito remoto ainda não foi executada: obter uma nova contagem de itens remotos a partir do servidor de troca de mensagens eletrônicas; calcular uma nova quantidade por determinar a diferença entre a nova contagem de itens remotos e a contagem de itens locais; e apresentar uma nova contagem de itens combinados para o contêiner para a exibição, onde a nova contagem de itens combinados para o contêiner é a soma da contagem de itens locais com a nova quantidade. 7. Dispositivo do usuário, de acordo com a reivindicação 5, caracterizado pelo fato de que a lógica de estado combinado é adicionalmente configurada para apresentar o estado combinado associado com o contêiner de mensagens eletrônicas para a exibição por: em resposta a determinar que o dispositivo do usuário está conectado com o servidor de troca de mensagens eletrônicas e que uma sincronização entre o depósito local e o depósito remoto foi executada: obter uma nova contagem de itens remotos e uma nova contagem de itens locais resultando da sincronização; calcular uma nova quantidade por determinar uma diferença entre a nova contagem de itens remotos e a nova contagem de itens locais; e apresentar uma nova contagem de itens combinados para o contêiner para a exibição, onde a nova contagem de itens combinados para o contêiner é a soma da nova contagem de itens locais com a nova quantidade. 8. Dispositivo do usuário, de acordo com a reivindicação 5, caracterizado pelo fato de que a lógica de estado combinado é configurada para apresentar o estado combinado associado com o contêiner de mensagens eletrônicas para a exibição por: em resposta a determinar que um usuário do dispositivo do usuário executou uma ação em relação a uma mensagem eletrônica particular que causa que o número total de mensagens eletrônicas no contêiner que possuem o estado particular se altere: determinar se a mensagem eletrônica particular está armazenada no depósito local; em resposta a determinar que a mensagem eletrônica particular está armazenada no depósito local, incrementar ou decrementar a contagem local para considerar a alteração. 9. Dispositivo do usuário, de acordo com a reivindicação 5, caracterizado pelo fato de que a lógica de estado combinado é adicionalmente configurada para apresentar o estado combinado associado com o contêiner de mensagens eletrônicas para a exibição por: em resposta a determinar que a mensagem eletrônica particular não está armazenada no depósito local, incrementar ou decrementar a quantidade para considerar a alteração. 10. Produto de programa de computador caracterizado por compreender um meio legível por computador possuindo lógica de programa de computador gravada no mesmo, a lógica de programa de computador compreendendo o dispositivo para permitir que uma unidade de processamento execute um método compreendendo: (a) receber uma consulta a partir de um usuário do dispositivo do usuário; (b) executar uma primeira pesquisa em relação a várias mensagens eletrônicas colocadas em cache em um depósito local do dispositivo do usuário baseada na consulta; (c) exibir informação sobre pelo menos uma mensagem eletrônica identificada como um resultado da execução da primeira pesquisa em uma interface gráfica com o usuário (GUI) sintetizada em um vídeo do dispositivo do usuário; (d) determinar se o dispositivo do usuário está conectado com um servidor de troca de mensagens eletrônicas; e (e) em resposta a pelo menos determinar que o dispositivo do usuário está conectado com o servidor de troca de mensagens eletrônicas, causar que uma segunda pesquisa seja executada em relação às várias mensagens eletrônicas disponíveis em um depósito remoto acessível pelo servidor de troca de mensagens eletrônicas e exibir informação sobre pelo menos uma mensagem eletrônica identificada como um resultado da execução da segunda pesquisa na GUI RESUMOPatente de Invenção: "SISTEMA E MÉTODO PARA APRESENTAÇÃO COMBINADA DE MENSAGENS ELETRÔNICAS LOCALMENTE E REMOTAMENTE ARMAZENADAS". A presente invenção refere-se a um cliente de troca de mensagens eletrônicas que coloca em cache cópias de um subconjunto de mensagens eletrônicas disponível em um depósito remoto em um depósito local de um dispositivo do usuário. Quando o dispositivo do usuário está em um estado online, o cliente proporciona a apresentação combinada de mensagens eletrônicas de modo que um usuário pode simultaneamente ver informação sobre as mensagens eletrônicas que foram colocadas em cache no depósito local bem como informação sobre mensagens eletrônicas que estão armazenadas somente no depósito remoto. O cliente também apresenta um estado combinado associado com um contêiner de mensagens eletrônicas para um usuário do dispositivo do usuário e permite a um usuário executar uma pesquisa de mensagens eletrônicas colocadas em cache armazenadas em um depósito local bem como de mensagens eletrônicas armazenadas no depósito remoto.2/5721817954v1 1/5721817954v1 6/61/61/1