SimsWorld/ComponentBasic/ComponentsInfoPull.h

30 lines
965 B
C
Raw Permalink Normal View History

2025-06-08 12:17:02 +00:00
#pragma once
2025-06-28 17:38:37 +00:00
#include <componentinfo_access.h>
2025-06-08 12:17:02 +00:00
#include "componentbasic.h"
2025-06-10 06:21:55 +00:00
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ȡ
/// </summary>
2025-06-28 17:38:37 +00:00
class COMPONENTBASIC_EXPORT ComponentsInfoPull :
public RespondRoute<
2025-06-10 12:39:10 +00:00
WsRespond<ComponentDatasQuery, ComponentDatasQueryResult>,
2025-06-28 17:38:37 +00:00
WsRespond<ProcedureSignatureQuery, ProcedureSignatureQueryResult>>,
public RequestRoute<>
{
2025-06-08 12:17:02 +00:00
private:
std::weak_ptr<WsEntity> _bind_entity;
public:
ComponentsInfoPull();
// ͨ<><CDA8> ProcList <20>̳<EFBFBD>
void bindEntity(std::weak_ptr<WsEntity> ins) override;
QString name() const override;
2025-06-28 17:38:37 +00:00
void execute(std::shared_ptr<const ComponentDatasQuery> in, QList<std::shared_ptr<ComponentDatasQueryResult>>& out) override;
void execute(std::shared_ptr<const ProcedureSignatureQuery> in, QList<std::shared_ptr<ProcedureSignatureQueryResult>>& out) override;
2025-06-08 12:17:02 +00:00
2025-06-28 17:38:37 +00:00
std::shared_ptr<Serializable> newDefault() const override;
2025-06-08 12:17:02 +00:00
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};