@Override
  public ByteBuffer processStorageCommand(String key, byte[] value, int flags, Cache cache) {
    Region<Object, ValueWrapper> r = getMemcachedRegion(cache);
    Object oldVal = r.putIfAbsent(key, ValueWrapper.getWrappedValue(value, flags));
    String reply = null;
    if (oldVal == null) {
      reply = Reply.STORED.toString();
    } else {
      reply = Reply.NOT_STORED.toString();
    }
    return asciiCharset.encode(reply);
  }
general format of the command is: <command name> <key> <flags> <exptime> <bytes> [noreply]\r\n

"add" means "store this data, but only if the server *doesn't* already hold data for this key".
geode-memcached/src/main/java/org/apache/geode/internal/memcached/commands/AddCommand.java