Spaces:
Build error
Build error
| import os | |
| from openhands.utils.import_utils import get_impl | |
| class ConversationValidator: | |
| """Abstract base class for validating conversation access. | |
| This is an extension point in OpenHands that allows applications to customize how | |
| conversation access is validated. Applications can substitute their own implementation by: | |
| 1. Creating a class that inherits from ConversationValidator | |
| 2. Implementing the validate method | |
| 3. Setting OPENHANDS_CONVERSATION_VALIDATOR_CLS environment variable to the fully qualified name of the class | |
| The class is instantiated via get_impl() in create_conversation_validator(). | |
| The default implementation performs no validation and returns None, None. | |
| """ | |
| async def validate( | |
| self, | |
| conversation_id: str, | |
| cookies_str: str, | |
| authorization_header: str | None = None, | |
| ) -> str | None: | |
| return None | |
| def create_conversation_validator() -> ConversationValidator: | |
| conversation_validator_cls = os.environ.get( | |
| 'OPENHANDS_CONVERSATION_VALIDATOR_CLS', | |
| 'openhands.storage.conversation.conversation_validator.ConversationValidator', | |
| ) | |
| ConversationValidatorImpl = get_impl( | |
| ConversationValidator, conversation_validator_cls | |
| ) | |
| return ConversationValidatorImpl() | |