Diff to HTML by rtfpessoa

{baseline/home/runner/work/ThunderTools/ThunderTools/ghpages_baseline/PluginSkeletonGenerator/master/latest_raw/OutOfProcessConfig → generated/artifacts/PluginSkeleton-OutOfProcessConfig}/OutOfProcessConfig.cpp RENAMED
@@ -26,7 +26,7 @@ namespace Plugin {
26
26
 
27
27
  namespace {
28
28
 
29
- static Metadata<OutOfProcessConfig>metadata(
29
+ static Metadata<OutOfProcessConfig> metadata(
30
30
  // Version
31
31
  1, 0, 0,
32
32
  // Preconditions
@@ -119,10 +119,11 @@ namespace Plugin {
119
119
  if (interfaceId == Exchange::INetworkControl::INotification::ID) {
120
120
  auto* revokedInterface = remote->QueryInterface<Exchange::INetworkControl::INotification>();
121
121
  if (revokedInterface) {
122
- _implNetworkControl->Unregister(revokedInterface);
122
+ _implNetworkControl->Unregister(const_cast<Exchange::INetworkControl::INotification*>(revokedInterface));
123
123
  revokedInterface->Release();
124
124
  }
125
125
  }
126
+
126
127
  }
127
128
 
128
129
  } // Plugin
{baseline/home/runner/work/ThunderTools/ThunderTools/ghpages_baseline/PluginSkeletonGenerator/master/latest_raw/OutOfProcessConfig → generated/artifacts/PluginSkeleton-OutOfProcessConfig}/OutOfProcessConfig.h RENAMED
@@ -44,6 +44,7 @@ namespace Plugin {
44
44
  }
45
45
 
46
46
  ~OutOfProcessConfig() override = default;
47
+ private:
47
48
  class Notification : public RPC::IRemoteConnection::INotification, public PluginHost::IShell::ICOMLink::INotification, public Exchange::INetworkControl::INotification {
48
49
  public:
49
50
  Notification(const Notification&) = delete;
{baseline/home/runner/work/ThunderTools/ThunderTools/ghpages_baseline/PluginSkeletonGenerator/master/latest_raw/OutOfProcessConfig → generated/artifacts/PluginSkeleton-OutOfProcessConfig}/OutOfProcessConfigImplementation.cpp RENAMED
@@ -19,11 +19,12 @@
19
19
 
20
20
  #include "Module.h"
21
21
  #include <interfaces/INetworkControl.h>
22
+ #include <interfaces/IConfiguration.h>
22
23
 
23
24
  namespace Thunder {
24
25
  namespace Plugin {
25
26
 
26
- class OutOfProcessConfigImplementation : public Exchange::INetworkControl {
27
+ class OutOfProcessConfigImplementation : public Exchange::IConfiguration, public Exchange::INetworkControl {
27
28
  public:
28
29
  OutOfProcessConfigImplementation(const OutOfProcessConfigImplementation&) = delete;
29
30
  OutOfProcessConfigImplementation& operator=(const OutOfProcessConfigImplementation&) = delete;
@@ -60,13 +61,17 @@ namespace Plugin {
60
61
  public:
61
62
 
62
63
  BEGIN_INTERFACE_MAP(OutOfProcessConfigImplementation)
64
+ INTERFACE_ENTRY(Exchange::IConfiguration)
63
65
  INTERFACE_ENTRY(Exchange::INetworkControl)
64
66
  END_INTERFACE_MAP
65
67
 
68
+ // Type aliases copied from interface headers
69
+ using INetworkInfoIterator = RPC::IIteratorType<NetworkInfo, ID_NETWORKCONTROL_NETWORK_INFO_ITERATOR>;
70
+ using IStringIterator = RPC::IIteratorType<string, RPC::ID_STRINGITERATOR>;
71
+
66
72
  // INetworkControl methods
67
73
 
68
74
  uint32_t Register(Exchange::INetworkControl::INotification* notification) override {
69
-
70
75
  ASSERT(notification != nullptr);
71
76
 
72
77
  _adminLock.Lock();
@@ -79,11 +84,10 @@ namespace Plugin {
79
84
  }
80
85
 
81
86
  _adminLock.Unlock();
82
-
87
+ return Core::ERROR_NONE;
83
88
  }
84
89
 
85
- uint32_t Unregister(const Exchange::INetworkControl::INotification* notification) override {
86
-
90
+ uint32_t Unregister(Exchange::INetworkControl::INotification* notification) override {
87
91
  ASSERT(notification != nullptr);
88
92
 
89
93
  _adminLock.Lock();
@@ -95,7 +99,7 @@ namespace Plugin {
95
99
  notification->Release();
96
100
  }
97
101
  _adminLock.Unlock();
98
-
102
+ return Core::ERROR_NONE;
99
103
  }
100
104
 
101
105
  uint32_t Interfaces(IStringIterator*& /* interfaces */ /* @out */) const override {
@@ -133,6 +137,14 @@ namespace Plugin {
133
137
  uint32_t Flush(const string& /* interface */) override {
134
138
  return Core::ERROR_NONE;
135
139
  }
140
+
141
+ uint32_t Configure(PluginHost::IShell* service) override {
142
+ ASSERT(service != nullptr);
143
+ Config config;
144
+ config.FromString(service->ConfigLine());
145
+ TRACE(Trace::Information, (_T("This is just an example: [%s]"), config.Example.Value.c_str()));
146
+ return Core::ERROR_NONE;
147
+ }
136
148
  private:
137
149
  using NetworkControlNotificationContainer = std::vector<Exchange::INetworkControl::INotification*>;
138
150