Jugando con Velocity (II)!

Siguiendo con la serie de posts sobre Velocity que comencé con la parte relativa a la descripción de Velocity y la sencillez de instalación, en esta ocasión voy a dar unas pequeñas pinceladas de lo fácil que es usar la API de Velocity para trabajar con los datos que tengamos en caché. Para estas pruebas he utilizado Visual Studio 2008 SP1 y la CTP de abril de Velocity:

  • Como siempre, el primer paso es crear nuestro proyecto (en mi caso, se trata de una simple aplicación de consola.
  • Una vez creado el proyecto, tenemos que añadir las referencias a los ensamblados de Velocity necesarios para trabajar con el sistema de caché: CacheBaseLibrary.dll y ClientLibrary.dll
image image
  • Una vez añadidas las referencias, tenemos que crear un archivo de configuración XML en el que especificamos los parámetros de la estructura de caché de Veolcity: el host, el puerto utilizado, el TTL, etc.

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

  <!–configSections must be the FIRST element –>

  <configSections>

    <!– required to read the <dataCacheClient> element –>

    <section name="dataCacheClient"

       type="Microsoft.Data.Caching.DataCacheClientSection,

       CacheBaseLibrary"

       allowLocation="true"

       allowDefinition="Everywhere"/>

  </configSections>

 

  <!– routing client–>

  <dataCacheClient deployment="routing">

    <!– (optional) specify local cache –>

    <localCache

      isEnabled="true"

      sync="TTLBased"

      objectCount="100000"

      ttlValue="300" />

    <!–(optional) specify cache notifications poll interval

    <clientNotification pollInterval="300" />

    –>

    <!– cache host(s) –>

    <hosts>

      <host

         name="localhost"

         cachePort="22233"

         cacheHostName="DistributedCacheService"/>

    </hosts>

  </dataCacheClient>

</configuration>

  • Para trabajar con la caché de Velocity el código necesario es el siguiente:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

 

//Namespace needed for caching

using Microsoft.Data.Caching;

 

namespace Velocity_Sample

{

    class Program

    {

        static void Main(string[] args)

        {

            //Cache factory object -> Different algorithms for working with the cache

            DataCacheFactory dcfFactory =

                new DataCacheFactory();

            //Cache object for putting and retrieving data

            DataCache dcCache =

                dcfFactory.GetDefaultCache();

            //Putting data into the cache

            dcCache.Put("CHI1", "JcGonzalez");

            //Getting data from the cache

            Console.WriteLine("Valor en caché {0}",dcCache.Get("CHI1"));

            Console.WriteLine();

 

            try

            {

                dcCache = dcfFactory.GetCache("Inventario");

            }

            catch (Exception ex)

            {               

                Console.WriteLine(ex.Message);

            }

            Console.ReadLine();          

        }

    }

}

  • Cómo veis, para poder trabajar con la caché de Velocity:
    • Definimos en primer lugar una instancia de DataCacheFactory que es la que nos marca como obtener acceso a los datos de la caché.
    • Definimos una instancia de DataCache que es la que nos permite leer / escribir en la caché. Esta instancia la inicializamos a partir del método GetDefaultCache que nos permite acceder a la caché por defecto de Velocity (default).
    • A partir de aquí, escribir datos en la caché y leerlos es tan sencillo como llamar a los métodos Put() y Get() del objeto DataCache definido.
  • Sin más, probamos que efectivamente hemos escrito un dato en la caché.
  • Si tratamos de acceder a una caché no creada, tendremos el correspondiente error.
  • Finalmente comentaros que podemos monitorizar el contenido de la caché desde la herramienta PowerShell de administración. Podemos ver cual es el contenido de la caché con el comando Get-CacheStatistics.
image image image

Y hasta aquí llega este segundo post sobre Velocity. Espero que os haya resultado interesante.

SharePoint 2010 & Office 2010: Novedades en Microsoft Office Infopath 2010!

Poco a poco se siguen conociendo algunas novedades, eso sí de manera indirecta, de SharePoint 2010. En este caso, a través del último post publicado por el equipo de Infopath no sólo podemos conocer algunas de las novedades de Infopath 2010, sino también algunas novedades en lo que a la relación de SharePoint 2010 e Infopath 2010 se refiere:

  • Nuevos controles, incluido el Person / Group Picker que pasa a ser un control de “primera clase” en lo que a a controles de Infopath se refiere.
  • Creación de formularios para listas de SharePoint, con Infopath 2010 se podrá extender y mejorar los formularios de creación, edición y visualización de un ítem de lista de SharePoint. A través de la nueva Ribbon que incorpora SharePoint 2010 podremos personalizar el formulario y generar uno similar a los que tienen por defecto las listas de SharePoint pero basados en Infopath 2010 (se entiende que en la versión de formularios en el servidor).
Infopath1 Infoapth2
  • Creación de aplicaciones SharePoint, mediante Infopath 2010, SharePoint 2010 y SharePoint Designer 2010 podremos crear aplicaciones empresariales o departamentales sobre SharePoint:
    • Aplicaciones basadas en formularios, utilizando formularios Infopaht que integren componentes como workflows, informes, páginas web personalizas,…
    • Diseño de formularios de inicio y de trabajo con tareas para flujos de trabajo de SharePoint 2010.
    • Diseñar formularios que permitan crear, leer, actualizar o borrar datos de negocio de sistemas Back-End mediante los Businesss Connectivity Services (BCS).
  • Integración con SharePoint Workspace 2010, ya que Infopath 2010 es la tecnología de formularios usada para crear y completar formularios en SharePoint Workspace 2010.
  • Administración y gestión de Infopath Form Services, se ha mejorado notablente con vistas a facilitar la administración de Infopath Forms Services como un componente más de SharePoint 2010.

Y estas son las novedades de Infopath 2010 relacionadas con SharePoint 2010…para el resto de novedades de Infopath 2010 en sí, os remito al post publicado por el equipo de Infopath.

logoSharePoint2010