code: func (l *lockServer) Lock(args *dsync.LockArgs, reply *bool) error {
  	l.mutex.Lock()
  	defer l.mutex.Unlock()
  	_, *reply = l.lockMap[args.Resource]
  	if !*reply { // No locks held on the given name, so claim write lock
  		l.lockMap[args.Resource] = []lockRequesterInfo{
  			{
  				writer:        true,
  				serverAddr:    args.ServerAddr,
  				rpcPath:       args.ServiceEndpoint,
  				uid:           args.UID,
  				timestamp:     time.Now().UTC(),
  				timeLastCheck: time.Now().UTC(),
  			},
  		}
  	}
  	*reply = !*reply // Negate *reply to return true when lock is granted or false otherwise
  	return nil
  }
docs: // Lock - rpc handler for (single) write lock operation.