Package rekall :: Package plugins :: Package tools :: Module caching_url_manager :: Class CachingManager
[frames] | no frames]

Class CachingManager

source code


Nested Classes
  DELEGATE
Supports opening profile repositories hosted over the web.
  __metaclass__
Automatic Plugin Registration through metaclasses. (Inherited from rekall.io_manager.IOManager)
  top_level_class
The baseclass for abstracted IO implementations. (Inherited from rekall.io_manager.IOManager)
Instance Methods
 
__init__(self, session=None, **kwargs)
Initialize the IOManager.
source code
 
__str__(self)
str(x)
source code
 
CheckInventory(self, name)
Do we have this file at all?
source code
 
GetData(self, name, **kwargs)
Get the data object stored at container member.
source code
 
StoreData(self, name, data, **options)
Stores the data in the named container member.
source code
 
CheckUpstreamRepository(self)
Checks the repository for freshness.
source code
 
ListFiles(self)
Returns a generator over all the files in this container.
source code
 
Create(self, name, **options)
Creates a new file in the container. (Inherited from rekall.io_manager.IOManager)
source code
 
Decoder(self, raw) (Inherited from rekall.io_manager.IOManager) source code
 
Destroy(self, name)
Destroys the file/directory at name's path. (Inherited from rekall.io_manager.IOManager)
source code
 
Encoder(self, data, **options) (Inherited from rekall.io_manager.IOManager) source code
 
FlushInventory(self)
Write the inventory to the storage. (Inherited from rekall.io_manager.IOManager)
source code
 
Metadata(self, path)
Returns metadata about a path. (Inherited from rekall.io_manager.IOManager)
source code
 
Open(self, name)
Opens a container member for reading. (Inherited from rekall.io_manager.IOManager)
source code
 
SetMetadata(self, name, options) (Inherited from rekall.io_manager.IOManager) source code
 
ValidateInventory(self) (Inherited from rekall.io_manager.IOManager) source code
 
__enter__(self) (Inherited from rekall.io_manager.IOManager) source code
 
__exit__(self, exc_type, exc_value, traceback) (Inherited from rekall.io_manager.IOManager) source code

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __subclasshook__

Class Methods
 
ImplementationByClass(self, name) source code
 
ImplementationByName(self, name) source code
Class Variables
  order = 90
  classes = {'CacheDirectoryManager': <class 'rekall.plugins.too... (Inherited from rekall.io_manager.IOManager)
  classes_by_name = {None: [<class 'rekall.io_manager.DirectoryI... (Inherited from rekall.io_manager.IOManager)
  plugin_feature = 'IOManager' (Inherited from rekall.io_manager.IOManager)
Properties
  inventory (Inherited from rekall.io_manager.IOManager)

Inherited from object: __class__

Method Details

__init__(self, session=None, **kwargs)
(Constructor)

source code 
Initialize the IOManager.

Args:

  urn: The path to the IO manager. This might contain a scheme or
       protocol specific to a certain IO manager implementation.

  mode: Can be "r" or "w".

  session: The session object.

  pretty_print: If specified we dump sorted yaml data - this ends up
  being more compressible in reality.

  version: The required version of the repository. The IOManager is free
       to implement arbitrary storage for different versions if
       required. Versioning the repository allows us to update the
       repository file format transparently without affecting older
       Rekall versions.

Overrides: object.__init__
(inherited documentation)

__str__(self)
(Informal representation operator)

source code 

str(x)

Overrides: object.__str__
(inherited documentation)

CheckInventory(self, name)

source code 

Do we have this file at all?

Search for it in either the cache or in the delegate.

Overrides: io_manager.IOManager.CheckInventory

GetData(self, name, **kwargs)

source code 
Get the data object stored at container member.

This returns an arbitrary python object which is stored in the named
container member. For example, normally a dict or list. This function
wraps the Open() method above and add deserialization to retrieve the
actual object.

Returns None if the file is not found.

Args:
  name: The name to retrieve the data under.
  raw: If specified we do not parse the data, simply return it as is.

Overrides: io_manager.IOManager.GetData
(inherited documentation)

StoreData(self, name, data, **options)

source code 
Stores the data in the named container member.

This serializes the data and stores it in the named member. Not all
types of data are serializable, so this may raise. For example, when
using JSON to store the data, arbitrary python objects may not be used.

Args:
  name: The name under which the data will be stored.
  data: The data to store.

Common options:
  raw: If true we write the data directly without encoding to json. In
    this case data should be a string.
  uncompressed: File will not be compressed (default gzip compression).

Overrides: io_manager.IOManager.StoreData
(inherited documentation)

ListFiles(self)

source code 

Returns a generator over all the files in this container.

Overrides: io_manager.IOManager.ListFiles
(inherited documentation)

ImplementationByClass(self, name)
Class Method

source code 
Overrides: io_manager.IOManager.ImplementationByClass

ImplementationByName(self, name)
Class Method

source code 
Overrides: io_manager.IOManager.ImplementationByName