Core foundation for HFortix - Fully-typed Fortinet SDK with async support and type safety
Project description
HFortix-Core
HFortix-Core provides the foundational utilities, protocols, and base classes for the HFortix ecosystem, including HTTP client infrastructure, observability tools, and shared abstractions.
🚀 Quick Start
pip install hfortix-core
Note: This is a foundational library. Most users should install
hfortix-fortiosorhfortixinstead.
from hfortix_core import ObservableHTTPClient, HTTPRequestEvent
# Use the observable HTTP client with event tracking
client = ObservableHTTPClient(base_url="https://api.example.com")
# Subscribe to request events
def log_requests(event: HTTPRequestEvent):
print(f"{event.method} {event.url} - {event.status_code}")
client.subscribe(log_requests)
# Make requests
response = await client.get("/status")
✨ Key Features
- 🔌 HTTP Client Infrastructure - Modern async HTTP client with httpx backend
- 📊 Observability Protocol - Event-driven architecture for monitoring and debugging
- 🏗️ Base Abstractions - Shared protocols and interfaces for Fortinet API clients
- ⚡ High Performance - HTTP/2 support, connection pooling, and async/await
- 🛡️ Production Ready - Comprehensive error handling and validation
📦 What's Included
HTTP Client Infrastructure
ObservableHTTPClient- Event-driven HTTP client with observability hooks- Connection pooling and HTTP/2 support via httpx
- Automatic retry logic and error handling
- Session management and authentication helpers
Observability Protocol
- Event-based monitoring system
- Request/response tracking
- Performance metrics collection
- Debugging and audit trail support
Base Abstractions
- Protocol definitions for Fortinet API clients
- Shared type definitions and models
- Common utility functions
- Error handling infrastructure
🔗 Related Packages
- hfortix-fortios - FortiOS/FortiGate API client
- hfortix - Meta-package installing all HFortix packages
📚 Documentation
🤝 Contributing
This is a proprietary library. For support or feature requests, please contact the maintainer.
📄 License
Proprietary License - See LICENSE file for details.
Part of the HFortix ecosystem - Modern Python SDKs for Fortinet automation
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hfortix_core-0.5.163.tar.gz.
File metadata
- Download URL: hfortix_core-0.5.163.tar.gz
- Upload date:
- Size: 137.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
02b103796d6231f6317bddf689f124a7927b67bd5e22f8af1fa02d0ee5224de7
|
|
| MD5 |
bb864406b9f7b6d0562ac67e408808b0
|
|
| BLAKE2b-256 |
42637d3fe7efe9aa83d33c22ebe2d16ad15b830905210d277ffa28fdff73242e
|
File details
Details for the file hfortix_core-0.5.163-py3-none-any.whl.
File metadata
- Download URL: hfortix_core-0.5.163-py3-none-any.whl
- Upload date:
- Size: 150.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f90a1dc5f907a8adc7bed965a18088a737b91d08e9d8c42da072b67d8ee79f3a
|
|
| MD5 |
4cac5858f221efae05faad8a1be18555
|
|
| BLAKE2b-256 |
2f95f576e8ef9b5543d5a9b4cd4c45d731beaeb081e906e39dada2b0512adc7e
|