class PublishingNavigationProviderType
An enumeration-style class that defines constants representing different types of navigation providers in a publishing/content management system.
/tf/active/vicechatdev/SPFCsync/venv/lib64/python3.11/site-packages/office365/sharepoint/navigation/publishing_navigation_provider_type.py
1 - 7
simple
Purpose
This class serves as a namespace for enumeration constants that identify different site map provider types used in SharePoint or similar publishing systems. It provides named integer constants to distinguish between invalid providers, portal-based providers, and taxonomy-based providers. This pattern allows for type-safe identification of navigation provider implementations without using Python's enum module.
Source Code
class PublishingNavigationProviderType:
def __init__(self):
pass
InvalidSiteMapProvider = 0
PortalSiteMapProvider = 1
TaxonomySiteMapProvider = 2
Parameters
| Name | Type | Default | Kind |
|---|---|---|---|
bases |
- | - |
Parameter Details
self: Standard instance reference for the constructor. The __init__ method takes no additional parameters and performs no initialization logic.
Return Value
Instantiation returns a PublishingNavigationProviderType object, though the class is designed to be used primarily for its class-level constants rather than instance creation. The constants themselves are integers: InvalidSiteMapProvider (0), PortalSiteMapProvider (1), and TaxonomySiteMapProvider (2).
Class Interface
Methods
__init__(self) -> None
Purpose: Constructor that initializes an instance of the class. Currently performs no operations.
Parameters:
self: The instance being initialized
Returns: None - constructors do not return values
Attributes
| Name | Type | Description | Scope |
|---|---|---|---|
InvalidSiteMapProvider |
int | Constant representing an invalid or unrecognized site map provider. Value is 0, typically used to indicate error states or uninitialized providers. | class |
PortalSiteMapProvider |
int | Constant representing a portal-based site map provider. Value is 1, used to identify navigation providers that use portal structure for site maps. | class |
TaxonomySiteMapProvider |
int | Constant representing a taxonomy-based site map provider. Value is 2, used to identify navigation providers that use taxonomy/metadata for organizing site maps. | class |
Usage Example
# Access the provider type constants directly from the class
from module_name import PublishingNavigationProviderType
# Use constants without instantiation (recommended)
if provider_type == PublishingNavigationProviderType.PortalSiteMapProvider:
print("Using Portal Site Map Provider")
elif provider_type == PublishingNavigationProviderType.TaxonomySiteMapProvider:
print("Using Taxonomy Site Map Provider")
elif provider_type == PublishingNavigationProviderType.InvalidSiteMapProvider:
print("Invalid provider")
# Can also instantiate if needed (though not typical usage)
provider_types = PublishingNavigationProviderType()
if provider_type == provider_types.PortalSiteMapProvider:
print("Portal provider detected")
# Use in function parameters
def configure_navigation(provider_type: int):
if provider_type == PublishingNavigationProviderType.TaxonomySiteMapProvider:
return "Taxonomy navigation configured"
return "Default navigation"
Best Practices
- Access constants directly from the class without instantiation (e.g., PublishingNavigationProviderType.PortalSiteMapProvider) for cleaner code
- Use these constants for type checking and conditional logic when working with different navigation provider implementations
- Consider migrating to Python's enum.IntEnum for better type safety and IDE support in modern codebases
- Do not modify the constant values as they may be used for persistence or API communication
- The InvalidSiteMapProvider constant (0) should be used to represent error states or uninitialized providers
- These constants are likely part of a larger navigation/publishing framework and should be used consistently across the codebase
Tags
Similar Components
AI-powered semantic similarity - components with related functionality:
-
class NavigationProviderType 85.7% similar
-
class PageType 65.8% similar
-
class SiteType 63.2% similar
-
class OnlineMeetingProviderType 60.0% similar
-
class BaseType 59.4% similar