Completed
Push — master ( 72b331...d4b7d2 )
by Steffen
02:14
created

BitSkinsSalesAdapter.search()   A

Complexity

Conditions 1

Size

Total Lines 8
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 2
dl 0
loc 8
rs 10
c 0
b 0
f 0
cc 1
nop 3
1
#!/usr/bin/python
2
# -*- coding: utf-8 -*-
3
4
from kuon.bitskins.api.interfaces import ISales
5
from kuon.watcher.adapters import SalesAdapterBase
6
from kuon.watcher.adapters.bitskins.parser import SearchResponseParser, SoldHistoryParser
7
8
9
class BitSkinsSalesAdapter(SalesAdapterBase):
10
    """Adapter for the Sales Interface of BitSkins"""
11
12
    def __init__(self, *args, **kwargs):
13
        """Initializing function
14
15
        :param args:
16
        :param kwargs:
17
        """
18
        super().__init__(*args, **kwargs)
19
        self.sales_interface = ISales(*args, **kwargs)
20
21
    def search(self, market_name, no_delay=False):
22
        """Implementation of the search function
23
24
        :param market_name:
25
        :param no_delay:
26
        :return:
27
        """
28
        return SearchResponseParser.parse(self.sales_interface.get_inventory_on_sale(market_hash_name=market_name))
29
30
    def get_sold_history(self, market_name, no_delay=False):
31
        """Implementation of get sold history function
32
33
        :param market_name:
34
        :param no_delay:
35
        :return:
36
        """
37
        search_results = self.search(market_name=market_name).data.market_items
38
        if search_results:
39
            market_name = search_results[0].market_name
40
41
        return SoldHistoryParser.parse(self.sales_interface.get_sales_info(market_hash_name=market_name))
42
43
    @staticmethod
44
    def get_item_link(item_id: str):
45
        """Generate the item link from the item id
46
47
        :param item_id:
48
        :return:
49
        """
50
        return "https://bitskins.com/view_item?item_id={0:s}".format(item_id)
51