package com.alterdekim.game.component.game.avatar;

import com.alterdekim.game.xml.BodyPartTypeSerializer;
import com.alterdekim.game.xml.LayerIdSerializer;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;

public interface IBodyAvatarItem {
    @JacksonXmlProperty(localName = "BodyPartTypeId", isAttribute = true)
    @JsonSerialize(using = BodyPartTypeSerializer.class)
    Object getBodyPartTypeId();

    @JacksonXmlProperty(localName = "Id", isAttribute = true)
    Long getId();

    @JacksonXmlProperty(localName = "Color", isAttribute = true)
    Integer getColor();

    @JacksonXmlProperty(localName = "IsBodyPart", isAttribute = true)
    Integer getIsBodyPart();

    @JacksonXmlProperty(localName = "BodyPartId", isAttribute = true)
    Integer getBodyPartId();

    @JacksonXmlProperty(localName = "GoodID", isAttribute = true)
    Long getGoodId();

    @JacksonXmlProperty(localName = "MediaResourceID", isAttribute = true)
    Integer getMediaResourceId();

    @JacksonXmlProperty(localName = "LayerID", isAttribute = true)
    @JsonSerialize(using = LayerIdSerializer.class)
    Object getLayerId();

    @JacksonXmlProperty(localName = "GoodTypeID", isAttribute = true)
    Integer getGoodTypeId();
}
