code: function DevAdapter (controller) {
      this.id        = controller.svc;
      this.uid       = "//" + controller.svcopts.adapter + "/" + controller.svc + "@" +  controller.svcopts.hostname + ":" +controller.svcopts.remport;
      this.info      = 'AisProxyNmea';
      this.control   = 'tcpfeed';          // this adapter connect onto a remote server 
      this.debug     = controller.svcopts.debug;    // inherit debug from controller
      this.cleanup   = controller.svcopts.cleanup || 600;    // inherit debug from controller
      this.controller= controller;          // keep a link to device controller and TCP socket
      this.gateway   = controller.gateway;
      this.Debug (1,"uid=%s", this.uid);
      this.session   = {}; // special object to store AIS multipart messages
      this.vessels   = []; // cache for vessel positions
      
      this.event = controller.gateway.backend.event; // hook backend event handler
      SetGarbage (this, this.cleanup);
  }
docs: Adapter is an object own by a given device controller that handle data connection