darcs-2.12.5: a distributed, interactive, smart revision control system

Safe HaskellSafe
LanguageHaskell2010

Darcs.Util.Download.Request

Synopsis

Documentation

data UrlRequest Source #

A UrlRequest object contains a url to get, the file into which the contents at the given url should be written, the cachability of this request and the request's priority.

Constructors

UrlRequest 

data UrlState Source #

A UrlState object contains a map of url -> InProgressStatus, a Q of urls waiting to be started, the current pipe length and the unique junk to create unique filenames.

Constructors

UrlState 

Fields

data Q a Source #

Q represents a prioritised queue, with two-tier priority. The left list contains higher priority items than the right list.

Constructors

Q [a] [a] 

readQ :: Q a -> Maybe (a, Q a) Source #

readQ will try and take an element from the Q, preferring elements from the high priority list.

insertQ :: a -> Q a -> Q a Source #

insertQ inserts a low priority item into a Q.

pushQ :: a -> Q a -> Q a Source #

pushQ inserts a high priority item into a Q.

addUsingPriority :: Priority -> a -> Q a -> Q a Source #

Return a function for adding an element based on the priority.

deleteQ :: Eq a => a -> Q a -> Q a Source #

deleteQ removes any instances of a given element from the Q.

elemQ :: Eq a => a -> Q a -> Bool Source #

deleteQ checks for membership in a Q.

emptyQ :: Q a Source #

emptyQ is an empty Q.

nullQ :: Q a -> Bool Source #

nullQ checks if the Q contains no items.

data Priority Source #

Constructors

High 
Low 

Instances

data ConnectionError Source #

Data type to represent a connection error. The following are the codes from libcurl which map to each of the constructors: * 6 -> CouldNotResolveHost : The remote host was not resolved. * 7 -> CouldNotConnectToServer : Failed to connect() to host or proxy. * 28 -> OperationTimeout: the specified time-out period was reached.