module Amazon.Item
( itemSearch
, itemLookup
, module Amazon.Types.Item
) where
import Data.Text as T
import Data.XML.Pickle
import Amazon
import Amazon.Types.Item
itemSearch :: Text -> SearchIndex -> [ResponseGroup] -> Condition ->
Maybe Int -> Maybe Int -> AmazonT (OperationRequest, [Item])
itemSearch keyword si res cond max min = amazonGet "ItemSearch" req xpSearch
where req = ItemSearchRequest cond keyword res si max min
xpSearch = xpElemNodes (nsName "Items") $ xpClean $
xpFindMatches $ xpElemNodes (nsName "Item") xpItem
itemLookup :: ItemID -> IdType -> [ResponseGroup] -> Condition ->
AmazonT (OperationRequest, Item)
itemLookup iid iType resGroup cond = amazonGet "ItemLookup" req xpLookup
where req = ItemLookupRequest cond iType iid resGroup VPAll
xpLookup = xpElemNodes (nsName "Items") $ xpClean $
xpElemNodes (nsName "Item") xpItem