code: func (d *driver) Join(nid, eid string, sboxKey string, jinfo driverapi.JoinInfo, options map[string]interface{}) error {
  	network, err := d.getNetwork(nid)
  	if err != nil {
  		return err
  	}
  
  	// Ensure that the endpoint exists
  	endpoint, err := network.getEndpoint(eid)
  	if err != nil {
  		return err
  	}
  
  	err = jinfo.SetGateway(endpoint.gateway)
  	if err != nil {
  		return err
  	}
  
  	endpoint.sandboxID = sboxKey
  
  	err = hcsshim.HotAttachEndpoint(endpoint.sandboxID, endpoint.profileID)
  	if err != nil {
  		// If container doesn't exists in hcs, do not throw error for hot add/remove
  		if err != hcsshim.ErrComputeSystemDoesNotExist {
  			return err
  		}
  	}
  
  	jinfo.DisableGatewayService()
  	return nil
  }
docs: // Join method is invoked when a Sandbox is attached to an endpoint.