ILDAPProviderFactory.php 861 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <?php
  2. /**
  3. * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
  4. * SPDX-License-Identifier: AGPL-3.0-or-later
  5. */
  6. namespace OCP\LDAP;
  7. use OCP\IServerContainer;
  8. /**
  9. * Interface ILDAPProviderFactory
  10. *
  11. * This class is responsible for instantiating and returning an ILDAPProvider
  12. * instance.
  13. *
  14. * @since 11.0.0
  15. */
  16. interface ILDAPProviderFactory {
  17. /**
  18. * Constructor for the LDAP provider factory
  19. *
  20. * @param IServerContainer $serverContainer server container
  21. * @since 11.0.0
  22. */
  23. public function __construct(IServerContainer $serverContainer);
  24. /**
  25. * creates and returns an instance of the ILDAPProvider
  26. *
  27. * @return ILDAPProvider
  28. * @since 11.0.0
  29. */
  30. public function getLDAPProvider();
  31. /**
  32. * Check if an ldap provider is available
  33. *
  34. * @return bool
  35. * @since 21.0.0
  36. */
  37. public function isAvailable(): bool;
  38. }