1
0
mirror of https://github.com/esphome/esphome.git synced 2025-11-19 08:15:49 +00:00

Compare commits

..

1 Commits

Author SHA1 Message Date
J. Nick Koston
5c2cf9f37c [web_server_base] Replace shared_ptr with unique_ptr for AsyncWebServer 2025-11-18 16:10:07 -06:00
4 changed files with 15 additions and 9 deletions

View File

@@ -4,7 +4,8 @@
#include "esphome/core/automation.h"
#include "esphome/core/component.h"
namespace esphome::lock {
namespace esphome {
namespace lock {
template<typename... Ts> class LockAction : public Action<Ts...> {
public:
@@ -71,4 +72,5 @@ class LockUnlockTrigger : public Trigger<> {
}
};
} // namespace esphome::lock
} // namespace lock
} // namespace esphome

View File

@@ -3,7 +3,8 @@
#include "esphome/core/controller_registry.h"
#include "esphome/core/log.h"
namespace esphome::lock {
namespace esphome {
namespace lock {
static const char *const TAG = "lock";
@@ -107,4 +108,5 @@ LockCall &LockCall::set_state(const std::string &state) {
}
const optional<LockState> &LockCall::get_state() const { return this->state_; }
} // namespace esphome::lock
} // namespace lock
} // namespace esphome

View File

@@ -7,7 +7,8 @@
#include "esphome/core/preferences.h"
#include <initializer_list>
namespace esphome::lock {
namespace esphome {
namespace lock {
class Lock;
@@ -176,4 +177,5 @@ class Lock : public EntityBase {
ESPPreferenceObject rtc_;
};
} // namespace esphome::lock
} // namespace lock
} // namespace esphome

View File

@@ -111,7 +111,7 @@ class WebServerBase : public Component {
this->initialized_++;
return;
}
this->server_ = std::make_shared<AsyncWebServer>(this->port_);
this->server_ = std::make_unique<AsyncWebServer>(this->port_);
// All content is controlled and created by user - so allowing all origins is fine here.
DefaultHeaders::Instance().addHeader("Access-Control-Allow-Origin", "*");
this->server_->begin();
@@ -127,7 +127,7 @@ class WebServerBase : public Component {
this->server_ = nullptr;
}
}
std::shared_ptr<AsyncWebServer> get_server() const { return server_; }
AsyncWebServer *get_server() const { return this->server_.get(); }
float get_setup_priority() const override;
#ifdef USE_WEBSERVER_AUTH
@@ -143,7 +143,7 @@ class WebServerBase : public Component {
protected:
int initialized_{0};
uint16_t port_{80};
std::shared_ptr<AsyncWebServer> server_{nullptr};
std::unique_ptr<AsyncWebServer> server_{nullptr};
std::vector<AsyncWebHandler *> handlers_;
#ifdef USE_WEBSERVER_AUTH
internal::Credentials credentials_;