/
overview.txt
29 lines (20 loc) · 1014 Bytes
/
overview.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
########
Overview
########
This document introduces `xal`'s concepts.
.. tip::
`xal`'s primary concept is to develop to a session, i.e. have an unified API
to manage resources that can be applied relative to session objects. Then,
`xal` is a proof-of-concept implementation of this idea. So its internal
architecture may change (improve).
Here is a summary of `xal`'s internal architecture:
* a :doc:`session </sessions>` holds a registry of resource providers.
Typically:
* in order to use `xal` or related libraries, you have to setup a session ;
* in order to write `xal`-powered scripts or libraries, you receive session
instance as an input argument.
* a :doc:`resource provider </providers>` implements high-level resource
API for specific environment, typically using third-party libraries (stdlib,
Fabric, ...). A resource provider is also a resource factory.
* a :doc:`resource </resources/index>` instance describes an object of the
environment: a file, an user, ...