Skip to content

File Uri.h

File List > arduino > libraries > ext > WebServer > Uri.h

Go to the documentation of this file.

#pragma once

#include <Arduino.h>
#include <vector>

class Uri {

  protected:
    const String _uri;

  public:
    Uri(const char *uri) : _uri(uri) {}

    Uri(const String &uri) : _uri(uri) {}

    Uri(const __FlashStringHelper *uri) : _uri(String(uri)) {}

    virtual ~Uri() {}

    virtual Uri *clone() const {
        return new Uri(_uri);
    };

    virtual void initPathArgs(__attribute__((unused)) std::vector<String> &pathArgs) {}

    virtual bool canHandle(const String &requestUri, __attribute__((unused)) std::vector<String> &pathArgs) {
        return _uri == requestUri;
    }
};