code: func (p *simpleResourcePool) Register(resourceLocation string) error {
  	if resourceLocation == "" {
  		return errors.New("Invalid resource location")
  	}
  
  	p.mutex.Lock()
  	defer p.mutex.Unlock()
  
  	if p.isLameDuck {
  		return fmt.Errorf(
  			"cannot register %s to lame duck resource pool",
  			resourceLocation)
  	}
  
  	if p.location == "" {
  		p.location = resourceLocation
  		return nil
  	}
  	return errors.New("SimpleResourcePool can only register one location")
  }
docs: // SimpleResourcePool can only register a single (network, address) entry.
  // Register should be call before any Get calls.