Los recursos y el área de trabajo

El concentrador principal para archivos de datos del usuario recibe el nombre de área de trabajo. Imagínese el entorno de trabajo de la plataforma como una herramienta que permite al usuario navegar por el área de trabajo y manipularla. El conector de recursos proporciona varias API para crear, navegar y manipular recursos en un área de trabajo. El entorno de trabajo utiliza las API para proporcionar esta función al usuario. El conector también puede utilizar estas API.

Desde el punto de vista de un conector basado en recursos, hay exactamente una sola área de trabajo, y siempre está abierta para la actividad comercial mientras el conector esté en ejecución. El área de trabajo se abre automáticamente cuando se activa el conector de recursos, y se cierra cuando se concluye la plataforma. Si su conector requiere el conector de recursos, este se iniciará antes que el suyo, con lo que podrá utilizar el área de trabajo.

El área de trabajo contiene un conjunto de recursos. Desde el punto de vista del usuario, existen tres tipos de recursos diferentes: proyectos, carpetas y archivos. Un proyecto es un conjunto de un número indeterminado de archivos y carpetas. Es un contenedor para organizar otros recursos relacionados con un área específica. Los archivos y las carpetas son como los archivos y los directorios del sistema de archivos. Una carpeta contiene otras carpetas o archivos. Un archivo contiene una secuencia arbitraria de bytes. La plataforma no interpreta su contenido.

Los recursos de un área de trabajo están organizados en una estructura de árbol; en el nivel superior están los proyectos, y debajo las carpetas y los archivos. Un recurso especial, el recurso directorio raíz del área de trabajo, hace la función de directorio raíz del árbol de recursos. El directorio raíz del área de trabajo se crea internamente cuando se crea un área de trabajo, y existirá mientras exista dicha área.

Un entorno de trabajo puede tener cualquier número de proyectos, cada uno de los cuales puede almacenarse en una ubicación diferente del disco.

El espacio de nombres de recursos de área de trabajo es siempre sensible a mayúsculas y minúsculas y conserva el uso de mayúsculas y minúsculas. Por consiguiente, el espacio de trabajo permite varios recursos hermanos que sólo difieren en el uso de mayúsculas y minúsculas. El espacio de trabajo tampoco ponen restricciones en los caracteres válidos de nombres de recurso, la longitud de nombres de recurso o el tamaño de los recursos en disco. Por supuesto, si almacena recursos en un disco que no sea sensible a mayúsculas y minúsculas o que tenga restricciones en los nombres de recurso, dichas restricciones se mostrarán cuando intente crear y modificar recursos.

Árbol de recursos de ejemplo

El árbol siguiente (representado en la vista Navegador del entorno de trabajo) muestra la jerarquía habitual de los recursos de un área de trabajo. El directorio raíz (implícito) del árbol es el directorio raíz del área de trabajo. Los proyectos son los hijos inmediatos del directorio raíz del área de trabajo. Cada nodo (que no sea el directorio raíz) representa uno de los tres tipos de recursos y tiene un nombre diferente del de sus hermanos.

Vista Navegador con un área de trabajo de ejemplo

Los nombres de los recursos son series arbitrarias (deben ser nombres de archivos permitidos). La plataforma no establece nombres de recursos ni especifica ningún nombre con un significado especial.  (Con la excepción de que a un proyecto no se le puede llamar ".metadata" porque este nombre está reservado para uso interno).

Los proyectos contienen archivos y carpetas, pero no otros proyectos. Los proyectos y las carpetas son como los directorios en un sistema de archivos.  Cuando suprime un proyecto, se le pregunta si desea suprimir todos los archivos y todas las carpetas que hay en él.  Al suprimir una carpeta de un proyecto, se suprimirá la carpeta y todos sus hijos. La acción de suprimir un archivo es análoga a la de suprimir un archivo del sistema de archivos.