/*
 * Copyright (c) 2014-2021, by Alex Leigh.
 * All rights reserved.
 *
 * THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE
 * The copyright notice above does not evidence any
 * actual or intended publication of such source code.
 */

package leigh.minecraft.link.sdk.schema.v1;

import leigh.eo.EO;

/**
* This is a dynamically generated DAO class for accessing objects within an ESP graph. This class
* has been generated by <code>DAOGenerator</code> and should not be modified.
*
* @author DAOGenerator (synthetically generated class)
*/
public final class ShopElementDAO {
public static final String API_TYPE = "leigh.minecraft.link.v1.Shop";

public static EO create() {
EO eo = new EO(API_TYPE);
return eo;
}

public static boolean assertType(final EO eo) {
return eo.getApiType().equals(API_TYPE);
}

public static final String KEY_X = "x";
public static final String KEY_Y = "y";
public static final String KEY_Z = "z";
public static final String KEY_OWNER = "owner";
public static final String KEY_WORLD = "world";
public static final String KEY_PRICE = "price";
public static final String KEY_ITEM = "item";
public static final String KEY_ENCHANTS = "enchants";

public static String apiType(final EO eo) {
return eo.getApiType();
}


/* EO{typeName='org.a6v.esp.eo.schema.Field', data={apiName=x, validators=EOLoop{array=[EO{typeName='org.a6v.esp.eo.schema.ValidatorNotEmpty', data={}}]} , label=EOLoop{array=[EO{typeName='leigh.esp.eo.schema.Text', data={text=X Coordinate, locale=en}}]} , type=string}} */


    
public static java.lang.String getX(EO eo) {
        if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
    return eo.getValueString(KEY_X);
    }

public static void setX(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValue(KEY_X, value);
}

public static void setXLabel(final EO eo,final String label) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setLabel(KEY_X, label);
}

public static void getLabelOrValueX(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.getLabelOrValue(KEY_X);
}

public static void setIfUnsetX(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValueIfUnset(KEY_X, value);
}


/* EO{typeName='org.a6v.esp.eo.schema.Field', data={apiName=y, validators=EOLoop{array=[EO{typeName='org.a6v.esp.eo.schema.ValidatorNotEmpty', data={}}]} , label=EOLoop{array=[EO{typeName='leigh.esp.eo.schema.Text', data={text=Y Coordinate, locale=en}}]} , type=string}} */


    
public static java.lang.String getY(EO eo) {
        if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
    return eo.getValueString(KEY_Y);
    }

public static void setY(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValue(KEY_Y, value);
}

public static void setYLabel(final EO eo,final String label) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setLabel(KEY_Y, label);
}

public static void getLabelOrValueY(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.getLabelOrValue(KEY_Y);
}

public static void setIfUnsetY(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValueIfUnset(KEY_Y, value);
}


/* EO{typeName='org.a6v.esp.eo.schema.Field', data={apiName=z, validators=EOLoop{array=[EO{typeName='org.a6v.esp.eo.schema.ValidatorNotEmpty', data={}}]} , label=EOLoop{array=[EO{typeName='leigh.esp.eo.schema.Text', data={text=Z Coordinate, locale=en}}]} , type=string}} */


    
public static java.lang.String getZ(EO eo) {
        if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
    return eo.getValueString(KEY_Z);
    }

public static void setZ(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValue(KEY_Z, value);
}

public static void setZLabel(final EO eo,final String label) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setLabel(KEY_Z, label);
}

public static void getLabelOrValueZ(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.getLabelOrValue(KEY_Z);
}

public static void setIfUnsetZ(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValueIfUnset(KEY_Z, value);
}


/* EO{typeName='org.a6v.esp.eo.schema.Field', data={apiName=owner, validators=EOLoop{array=[EO{typeName='org.a6v.esp.eo.schema.ValidatorNotEmpty', data={}}]} , label=EOLoop{array=[EO{typeName='leigh.esp.eo.schema.Text', data={text=Shop Owner, locale=en}}]} , type=uuid}} */


    
public static java.util.UUID getOwner(EO eo) {
        if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
    return eo.getValueUUID(KEY_OWNER);
    }

public static void setOwner(final EO eo, java.util.UUID value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValue(KEY_OWNER, value);
}

public static void setOwnerLabel(final EO eo,final String label) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setLabel(KEY_OWNER, label);
}

public static void getLabelOrValueOwner(final EO eo, java.util.UUID value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.getLabelOrValue(KEY_OWNER);
}

public static void setIfUnsetOwner(final EO eo, java.util.UUID value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValueIfUnset(KEY_OWNER, value);
}


/* EO{typeName='org.a6v.esp.eo.schema.Field', data={apiName=world, validators=EOLoop{array=[EO{typeName='org.a6v.esp.eo.schema.ValidatorNotEmpty', data={}}]} , label=EOLoop{array=[EO{typeName='leigh.esp.eo.schema.Text', data={text=World, locale=en}}]} , type=string}} */


    
public static java.lang.String getWorld(EO eo) {
        if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
    return eo.getValueString(KEY_WORLD);
    }

public static void setWorld(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValue(KEY_WORLD, value);
}

public static void setWorldLabel(final EO eo,final String label) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setLabel(KEY_WORLD, label);
}

public static void getLabelOrValueWorld(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.getLabelOrValue(KEY_WORLD);
}

public static void setIfUnsetWorld(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValueIfUnset(KEY_WORLD, value);
}


/* EO{typeName='org.a6v.esp.eo.schema.Field', data={apiName=price, validators=EOLoop{array=[EO{typeName='org.a6v.esp.eo.schema.ValidatorNotEmpty', data={}}]} , label=EOLoop{array=[EO{typeName='leigh.esp.eo.schema.Text', data={text=Item Price, locale=en}}]} , type=string}} */


    
public static java.lang.String getPrice(EO eo) {
        if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
    return eo.getValueString(KEY_PRICE);
    }

public static void setPrice(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValue(KEY_PRICE, value);
}

public static void setPriceLabel(final EO eo,final String label) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setLabel(KEY_PRICE, label);
}

public static void getLabelOrValuePrice(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.getLabelOrValue(KEY_PRICE);
}

public static void setIfUnsetPrice(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValueIfUnset(KEY_PRICE, value);
}


/* EO{typeName='org.a6v.esp.eo.schema.Field', data={apiName=item, validators=EOLoop{array=[EO{typeName='org.a6v.esp.eo.schema.ValidatorNotEmpty', data={}}]} , label=EOLoop{array=[EO{typeName='leigh.esp.eo.schema.Text', data={text=Item, locale=en}}]} , type=string}} */


    
public static java.lang.String getItem(EO eo) {
        if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
    return eo.getValueString(KEY_ITEM);
    }

public static void setItem(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValue(KEY_ITEM, value);
}

public static void setItemLabel(final EO eo,final String label) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setLabel(KEY_ITEM, label);
}

public static void getLabelOrValueItem(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.getLabelOrValue(KEY_ITEM);
}

public static void setIfUnsetItem(final EO eo, java.lang.String value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValueIfUnset(KEY_ITEM, value);
}


/* EO{typeName='org.a6v.esp.eo.schema.Field', data={apiName=enchants, label=EOLoop{array=[EO{typeName='leigh.esp.eo.schema.Text', data={text=Enchantments, locale=en}}]} , type=loop}} */


    
public static leigh.eo.EOLoop getEnchants(EO eo) {
        if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
    return eo.getValueLoop(KEY_ENCHANTS);
    }

public static void setEnchants(final EO eo, leigh.eo.EOLoop value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValue(KEY_ENCHANTS, value);
}

public static void setEnchantsLabel(final EO eo,final String label) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setLabel(KEY_ENCHANTS, label);
}

public static void getLabelOrValueEnchants(final EO eo, leigh.eo.EOLoop value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.getLabelOrValue(KEY_ENCHANTS);
}

public static void setIfUnsetEnchants(final EO eo, leigh.eo.EOLoop value) {
if(!assertType(eo)) throw new IllegalArgumentException("Mismatched EO type: [found: " + eo.getApiType() + "] [expected: " + API_TYPE + "]");
eo.setValueIfUnset(KEY_ENCHANTS, value);
}


}