API

Converters

class xenops.data.converter.BaseConverter(attribute, service_attribute)[source]

Base converter

Service attribute can lookup and export nested data like:

# Service raw data
{
    'stock': {
        'level': 10
    }
}

# Mapping
service_attribute = 'stock.level'
export_attribute(data_object)[source]

Convert DataType data to service data

Parameters:data_object (xenops.data.DataType) –
Returns:
get_import_value(keys, data)[source]

Recursive function for getting data from service data dict

Parameters:
  • keys (str) –
  • data (dict) –
Returns:

import_attribute(data)[source]

Convert raw service data to DataType data

Parameters:data (dict) –
Returns:
class xenops.data.converter.Attribute(attribute, service_attribute)[source]

Bases: xenops.data.converter.BaseConverter

Default attribute converter

class xenops.data.converter.Mapper(attribute, service_attribute, mapping, use_default=False, import_default=None, export_default=None)[source]

Bases: xenops.data.converter.BaseConverter

Mapper attribute converter can be used to convert values to same base value example for gender:

# Mapping for some erp service
{
    'm': 1,
    'f': 2,
}

# Mapping for some e-commerce service
{
    'm': 'Male',
    'f': 'Female',
}
export_attribute(data_object)[source]

Get data from super and map value with mapping

Parameters:data_object
Returns:
import_attribute(data)[source]

Get data from super and map value with mapping

Parameters:data (dict) –
Returns: