1 Reply Latest reply on Feb 23, 2009 5:54 AM by SujitG

    SharedObject and ValueObject

    Bilbo1984 Level 1
      hi,

      i've created a custom value object class..a simple class with private
      properties and getters methods to retrieve them.

      public class WindowInfo
      {

      private var _id:String;

      private var _module:String

      private var _xpos:int;

      private var _ypos:int;

      private var _width:int;

      private var _height:int;

      public function WindowInfo(id:String, module:String, xpos:int,
      ypos:int, width:int, height:int)
      {
      this._id = id;
      this._module = module;
      this._xpos = xpos;
      this._ypos = ypos;
      this._width = width;
      this._height = height;
      }

      public function get id():String {
      return _id;
      }

      public function get module():String {
      return _module;
      }

      public function get xpos():int {
      return _xpos;
      }

      public function get ypos():int {
      return _ypos;
      }

      public function get width():int {
      return _width;
      }

      public function get height():int {
      return _height;
      }
      }

      then i created an array collection where each item is an istance of
      value object.
      then i have a shared object manager that looks like this:

      package util{

      import flash.net.SharedObject;

      import mx.collections.ArrayCollection;

      public class SharedObjectApplicationManager {

      private var mySO:SharedObject;
      private var ac:ArrayCollection;
      private var lsoType:String;

      public function SharedObjectApplicationManager(s:String) {
      init(s);
      }

      private function init(s:String):void {
      mySO = SharedObject.getLocal(s);
      if (getf()) {
      getf();
      }
      }

      public function getf():ArrayCollection {
      return mySO.data.arrayc;
      }

      private function adda(array:ArrayCollection):void {
      mySO.data.arrayc = new ArrayCollection();
      mySO.data.arrayc = array;
      mySO.flush();
      }
      }
      }

      so when i try to get arraycollection with getf method i get an
      arraycollection of generic objects…not with windowinfo objects..in
      this manner i can't get value properties of value object class.

      so i would use registerClassAlias("Info", WindowInfo) where WindowInfo
      is the VO..but where?

      the architecture of my app is:

      -main application (verify the shared object, if full then call a
      public function of canvas to create windows with specific parameters
      saved in windowinfo class)
      –canvas (contains one or more windows)

      any suggestions?

      Thanks in advance

      Regards Lorenzo