You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
RDKEMW-11903: Add custom coding guidelines for entservices-repos
Reason for change: To enhance copilot reviews using repo specific guidelines
Test Procedure:NA
Risks: Low
version: Patch
Signed-off-by: Soundaryaa [email protected]
@@ -82,7 +82,7 @@ If the plugin includes <interfaces/IPluginName*.h>, <interfaces/JsonData_PluginN
82
82
83
83
These autogenerated stubs are the Exchange::J* C++ classes (for example, Exchange::JHdcpProfile and JsonData_HdcpProfile.h) that are produced by the Thunder JSON‑RPC code generator from the IPluginName* interface headers; they expose the C++ interface over JSON‑RPC so you do not have to call Register() for each method manually.
84
84
85
-
Plugins using autogenerated JSON-RPC stubs (Exchange::J* classes) must register and unregister them in Initialize() and Deinitialize() methods.It should not be done in constructor and destructor.
85
+
Plugins using autogenerated JSON-RPC stubs (Exchange::J* classes) must register and unregister them in Initialize() and Deinitialize() methods. Do not register or unregister them in the constructor or destructor.
86
86
87
87
In Initialize():
88
88
@@ -113,7 +113,7 @@ RDKShell::RDKShell()
113
113
114
114
### Requirement
115
115
116
-
- If the plugin runs as out-of-process, then it should implement RPC::IRemoteConnection::"INotification interface inside your plugin.
116
+
- If the plugin runs as out-of-process, then it should implement RPC::IRemoteConnection::INotification interface inside your plugin.
Copy file name to clipboardExpand all lines: .github/instructions/Pluginconfig.instructions.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,20 +1,20 @@
1
1
---
2
-
applyTo: "**/*.config,**/*.conf.in"
2
+
applyTo: "**/*.conf.in"
3
3
---
4
4
5
5
### Plugin Configuration
6
6
7
7
### Requirement
8
8
9
-
- Each plugin must define <PluginName>.conf.in file that includes the following mandatory properties:
9
+
- Each plugin must define a <PluginName>.conf.in file that includes the following mandatory properties:
10
10
11
11
-**autostart**: Indicates whether the plugin should start automatically when the framework boots. This should be set to false by default.
12
12
13
13
-**callsign**: A unique identifier used to reference the plugin within the framework. Every callsign must be defined with a prefix of org.rdk and it must be followed by the ENT Service name written in PascalCase (e.g., org.rdk.PersistentStore).
14
14
15
15
-**Custom properties**: Any additional configuration parameters required by the plugin. These are passed during activation via PluginHost::IShell::ConfigLine(). The following structural configuration elements are commonly defined:
16
16
- startuporder - Specifies the order in which plugins are started, relative to others.
17
-
- precondition - If these aren't met, the plugin stays in the Preconditions state and activates automatically once they are satisfied. It is recommended to define the precondition if the plugin depends on other subsystems being active.
17
+
- precondition - If these preconditions aren't met, the plugin stays in the Preconditions state and activates automatically once they are satisfied. It is recommended to define the precondition if the plugin depends on other subsystems being active.
18
18
- mode - Defines the execution mode of the plugin.
If the notifying plugin supports only JSON-RPC, then use a specialized smart link type when subscribing to its events. This method allows the framework to efficiently handle Plugin statechange events.
154
+
If the notifying plugin supports only JSON-RPC, then use a specialized smart link type when subscribing to its events. This method allows the framework to efficiently handle Plugin state change events.
Each plugin should implement the deactivated method. In Deactivated, it should be checked if remote connectionId matches your plugin's connectionId. If it matches your plugin's connectionId, the plugin should submit a deactivation job to handle the out-of-process failure gracefully.
255
+
Each plugin should implement the Deactivated method. In Deactivated, it should be checked if remote connectionId matches your plugin's connectionId. If it matches your plugin's connectionId, the plugin should submit a deactivation job to handle the out-of-process failure gracefully.
0 commit comments