#exonware/xwsystem/src/exonware/xwsystem/caching/distributed.py
"""
Company: eXonware.com
Author: eXonware Backend Team
Email: connect@exonware.com
Version: 0.9.0.23
Generation Date: 01-Nov-2025
Distributed cache implementations - Coming in v1.0.
"""


class DistributedCache:
    """
    Distributed cache implementation (Coming in v1.0).
    Future features:
    - Redis backend integration
    - Consistent hashing for distribution
    - Replication and failover
    - Cluster management
    For now, use local caches or implement Redis manually.
    """

    def __init__(self, *args, **kwargs):
        raise NotImplementedError(
            "DistributedCache is not yet implemented (coming in v1.0). "
            "For distributed caching, please use Redis directly: "
            "https://redis-py.readthedocs.io/ or consider using local caches "
            "with TTL for now."
        )


class RedisCache:
    """
    Redis-backed cache implementation (Coming in v1.0).
    Future features:
    - Redis connection pooling
    - Automatic serialization
    - TTL support via Redis EXPIRE
    - Pub/sub for cache invalidation
    For now, use redis-py directly or local caches.
    """

    def __init__(self, *args, **kwargs):
        raise NotImplementedError(
            "RedisCache is not yet implemented (coming in v1.0). "
            "For Redis caching, please use redis-py directly: "
            "pip install redis && import redis"
        )
