FoodWaveTemplateBase.as 3.42 KB
/**
 * Generated by Gas3 v2.1.0 (Granite Data Services).
 *
 * WARNING: DO NOT CHANGE THIS FILE. IT MAY BE OVERWRITTEN EACH TIME YOU USE
 * THE GENERATOR. INSTEAD, EDIT THE INHERITED CLASS (FoodWaveTemplate.as).
 */

package fi.insomnia.bortal.model {

    import flash.utils.IDataInput;
    import flash.utils.IDataOutput;
    import flash.utils.IExternalizable;
    import mx.collections.ListCollectionView;
    import org.granite.collections.IPersistentCollection;
    import org.granite.meta;

    use namespace meta;

    [Bindable]
    public class FoodWaveTemplateBase implements IExternalizable, EventChildInterface {

        private var __initialized:Boolean = true;
        private var __detachedState:String = null;

        private var _description:String;
        private var _id:EventPk;
        private var _jpaVersionField:int;
        private var _name:String;
        private var _products:ListCollectionView;

        meta function isInitialized(name:String = null):Boolean {
            if (!name)
                return __initialized;

            var property:* = this[name];
            return (
                (!(property is FoodWaveTemplate) || (property as FoodWaveTemplate).meta::isInitialized()) &&
                (!(property is IPersistentCollection) || (property as IPersistentCollection).isInitialized())
            );
        }

        public function set description(value:String):void {
            _description = value;
        }
        public function get description():String {
            return _description;
        }

        public function set id(value:EventPk):void {
            _id = value;
        }
        public function get id():EventPk {
            return _id;
        }

        public function set jpaVersionField(value:int):void {
            _jpaVersionField = value;
        }
        public function get jpaVersionField():int {
            return _jpaVersionField;
        }

        public function set name(value:String):void {
            _name = value;
        }
        public function get name():String {
            return _name;
        }

        public function set products(value:ListCollectionView):void {
            _products = value;
        }
        public function get products():ListCollectionView {
            return _products;
        }

        public function readExternal(input:IDataInput):void {
            __initialized = input.readObject() as Boolean;
            __detachedState = input.readObject() as String;
            if (meta::isInitialized()) {
                _description = input.readObject() as String;
                _id = input.readObject() as EventPk;
                _jpaVersionField = input.readObject() as int;
                _name = input.readObject() as String;
                _products = input.readObject() as ListCollectionView;
            }
            else {
                _id = input.readObject() as EventPk;
            }
        }

        public function writeExternal(output:IDataOutput):void {
            output.writeObject(__initialized);
            output.writeObject(__detachedState);
            if (meta::isInitialized()) {
                output.writeObject(_description);
                output.writeObject(_id);
                output.writeObject(_jpaVersionField);
                output.writeObject(_name);
                output.writeObject(_products);
            }
            else {
                output.writeObject(_id);
            }
        }
    }
}