Compare commits

..

No commits in common. "1.0.6-alpha-20" and "1.0.6-hotfix-1" have entirely different histories.

20 changed files with 447 additions and 417 deletions

View file

@ -153,7 +153,7 @@ jobs:
$exclusions = "packages" $exclusions = "packages"
# Trying to get any .json schema files (not currently working) # Trying to get any .json schema files (not currently working)
# Gets any files with the listed extensions. # Gets any files with the listed extensions.
Get-ChildItem -recurse -Path "$($Env:GITHUB_WORKSPACE)" -include "*.clz", "*.cpz", "*.cplz", "*.nuspec", "*.md" | ForEach-Object { Get-ChildItem -recurse -Path "$($Env:GITHUB_WORKSPACE)" -include "*.clz", "*.cpz", "*.cplz", "*.nuspec" | ForEach-Object {
$allowed = $true; $allowed = $true;
# Exclude any files in submodules # Exclude any files in submodules
foreach ($exclude in $exclusions) { foreach ($exclude in $exclusions) {
@ -253,27 +253,19 @@ jobs:
- name: Get nuget File - name: Get nuget File
shell: powershell shell: powershell
run: | run: |
$nuspec_file = (Get-ChildItem *.nuspec -recurse).BaseName $nuspec_file = Get-ChildItem *.nuspec -recurse
echo "NUSPEC_FILE=$($nuspec_file)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append echo "NUSPEC_FILE=$($nuspec_file.BaseName)"| Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
# Pulls the nuget builder packages
- name: Add nuget.exe - name: Add nuget.exe
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
uses: nuget/setup-nuget@v1 uses: nuget/setup-nuget@v1
# Creating nuget Packages
- name: Add Github Packages source - name: Add Github Packages source
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
run: nuget sources add -name github -source https://nuget.pkg.github.com/pepperdash/index.json -username Pepperdash -password ${{ secrets.GITHUB_TOKEN }} run: nuget sources add -name github -source https://nuget.pkg.github.com/pepperdash/index.json -username Pepperdash -password ${{ secrets.GITHUB_TOKEN }}
- name: Create nuget package # Pushes to nuget, not needed unless publishing publicly
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
run: nuget pack "./${{ env.NUSPEC_FILE}}.nuspec" -version ${{ env.VERSION }}
# Pushes to internal github registry
- name: Publish nuget package to Github registry
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
run: nuget push **/*.nupkg -source github
# Pushes to nuget gallery
- name: Add nuget.org API Key - name: Add nuget.org API Key
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')
run: nuget setApiKey ${{ secrets.NUGET_API_KEY }} run: nuget setApiKey ${{ secrets.NUGET_API_KEY }}
- name: Create nuget package
run: nuget pack "./${{ env.NUSPEC_FILE}}.nuspec" -version ${{ env.VERSION }}
- name: Publish nuget package to Github registry
run: nuget push **/*.nupkg -source github
# Pushes to nuget, not needed unless publishing publicly >> this pushes package to nuget.org
- name: Publish nuget package to nuget.org - name: Publish nuget package to nuget.org
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')
run: nuget push **/*.nupkg -Source https://api.nuget.org/v3/index.json run: nuget push **/*.nupkg -Source https://api.nuget.org/v3/index.json

View file

@ -111,7 +111,7 @@ jobs:
$exclusions = "packages" $exclusions = "packages"
# Trying to get any .json schema files (not currently working) # Trying to get any .json schema files (not currently working)
# Gets any files with the listed extensions. # Gets any files with the listed extensions.
Get-ChildItem -recurse -Path "$($Env:GITHUB_WORKSPACE)" -include "*.clz", "*.cpz", "*.cplz", "*.nuspec", "*.md" | ForEach-Object { Get-ChildItem -recurse -Path "$($Env:GITHUB_WORKSPACE)" -include "*.clz", "*.cpz", "*.cplz", "*.nuspec" | ForEach-Object {
$allowed = $true; $allowed = $true;
# Exclude any files in submodules # Exclude any files in submodules
foreach ($exclude in $exclusions) { foreach ($exclude in $exclusions) {
@ -201,27 +201,19 @@ jobs:
- name: Get nuget File - name: Get nuget File
shell: powershell shell: powershell
run: | run: |
$nuspec_file = (Get-ChildItem *.nuspec -recurse).BaseName $nuspec_file = Get-ChildItem *.nuspec -recurse
echo "NUSPEC_FILE=$($nuspec_file)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append echo "NUSPEC_FILE=$($nuspec_file.BaseName)"| Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
# Pulls the nuget builder packages
- name: Add nuget.exe - name: Add nuget.exe
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
uses: nuget/setup-nuget@v1 uses: nuget/setup-nuget@v1
# Creating nuget Packages
- name: Add Github Packages source - name: Add Github Packages source
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
run: nuget sources add -name github -source https://nuget.pkg.github.com/pepperdash/index.json -username Pepperdash -password ${{ secrets.GITHUB_TOKEN }} run: nuget sources add -name github -source https://nuget.pkg.github.com/pepperdash/index.json -username Pepperdash -password ${{ secrets.GITHUB_TOKEN }}
- name: Create nuget package # Pushes to nuget, not needed unless publishing publicly
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
run: nuget pack "./${{ env.NUSPEC_FILE}}.nuspec" -version ${{ env.VERSION }}
# Pushes to internal github registry
- name: Publish nuget package to Github registry
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
run: nuget push **/*.nupkg -source github
# Pushes to nuget gallery
- name: Add nuget.org API Key - name: Add nuget.org API Key
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')
run: nuget setApiKey ${{ secrets.NUGET_API_KEY }} run: nuget setApiKey ${{ secrets.NUGET_API_KEY }}
- name: Create nuget package
run: nuget pack "./${{ env.NUSPEC_FILE}}.nuspec" -version ${{ env.VERSION }}
- name: Publish nuget package to Github registry
run: nuget push **/*.nupkg -source github
# Pushes to nuget, not needed unless publishing publicly >> this pushes package to nuget.org
- name: Publish nuget package to nuget.org - name: Publish nuget package to nuget.org
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')
run: nuget push **/*.nupkg -Source https://api.nuget.org/v3/index.json run: nuget push **/*.nupkg -Source https://api.nuget.org/v3/index.json

View file

@ -1,2 +0,0 @@
@Echo ON
nuget install .\packages.config -OutputDirectory .\packages -excludeVersion

View file

@ -12,7 +12,7 @@ namespace EssentialsPluginTemplate
/// <example> /// <example>
/// "EssentialsPluginBridgeJoinMapTemplate" renamed to "SamsungMdcBridgeJoinMap" /// "EssentialsPluginBridgeJoinMapTemplate" renamed to "SamsungMdcBridgeJoinMap"
/// </example> /// </example>
public class EssentialsPluginTemplateBridgeJoinMap : JoinMapBaseAdvanced public class EssentialsPluginBridgeJoinMapTemplate : JoinMapBaseAdvanced
{ {
#region Digital #region Digital
@ -93,8 +93,8 @@ namespace EssentialsPluginTemplate
/// Plugin device BridgeJoinMap constructor /// Plugin device BridgeJoinMap constructor
/// </summary> /// </summary>
/// <param name="joinStart">This will be the join it starts on the EISC bridge</param> /// <param name="joinStart">This will be the join it starts on the EISC bridge</param>
public EssentialsPluginTemplateBridgeJoinMap(uint joinStart) public EssentialsPluginBridgeJoinMapTemplate(uint joinStart)
: base(joinStart, typeof(EssentialsPluginTemplateBridgeJoinMap)) : base(joinStart, typeof(EssentialsPluginBridgeJoinMapTemplate))
{ {
} }
} }

View file

@ -14,7 +14,7 @@ namespace EssentialsPluginTemplate
/// "EssentialsPluginConfigObjectTemplate" renamed to "SamsungMdcConfig" /// "EssentialsPluginConfigObjectTemplate" renamed to "SamsungMdcConfig"
/// </example> /// </example>
[ConfigSnippet("\"properties\":{\"control\":{}")] [ConfigSnippet("\"properties\":{\"control\":{}")]
public class EssentialsPluginTemplateConfigObject public class EssentialsPluginConfigObjectTemplate
{ {
/// <summary> /// <summary>
/// JSON control object /// JSON control object
@ -139,7 +139,7 @@ namespace EssentialsPluginTemplate
/// </code> /// </code>
/// </example> /// </example>
[JsonProperty("DeviceDictionary")] [JsonProperty("DeviceDictionary")]
public Dictionary<string, EssentialsPluginTemplateConfigObjectDictionary> DeviceDictionary { get; set; } public Dictionary<string, EssentialsPluginConfigObjectDictionaryTemplate> DeviceDictionary { get; set; }
/// <summary> /// <summary>
/// Constuctor /// Constuctor
@ -148,9 +148,9 @@ namespace EssentialsPluginTemplate
/// If using a collection you must instantiate the collection in the constructor /// If using a collection you must instantiate the collection in the constructor
/// to avoid exceptions when reading the configuration file /// to avoid exceptions when reading the configuration file
/// </remarks> /// </remarks>
public EssentialsPluginTemplateConfigObject() public EssentialsPluginConfigObjectTemplate()
{ {
DeviceDictionary = new Dictionary<string, EssentialsPluginTemplateConfigObjectDictionary>(); DeviceDictionary = new Dictionary<string, EssentialsPluginConfigObjectDictionaryTemplate>();
} }
} }
@ -172,7 +172,7 @@ namespace EssentialsPluginTemplate
/// } /// }
/// </code> /// </code>
/// </example> /// </example>
public class EssentialsPluginTemplateConfigObjectDictionary public class EssentialsPluginConfigObjectDictionaryTemplate
{ {
/// <summary> /// <summary>
/// Serializes collection name property /// Serializes collection name property

View file

@ -23,7 +23,7 @@ namespace EssentialsPluginTemplate
/// <summary> /// <summary>
/// It is often desirable to store the config /// It is often desirable to store the config
/// </summary> /// </summary>
private EssentialsPluginTemplateConfigObject _config; private EssentialsPluginConfigObjectTemplate _config;
#region Constructor for Devices without IBasicCommunication. Remove if not needed #region Constructor for Devices without IBasicCommunication. Remove if not needed
@ -34,7 +34,7 @@ namespace EssentialsPluginTemplate
/// <param name="name"></param> /// <param name="name"></param>
/// <param name="config"></param> /// <param name="config"></param>
/// <param name="hardware"></param> /// <param name="hardware"></param>
public EssentialsPluginTemplateCrestronDevice(string key, string name, EssentialsPluginTemplateConfigObject config, GenericBase hardware) public EssentialsPluginTemplateCrestronDevice(string key, string name, EssentialsPluginConfigObjectTemplate config, GenericBase hardware)
: base(key, name, hardware) : base(key, name, hardware)
{ {
Debug.Console(0, this, "Constructing new {0} instance", name); Debug.Console(0, this, "Constructing new {0} instance", name);
@ -60,7 +60,7 @@ namespace EssentialsPluginTemplate
/// <param name="bridge"></param> /// <param name="bridge"></param>
public override void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, EiscApiAdvanced bridge) public override void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, EiscApiAdvanced bridge)
{ {
var joinMap = new EssentialsPluginTemplateBridgeJoinMap(joinStart); var joinMap = new EssentialsPluginBridgeJoinMapTemplate(joinStart);
// This adds the join map to the collection on the bridge // This adds the join map to the collection on the bridge
if (bridge != null) if (bridge != null)

View file

@ -5,7 +5,7 @@ using Crestron.SimplSharpPro.DeviceSupport;
using PepperDash.Core; using PepperDash.Core;
using PepperDash.Essentials.Core; using PepperDash.Essentials.Core;
using PepperDash.Essentials.Core.Bridges; using PepperDash.Essentials.Core.Bridges;
using PepperDash.Essentials.Core.Queues; using PepperDash_Essentials_Core.Queues;
namespace EssentialsPluginTemplate namespace EssentialsPluginTemplate
@ -24,7 +24,7 @@ namespace EssentialsPluginTemplate
/// <summary> /// <summary>
/// It is often desirable to store the config /// It is often desirable to store the config
/// </summary> /// </summary>
private EssentialsPluginTemplateConfigObject _config; private EssentialsPluginConfigObjectTemplate _config;
/// <summary> /// <summary>
/// Provides a queue and dedicated worker thread for processing feedback messages from a device. /// Provides a queue and dedicated worker thread for processing feedback messages from a device.
@ -98,7 +98,7 @@ namespace EssentialsPluginTemplate
/// <param name="name"></param> /// <param name="name"></param>
/// <param name="config"></param> /// <param name="config"></param>
/// <param name="comms"></param> /// <param name="comms"></param>
public EssentialsPluginTemplateDevice(string key, string name, EssentialsPluginTemplateConfigObject config, IBasicCommunication comms) public EssentialsPluginTemplateDevice(string key, string name, EssentialsPluginConfigObjectTemplate config, IBasicCommunication comms)
: base(key, name) : base(key, name)
{ {
Debug.Console(0, this, "Constructing new {0} instance", name); Debug.Console(0, this, "Constructing new {0} instance", name);
@ -244,7 +244,7 @@ namespace EssentialsPluginTemplate
/// <param name="bridge"></param> /// <param name="bridge"></param>
public override void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, EiscApiAdvanced bridge) public override void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, EiscApiAdvanced bridge)
{ {
var joinMap = new EssentialsPluginTemplateBridgeJoinMap(joinStart); var joinMap = new EssentialsPluginBridgeJoinMapTemplate(joinStart);
// This adds the join map to the collection on the bridge // This adds the join map to the collection on the bridge
if (bridge != null) if (bridge != null)

View file

@ -14,7 +14,7 @@ namespace EssentialsPluginTemplate
/// <example> /// <example>
/// "EssentialsPluginFactoryTemplate" renamed to "MyDeviceFactory" /// "EssentialsPluginFactoryTemplate" renamed to "MyDeviceFactory"
/// </example> /// </example>
public class EssentialsPluginTemplateFactory : EssentialsPluginDeviceFactory<EssentialsPluginTemplateDevice> public class EssentialsPluginFactoryTemplate : EssentialsPluginDeviceFactory<EssentialsPluginTemplateDevice>
{ {
/// <summary> /// <summary>
/// Plugin device factory constructor /// Plugin device factory constructor
@ -32,7 +32,7 @@ namespace EssentialsPluginTemplate
/// TypeNames = new List<string>() { "SamsungMdc", "SamsungMdcDisplay" }; /// TypeNames = new List<string>() { "SamsungMdc", "SamsungMdcDisplay" };
/// </code> /// </code>
/// </example> /// </example>
public EssentialsPluginTemplateFactory() public EssentialsPluginFactoryTemplate()
{ {
// Set the minimum Essentials Framework Version // Set the minimum Essentials Framework Version
// TODO [ ] Update the Essentials minimum framework version which this plugin has been tested against // TODO [ ] Update the Essentials minimum framework version which this plugin has been tested against
@ -58,7 +58,7 @@ namespace EssentialsPluginTemplate
Debug.Console(1, "[{0}] Factory Attempting to create new device from type: {1}", dc.Key, dc.Type); Debug.Console(1, "[{0}] Factory Attempting to create new device from type: {1}", dc.Key, dc.Type);
// get the plugin device properties configuration object & check for null // get the plugin device properties configuration object & check for null
var propertiesConfig = dc.Properties.ToObject<EssentialsPluginTemplateConfigObject>(); var propertiesConfig = dc.Properties.ToObject<EssentialsPluginConfigObjectTemplate>();
if (propertiesConfig == null) if (propertiesConfig == null)
{ {
Debug.Console(0, "[{0}] Factory: failed to read properties config for {1}", dc.Key, dc.Name); Debug.Console(0, "[{0}] Factory: failed to read properties config for {1}", dc.Key, dc.Name);
@ -91,7 +91,7 @@ namespace EssentialsPluginTemplate
/// <example> /// <example>
/// "EssentialsPluginFactoryTemplate" renamed to "MyLogicDeviceFactory" /// "EssentialsPluginFactoryTemplate" renamed to "MyLogicDeviceFactory"
/// </example> /// </example>
public class EssentialsPluginTemplateFactoryLogicDevice : EssentialsPluginDeviceFactory<EssentialsPluginTemplateLogicDevice> public class EssentialsPluginFactoryLogicDeviceTemplate : EssentialsPluginDeviceFactory<EssentialsPluginTemplateLogicDevice>
{ {
/// <summary> /// <summary>
/// Plugin device factory constructor /// Plugin device factory constructor
@ -109,7 +109,7 @@ namespace EssentialsPluginTemplate
/// TypeNames = new List<string>() { "SamsungMdc", "SamsungMdcDisplay" }; /// TypeNames = new List<string>() { "SamsungMdc", "SamsungMdcDisplay" };
/// </code> /// </code>
/// </example> /// </example>
public EssentialsPluginTemplateFactoryLogicDevice() public EssentialsPluginFactoryLogicDeviceTemplate()
{ {
// Set the minimum Essentials Framework Version // Set the minimum Essentials Framework Version
// TODO [ ] Update the Essentials minimum framework version which this plugin has been tested against // TODO [ ] Update the Essentials minimum framework version which this plugin has been tested against
@ -136,7 +136,7 @@ namespace EssentialsPluginTemplate
Debug.Console(1, "[{0}] Factory Attempting to create new device from type: {1}", dc.Key, dc.Type); Debug.Console(1, "[{0}] Factory Attempting to create new device from type: {1}", dc.Key, dc.Type);
// get the plugin device properties configuration object & check for null // get the plugin device properties configuration object & check for null
var propertiesConfig = dc.Properties.ToObject<EssentialsPluginTemplateConfigObject>(); var propertiesConfig = dc.Properties.ToObject<EssentialsPluginConfigObjectTemplate>();
if (propertiesConfig == null) if (propertiesConfig == null)
{ {
Debug.Console(0, "[{0}] Factory: failed to read properties config for {1}", dc.Key, dc.Name); Debug.Console(0, "[{0}] Factory: failed to read properties config for {1}", dc.Key, dc.Name);
@ -166,7 +166,7 @@ namespace EssentialsPluginTemplate
/// <example> /// <example>
/// "EssentialsPluginFactoryTemplate" renamed to "MyCrestronDeviceFactory" /// "EssentialsPluginFactoryTemplate" renamed to "MyCrestronDeviceFactory"
/// </example> /// </example>
public class EssentialsPluginTemplateFactoryCrestronDevice : EssentialsPluginDeviceFactory<EssentialsPluginTemplateCrestronDevice> public class EssentialsPluginFactoryCrestronDeviceTemplate : EssentialsPluginDeviceFactory<EssentialsPluginTemplateCrestronDevice>
{ {
/// <summary> /// <summary>
/// Plugin device factory constructor /// Plugin device factory constructor
@ -184,7 +184,7 @@ namespace EssentialsPluginTemplate
/// TypeNames = new List<string>() { "SamsungMdc", "SamsungMdcDisplay" }; /// TypeNames = new List<string>() { "SamsungMdc", "SamsungMdcDisplay" };
/// </code> /// </code>
/// </example> /// </example>
public EssentialsPluginTemplateFactoryCrestronDevice() public EssentialsPluginFactoryCrestronDeviceTemplate()
{ {
// Set the minimum Essentials Framework Version // Set the minimum Essentials Framework Version
// TODO [ ] Update the Essentials minimum framework version which this plugin has been tested against // TODO [ ] Update the Essentials minimum framework version which this plugin has been tested against
@ -211,7 +211,7 @@ namespace EssentialsPluginTemplate
Debug.Console(1, "[{0}] Factory Attempting to create new device from type: {1}", dc.Key, dc.Type); Debug.Console(1, "[{0}] Factory Attempting to create new device from type: {1}", dc.Key, dc.Type);
// get the plugin device properties configuration object & check for null // get the plugin device properties configuration object & check for null
var propertiesConfig = dc.Properties.ToObject<EssentialsPluginTemplateConfigObject>(); var propertiesConfig = dc.Properties.ToObject<EssentialsPluginConfigObjectTemplate>();
if (propertiesConfig == null) if (propertiesConfig == null)
{ {
Debug.Console(0, "[{0}] Factory: failed to read properties config for {1}", dc.Key, dc.Name); Debug.Console(0, "[{0}] Factory: failed to read properties config for {1}", dc.Key, dc.Name);

View file

@ -19,7 +19,7 @@ namespace EssentialsPluginTemplate
/// <summary> /// <summary>
/// It is often desirable to store the config /// It is often desirable to store the config
/// </summary> /// </summary>
private EssentialsPluginTemplateConfigObject _config; private EssentialsPluginConfigObjectTemplate _config;
/// <summary> /// <summary>
/// Plugin device constructor /// Plugin device constructor
@ -27,7 +27,7 @@ namespace EssentialsPluginTemplate
/// <param name="key"></param> /// <param name="key"></param>
/// <param name="name"></param> /// <param name="name"></param>
/// <param name="config"></param> /// <param name="config"></param>
public EssentialsPluginTemplateLogicDevice(string key, string name, EssentialsPluginTemplateConfigObject config) public EssentialsPluginTemplateLogicDevice(string key, string name, EssentialsPluginConfigObjectTemplate config)
: base(key, name) : base(key, name)
{ {
Debug.Console(0, this, "Constructing new {0} instance", name); Debug.Console(0, this, "Constructing new {0} instance", name);
@ -48,7 +48,7 @@ namespace EssentialsPluginTemplate
/// <param name="bridge"></param> /// <param name="bridge"></param>
public override void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, EiscApiAdvanced bridge) public override void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, EiscApiAdvanced bridge)
{ {
var joinMap = new EssentialsPluginTemplateBridgeJoinMap(joinStart); var joinMap = new EssentialsPluginBridgeJoinMapTemplate(joinStart);
// This adds the join map to the collection on the bridge // This adds the join map to the collection on the bridge
if (bridge != null) if (bridge != null)

View file

@ -0,0 +1,5 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<DeployDeviceID>E282E6BE-C7C3-4ece-916A-88FB1CF8AF3C</DeployDeviceID>
</PropertyGroup>
</Project>

View file

@ -2,7 +2,6 @@
<package > <package >
<metadata> <metadata>
<id>PDT.EssentialsPluginTemplate</id> <id>PDT.EssentialsPluginTemplate</id>
<readme>docs\README.md</readme>
<version>2.0.2</version> <version>2.0.2</version>
<title>Essentials Plugin Template</title> <title>Essentials Plugin Template</title>
<authors>PepperDash Technologies</authors> <authors>PepperDash Technologies</authors>
@ -12,12 +11,11 @@
<projectUrl>https://github.com/PepperDash/EssentialsPluginTemplate</projectUrl> <projectUrl>https://github.com/PepperDash/EssentialsPluginTemplate</projectUrl>
<copyright>Copyright 2022</copyright> <copyright>Copyright 2022</copyright>
<description>This software iserves as a template for generating new Essentials-Compliant plugins</description> <description>This software iserves as a template for generating new Essentials-Compliant plugins</description>
<tags>crestron 3series 4series essentials pepperdash pepperdashessentials epi essentials plugin</tags> <tags>crestron 3series 4series samsung</tags>
<repository type="git" url="https://github.com/PepperDash/EssentialsPluginTemplate"/> <repository type="git" url="https://github.com/PepperDash/EssentialsPluginTemplate"/>
</metadata> </metadata>
<files> <files>
<file src="**" target="lib\net35"/> <file src="**" target="lib\net35"/>
<file src="**" target="lib\net47"/> <file src="**" target="lib\net47"/>
<file src="README.md" target="docs\"/>
</files> </files>
</package> </package>

View file

@ -0,0 +1,63 @@
8/30/2019 3:01:01 PM, Info: Initializing SIMPLSharp Services...
8/30/2019 3:01:01 PM, Info: ProjectInfo successfully initialized.
8/30/2019 3:01:02 PM, Info: Saving project information...
8/30/2019 3:01:02 PM, Info: Saving project information...
8/30/2019 3:01:02 PM, Info: Saving project information...
8/30/2019 3:01:02 PM, Info: Saving project information...
8/30/2019 3:01:02 PM, Info: Saving project information...
8/30/2019 3:01:02 PM, Info: Saving project information...
8/30/2019 3:04:48 PM, Info: Validating assembly C:\Users\JTA\Documents\Stash Folder\KPMG\SLN103-AVNoc\SLN103-AVNoc.Plugins\NvxUrlRoutingClient.Epi\essentials-builds\PepperDashEssentials.dll...
8/30/2019 3:05:10 PM, Info: Saving project information...
8/30/2019 3:05:10 PM, Info: Saving project information...
8/30/2019 3:05:10 PM, Info: Saving project information...
8/30/2019 3:05:39 PM, Info: Validating assembly C:\Users\JTA\Documents\Stash Folder\KPMG\SLN103-AVNoc\SLN103-AVNoc.Plugins\NvxUrlRoutingClient.Epi\essentials-builds\PepperDash_Core.dll...
8/30/2019 3:05:39 PM, Info: Validating assembly C:\Users\JTA\Documents\Stash Folder\KPMG\SLN103-AVNoc\SLN103-AVNoc.Plugins\NvxUrlRoutingClient.Epi\essentials-builds\PepperDash_Essentials_Core.dll...
8/30/2019 3:05:40 PM, Info: Validating assembly C:\Users\JTA\Documents\Stash Folder\KPMG\SLN103-AVNoc\SLN103-AVNoc.Plugins\NvxUrlRoutingClient.Epi\essentials-builds\PepperDash_Essentials_DM.dll...
8/30/2019 3:06:24 PM, Info: Saving project information...
8/30/2019 3:06:24 PM, Info: Saving project information...
8/30/2019 3:06:24 PM, Info: Saving project information...
8/30/2019 3:06:24 PM, Info: Saving project information...
8/30/2019 3:06:24 PM, Info: Saving project information...
8/30/2019 3:06:24 PM, Info: Saving project information...
8/30/2019 3:06:36 PM, Info: Saving project information...
8/30/2019 3:06:36 PM, Info: Saving project information...
8/30/2019 3:06:36 PM, Info: Saving project information...
8/30/2019 3:06:36 PM, Info: Saving project information...
8/30/2019 3:06:36 PM, Info: Saving project information...
8/30/2019 3:06:36 PM, Info: Saving project information...
8/30/2019 3:08:54 PM, Info: Saving project information...
8/30/2019 3:08:54 PM, Info: Saving project information...
8/30/2019 3:08:54 PM, Info: Saving project information...
8/30/2019 3:08:54 PM, Info: Saving project information...
8/30/2019 3:08:54 PM, Info: Saving project information...
8/30/2019 3:08:54 PM, Info: Saving project information...
8/30/2019 3:09:39 PM, Info: Validating assembly C:\Users\JTA\Documents\Stash Folder\KPMG\SLN103-AVNoc\SLN103-AVNoc.Plugins\NvxUrlRoutingClient.Epi\essentials-builds\PepperDash_Essentials_Core.dll...
8/30/2019 3:10:10 PM, Info: Saving project information...
8/30/2019 3:10:10 PM, Info: Saving project information...
8/30/2019 3:10:10 PM, Info: Saving project information...
8/30/2019 3:15:10 PM, Info: Saving project information...
8/30/2019 3:15:10 PM, Info: Saving project information...
8/30/2019 3:15:10 PM, Info: Saving project information...
8/30/2019 3:20:10 PM, Info: Saving project information...
8/30/2019 3:20:10 PM, Info: Saving project information...
8/30/2019 3:20:10 PM, Info: Saving project information...
8/30/2019 3:25:10 PM, Info: Saving project information...
8/30/2019 3:25:10 PM, Info: Saving project information...
8/30/2019 3:25:10 PM, Info: Saving project information...
8/30/2019 3:30:10 PM, Info: Saving project information...
8/30/2019 3:30:10 PM, Info: Saving project information...
8/30/2019 3:30:10 PM, Info: Saving project information...
8/30/2019 3:35:10 PM, Info: Saving project information...
8/30/2019 3:35:10 PM, Info: Saving project information...
8/30/2019 3:35:10 PM, Info: Saving project information...
8/30/2019 3:35:38 PM, Info: Saving project information...
8/30/2019 3:35:38 PM, Info: Saving project information...
8/30/2019 3:35:38 PM, Info: Saving project information...
8/30/2019 3:35:38 PM, Info: Saving project information...
8/30/2019 3:35:38 PM, Info: Saving project information...
8/30/2019 3:35:38 PM, Info: Saving project information...
8/30/2019 3:36:52 PM, Info: Validating assembly C:\Users\JTA\Documents\Stash Folder\KPMG\SLN103-AVNoc\SLN103-AVNoc.Plugins\NvxUrlRoutingClient.Epi\NvxUrlRoutingClientEpi\bin\Debug\NvxUrlRoutingClientEpi.dll...
8/30/2019 3:36:52 PM, Info: Verifying assembly C:\Users\JTA\Documents\Stash Folder\KPMG\SLN103-AVNoc\SLN103-AVNoc.Plugins\NvxUrlRoutingClient.Epi\NvxUrlRoutingClientEpi\bin\Debug\NvxUrlRoutingClientEpi.dll
8/30/2019 3:36:52 PM, Info: Creating Archive C:\Users\JTA\Documents\Stash Folder\KPMG\SLN103-AVNoc\SLN103-AVNoc.Plugins\NvxUrlRoutingClient.Epi\NvxUrlRoutingClientEpi\bin\Debug\NvxUrlRoutingClientEpi.cplz...
8/30/2019 3:36:53 PM, Info: Saving project information...
9/2/2019 8:34:46 AM, Info: Terminating SIMPLSharp Services

View file

@ -1,6 +1,4 @@
![PepperDash Essentials Pluign Logo](/images/essentials-plugin-blue.png) # Essentials Plugin Template (c) 2020
# Essentials Plugin Template (c) 2023
## License ## License
@ -31,7 +29,6 @@ The [Essentials](https://github.com/PepperDash/Essentials) libraries are require
To install dependencies once nuget.exe is installed, run the following command from the root directory of your repository: To install dependencies once nuget.exe is installed, run the following command from the root directory of your repository:
`nuget install .\packages.config -OutputDirectory .\packages -excludeVersion`. `nuget install .\packages.config -OutputDirectory .\packages -excludeVersion`.
Alternatively, you can simply run the `GetPackages.bat` file.
To verify that the packages installed correctly, open the plugin solution in your repo and make sure that all references are found, then try and build it. To verify that the packages installed correctly, open the plugin solution in your repo and make sure that all references are found, then try and build it.
### Installing Different versions of PepperDash Core ### Installing Different versions of PepperDash Core
@ -40,21 +37,6 @@ If you need a different version of PepperDash Core, use the command `nuget insta
### Instructions for Renaming Solution and Files ### Instructions for Renaming Solution and Files
See the Task List in Visual Studio for a guide on how to start using the template. There is extensive inline documentation and examples as well. See the Task List in Visual Studio for a guide on how to start using the templage. There is extensive inline documentation and examples as well.
For renaming instructions in particular, see the XML `remarks` tags on class definitions For renaming instructions in particular, see the XML `remarks` tags on class definitions
## Build Instructions (PepperDash Internal)
## Generating Nuget Package
In the solution folder is a file named "PDT.EssentialsPluginTemplate.nuspec"
1. Rename the file to match your plugin solution name
2. Edit the file to include your project specifics including
1. <id>PepperDash.Essentials.Plugin.MakeModel</id> Convention is to use the prefix "PepperDash.Essentials.Plugin" and include the MakeModel of the device.
2. <projectUrl>https://github.com/PepperDash/EssentialsPluginTemplate</projectUrl> Change to your url to the project repo
There is no longer a requirement to adjust workflow files for nuget generation for private and public repositories. This is now handled automatically in the workflow.
__If you do not make these changes to the nuspec file, the project will not generate a nuget package__

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB