code: function(localPropOnly) {
      if (this.ctlWrapper) {
        this.ctlWrapper.$dispose();
        this.ctlWrapper=null;
        this.controller=null;
      }
      this.ctlAttributes=null;
      this.cleanObjectProperties(localPropOnly);
      this.ctlConstuctor=null;
      var tpa=this.tplAttributes;
      if (tpa) {
        for (var k in tpa) {
          if (tpa.hasOwnProperty(k)) {
            tpa[k].$dispose();
          }
        }
      }
      var ag=this._attGenerators;
      if (ag) {
        for (var k in ag) {
          if (ag.hasOwnProperty(k)) {
            ag[k].$dispose();
          }
        }
      }
      var en=this.attEltNodes;
      if (en) {
        for (var i=0,sz=en.length; sz>i; i++) {
          en[i].$dispose();
        }
        this.attEltNodes=null;
      }
    }
docs: Safely cut all dependencies before object is deleted
  @param {Boolean} localPropOnly if true only local properties will be deleted (optional)
  must be used when a new instance is created to adapt to a path change