Line data Source code
1 : /*
2 : * Copyright (c) 2025 Project CHIP Authors
3 : * All rights reserved.
4 : *
5 : * Licensed under the Apache License, Version 2.0 (the "License");
6 : * you may not use this file except in compliance with the License.
7 : * You may obtain a copy of the License at
8 : *
9 : * http://www.apache.org/licenses/LICENSE-2.0
10 : *
11 : * Unless required by applicable law or agreed to in writing, software
12 : * distributed under the License is distributed on an "AS IS" BASIS,
13 : * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 : * See the License for the specific language governing permissions and
15 : * limitations under the License.
16 : */
17 : #include <app/server-cluster/testing/EmptyProvider.h>
18 :
19 : namespace chip {
20 : namespace Test {
21 :
22 : using Protocols::InteractionModel::Status;
23 : using namespace chip::app;
24 : using namespace chip::app::DataModel;
25 :
26 0 : CHIP_ERROR EmptyProvider::Endpoints(ReadOnlyBufferBuilder<app::DataModel::EndpointEntry> & builder)
27 : {
28 0 : return CHIP_NO_ERROR;
29 : }
30 :
31 0 : CHIP_ERROR EmptyProvider::SemanticTags(EndpointId endpointId, ReadOnlyBufferBuilder<SemanticTag> & builder)
32 : {
33 0 : return CHIP_IM_GLOBAL_STATUS(UnsupportedEndpoint);
34 : }
35 0 : CHIP_ERROR EmptyProvider::DeviceTypes(EndpointId endpointId, ReadOnlyBufferBuilder<app::DataModel::DeviceTypeEntry> & builder)
36 : {
37 0 : return CHIP_IM_GLOBAL_STATUS(UnsupportedEndpoint);
38 : }
39 :
40 0 : CHIP_ERROR EmptyProvider::EventInfo(const app::ConcreteEventPath & path, app::DataModel::EventEntry & eventInfo)
41 : {
42 : // no events in empty providers as there are no clusters
43 0 : return CHIP_IM_GLOBAL_STATUS(UnsupportedEndpoint);
44 : }
45 :
46 0 : CHIP_ERROR EmptyProvider::ClientClusters(EndpointId endpointId, ReadOnlyBufferBuilder<ClusterId> & builder)
47 : {
48 0 : return CHIP_IM_GLOBAL_STATUS(UnsupportedEndpoint);
49 : }
50 0 : CHIP_ERROR EmptyProvider::ServerClusters(EndpointId endpointId, ReadOnlyBufferBuilder<app::DataModel::ServerClusterEntry> & builder)
51 : {
52 0 : return CHIP_IM_GLOBAL_STATUS(UnsupportedEndpoint);
53 : }
54 :
55 0 : CHIP_ERROR EmptyProvider::Attributes(const app::ConcreteClusterPath & path,
56 : ReadOnlyBufferBuilder<app::DataModel::AttributeEntry> & builder)
57 : {
58 0 : return CHIP_IM_GLOBAL_STATUS(UnsupportedEndpoint);
59 : }
60 :
61 : #if CHIP_CONFIG_USE_ENDPOINT_UNIQUE_ID
62 : CHIP_ERROR EmptyProvider::EndpointUniqueID(EndpointId endpointId, MutableCharSpan & epUniqueId)
63 : {
64 : return CHIP_IM_GLOBAL_STATUS(UnsupportedEndpoint);
65 : }
66 : #endif
67 :
68 0 : CHIP_ERROR EmptyProvider::GeneratedCommands(const app::ConcreteClusterPath & path, ReadOnlyBufferBuilder<CommandId> & builder)
69 : {
70 0 : return CHIP_IM_GLOBAL_STATUS(UnsupportedEndpoint);
71 : }
72 :
73 0 : CHIP_ERROR EmptyProvider::AcceptedCommands(const app::ConcreteClusterPath & path,
74 : ReadOnlyBufferBuilder<app::DataModel::AcceptedCommandEntry> & builder)
75 : {
76 0 : return CHIP_IM_GLOBAL_STATUS(UnsupportedEndpoint);
77 : }
78 :
79 0 : void EmptyProvider::Temporary_ReportAttributeChanged(const app::AttributePathParams & path) {}
80 :
81 0 : ActionReturnStatus EmptyProvider::ReadAttribute(const app::DataModel::ReadAttributeRequest & request,
82 : app::AttributeValueEncoder & encoder)
83 : {
84 0 : return Status::UnsupportedEndpoint;
85 : }
86 :
87 0 : ActionReturnStatus EmptyProvider::WriteAttribute(const app::DataModel::WriteAttributeRequest & request,
88 : app::AttributeValueDecoder & decoder)
89 : {
90 0 : return Status::UnsupportedEndpoint;
91 : }
92 0 : std::optional<ActionReturnStatus> EmptyProvider::InvokeCommand(const app::DataModel::InvokeRequest & request,
93 : chip::TLV::TLVReader & input_arguments,
94 : app::CommandHandler * handler)
95 : {
96 0 : return Status::UnsupportedEndpoint;
97 : }
98 :
99 : } // namespace Test
100 : } // namespace chip
|