Oakrey.HardwareManager.Client.Common
1.0.0
dotnet add package Oakrey.HardwareManager.Client.Common --version 1.0.0
NuGet\Install-Package Oakrey.HardwareManager.Client.Common -Version 1.0.0
<PackageReference Include="Oakrey.HardwareManager.Client.Common" Version="1.0.0" />
<PackageVersion Include="Oakrey.HardwareManager.Client.Common" Version="1.0.0" />
<PackageReference Include="Oakrey.HardwareManager.Client.Common" />
paket add Oakrey.HardwareManager.Client.Common --version 1.0.0
#r "nuget: Oakrey.HardwareManager.Client.Common, 1.0.0"
#:package Oakrey.HardwareManager.Client.Common@1.0.0
#addin nuget:?package=Oakrey.HardwareManager.Client.Common&version=1.0.0
#tool nuget:?package=Oakrey.HardwareManager.Client.Common&version=1.0.0
Oakrey.HardwareManager.Client.Common
Overview
A foundational .NET library providing shared abstractions, utilities, and base classes for building client applications that interact with hardware devices in the Oakrey HardwareManager ecosystem. This package standardizes device representation, connection management, error handling, and serialization, enabling rapid development of robust, type-safe hardware client solutions.
Features
Device & Channel Abstractions
- Device and DeviceType classes for representing hardware devices and their capabilities.
- Channel class for modeling communication channels and their properties.
Client Base Classes & Interfaces
- ClientBase and GuruClientBase provide reusable logic for client implementations, including connection lifecycle and resource management.
- IClientBase interface for consistent client contract definition.
Connection Management
- HubClientConnection for managing SignalR or similar hub-based connections.
- ConnectionConfirmation for robust connection state tracking and confirmation.
Error Handling
- ClientException for standardized exception handling across client implementations.
Utilities & Serialization
- PolymorphicConverter for advanced polymorphic JSON serialization/deserialization.
- Utilities class for common helper methods.
Integration Support
- ITrayAppConnect interface for integrating with tray applications or UI components.
Extensibility
- Designed to be extended by protocol-specific client libraries (e.g., CAN, LIN, License).
Example Use Cases
- Building protocol-specific hardware clients (CAN, LIN, etc.) on a unified foundation.
- Rapidly developing device management, monitoring, or automation tools.
- Integrating hardware communication into desktop, web, or service applications.
Installation
You can install the package via NuGet Package Manager, Package Manager Console or the .NET CLI.
NuGet Package Manager
- Open your project in Visual Studio.
- Navigate to Tools > NuGet Package Manager > Manage NuGet Packages for Solution....
- Search for
Oakrey.HardwareManager.Client.Common
and click Install.
.NET CLI
Run the following command in your terminal:
dotnet add package Oakrey.HardwareManager.Client.Common
Package Manager Console
Run the following command in your Package Manager Console:
Install-Package Oakrey.HardwareManager.Client.Common
Requirements
- .NET 8 or higher
Project Information
- Author: Oakrey
- Company: Oakrey
- License: MIT
- Repository: Git Repository
- Project URL: Project Website
Contributing
Contributions are welcome! Feel free to open issues or submit pull requests to improve the package.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- Microsoft.AspNetCore.SignalR.Client (>= 9.0.6)
- Microsoft.AspNetCore.SignalR.Protocols.MessagePack (>= 9.0.6)
- Oakrey.CodeAnalyzers (>= 1.0.0)
- System.Reactive (>= 6.0.1)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on Oakrey.HardwareManager.Client.Common:
Package | Downloads |
---|---|
Oakrey.HardwareManager.Client.CAN
A .NET client library for remote CAN communication, supporting device discovery, connection, message transmission, and reception. Provides high-level abstractions and reactive APIs for integrating CAN bus operations into .NET applications as part of the Oakrey HardwareManager ecosystem. |
|
Oakrey.HardwareManager.Client.License
A .NET client library for remote license management and validation, supporting license acquisition, activation, and status checks. Provides high-level abstractions and secure APIs for integrating licensing workflows into .NET applications as part of the Oakrey HardwareManager ecosystem. |
|
Oakrey.HardwareManager.Client.LIN
A .NET client library for remote LIN communication, supporting device discovery, connection, LIN frame transmission and reception, scheduling, and error handling. Provides high-level abstractions and event-driven APIs for integrating LIN bus operations into .NET applications as part of the Oakrey HardwareManager ecosystem. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
1.0.0 | 159 | 7/9/2025 |