Sirikata
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
Sirikata::Transfer Namespace Reference

Namespaces

namespace  Filesystem

Classes

class  AggregatedTransferPool
 AggregatedTransferPool manages multiple requests for the same resource. More...
class  CacheLayer
 Base class for cache layer--will try a next cache and respond with the data to any previous cache layers so they can store that data as well. More...
class  CacheMap
 Handles locking, and also stores a map that can be used both by the CachePolicy, and by the CacheLayer. More...
class  CachePolicy
 Critical to the functioning of CacheLayer--makes decisions which pieces of data to keep and which to throw out. More...
class  DataNameHandler
class  DataChunkHandler
class  DataURI
 Data URIs encode data directly instead of referring to an external resource. More...
class  DiskCacheLayer
 Disk Cache keeps track of what files are on disk, and manages a helper thread to retrieve it. More...
class  DiskManager
class  FileNameHandler
class  FileChunkHandler
class  HttpManager
class  HttpNameHandler
class  HttpChunkHandler
class  LRUPolicy
 Simple LRU policy--does not do any ordering by size. More...
class  MaxPriorityAggregation
class  MeerkatNameHandler
class  MeerkatChunkHandler
class  MeerkatUploadHandler
class  MemoryCacheLayer
 MemoryCacheLayer is usually the first layer in the cache--simple map from FileId to SparseData. More...
class  OAuthHttpManager
 Wrapper around HttpManager which signs requests as an OAuth consumer. More...
class  OAuthParams
 Immutable collection of parameters used for signing oauth requests. More...
class  Range
 Range identifier -- specifies two segments of a file. More...
class  Chunk
class  RemoteFileMetadata
 Container for all of the metadata associated with a remote file. More...
class  ResourceDownloadTask
 ResourceDownloadTask is a helper class for downloading an entire resource. More...
class  DenseData
 Represents a single block of data, and also knows the range of the file it came from. More...
class  DenseDataList
class  SparseData
 Represents a series of DenseData. Often you may have adjacent DenseData. More...
class  NameHandler
class  ChunkHandler
class  UploadHandler
class  SharedChunkCache
class  TransferMediator
class  PriorityAggregationAlgorithm
class  TransferPool
 Pools are the conduits for requests to get into the TransferMediator for processing. More...
class  SimpleTransferPool
 Simplest implementation of TransferPool. More...
class  TransferRequest
class  MetadataRequest
class  DirectChunkRequest
class  ChunkRequest
class  UploadRequest
 Upload requests allow you to upload content to the CDN and retrieve their URL when the upload is complete. More...
class  URI
 A URI is very generic: it is only assumed to have a scheme, a colon, and a scheme specific part. More...
class  URLContext
 Contains the current directory, hostname, protocol and user. More...
class  URL
 URL stores both a url string as well as a Fingerprint to verify it. More...

Typedefs

typedef std::tr1::function
< void(const SparseData *) 
TransferCallback )
 Cache callback function passed into CacheLayer::getData.
typedef std::tr1::shared_ptr
< TransferPool
TransferPoolPtr
typedef std::tr1::shared_ptr
< ChunkRequest
ChunkRequestPtr
typedef SHA256 Fingerprint
 simple file ID class--should make no assumptions about which hash.
typedef float32 Priority
typedef std::tr1::shared_ptr
< OAuthParams
OAuthParamsPtr
typedef uint64 cache_usize_type
typedef int64 cache_ssize_type
typedef std::list< RangeRangeList
 Simple list of ranges (to be used by Range::isContainedBy and Range::addToList)
typedef uint64 size_type
typedef std::list< ChunkChunkList
typedef std::map< std::string,
std::string > 
FileHeaders
typedef std::tr1::shared_ptr
< RemoteFileMetadata
RemoteFileMetadataPtr
typedef std::tr1::shared_ptr
< ResourceDownloadTask
ResourceDownloadTaskPtr
typedef std::tr1::weak_ptr
< ResourceDownloadTask
ResourceDownloadTaskWPtr
typedef std::tr1::shared_ptr
< DenseData
MutableDenseDataPtr
typedef std::tr1::shared_ptr
< const DenseData
DenseDataPtr
typedef std::tr1::shared_ptr
< TransferRequest
TransferRequestPtr
typedef std::tr1::shared_ptr
< MetadataRequest
MetadataRequestPtr
typedef std::tr1::shared_ptr
< DirectChunkRequest
DirectChunkRequestPtr
typedef std::tr1::shared_ptr
< UploadRequest
UploadRequestPtr

Enumerations

enum  Initializer { LENGTH, BOUNDS }

Functions

std::ostream & operator<< (std::ostream &str, const DataURI &uri)
std::ostream & operator<< (std::ostream &str, const URI &uri)
std::ostream & operator<< (std::ostream &str, const URLContext &urlctx)
 Display both the URL string and the corresponding Fingerprint.
std::ostream & operator<< (std::ostream &str, const URL &url)
 Display both the URL string (including its context).

Variables

static const cache_usize_type terabyte = 1000000000000LL
static const cache_usize_type gigabyte = 1000000000
static const cache_usize_type megabyte = 1000000
static const cache_usize_type kilobyte = 1000

Typedef Documentation

typedef std::tr1::shared_ptr< ChunkRequest > Sirikata::Transfer::ChunkRequestPtr
typedef std::tr1::shared_ptr<const DenseData> Sirikata::Transfer::DenseDataPtr
typedef std::map<std::string, std::string> Sirikata::Transfer::FileHeaders

simple file ID class--should make no assumptions about which hash.

typedef std::tr1::shared_ptr<DenseData> Sirikata::Transfer::MutableDenseDataPtr
typedef std::tr1::shared_ptr<OAuthParams> Sirikata::Transfer::OAuthParamsPtr

Simple list of ranges (to be used by Range::isContainedBy and Range::addToList)

typedef std::tr1::function<void(const SparseData*) Sirikata::Transfer::TransferCallback)

Cache callback function passed into CacheLayer::getData.

Parameters:
SparseDataPtrcontains all data in the file this cache knows about. SparseDataPtr is guaranteed to contain the requested block, but it may be seprated into adjacent DenseData pieces.
typedef std::tr1::shared_ptr< TransferPool > Sirikata::Transfer::TransferPoolPtr
typedef std::tr1::shared_ptr<UploadRequest> Sirikata::Transfer::UploadRequestPtr

Enumeration Type Documentation

Enumerator:
LENGTH 
BOUNDS 

Function Documentation

std::ostream& Sirikata::Transfer::operator<< ( std::ostream &  str,
const DataURI &  uri 
) [inline]
std::ostream& Sirikata::Transfer::operator<< ( std::ostream &  str,
const URL &  url 
) [inline]

Display both the URL string (including its context).

References Sirikata::Transfer::URL::toString().

std::ostream& Sirikata::Transfer::operator<< ( std::ostream &  str,
const URLContext &  urlctx 
) [inline]

Display both the URL string and the corresponding Fingerprint.

References Sirikata::Transfer::URLContext::toString().

std::ostream& Sirikata::Transfer::operator<< ( std::ostream &  str,
const URI &  uri 
) [inline]

Variable Documentation