LdapDataCollector.php 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <?php declare(strict_types = 1);
  2. /**
  3. * @copyright 2022 Carl Schwan <carl@carlschwan.eu>
  4. *
  5. * @author Carl Schwan <carl@carlschwan.eu>
  6. *
  7. * @license GNU AGPL version 3 or any later version
  8. *
  9. * This program is free software: you can redistribute it and/or modify
  10. * it under the terms of the GNU Affero General Public License as
  11. * published by the Free Software Foundation, either version 3 of the
  12. * License, or (at your option) any later version.
  13. *
  14. * This program is distributed in the hope that it will be useful,
  15. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  17. * GNU Affero General Public License for more details.
  18. *
  19. * You should have received a copy of the GNU Affero General Public License
  20. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  21. *
  22. */
  23. namespace OCA\User_LDAP\DataCollector;
  24. use OC\AppFramework\Http\Request;
  25. use OCP\AppFramework\Http\Response;
  26. use OCP\DataCollector\AbstractDataCollector;
  27. class LdapDataCollector extends AbstractDataCollector {
  28. public function startLdapRequest(string $query, array $args, array $backtrace): void {
  29. $this->data[] = [
  30. 'start' => microtime(true),
  31. 'query' => $query,
  32. 'args' => $args,
  33. 'end' => microtime(true),
  34. 'backtrace' => $backtrace,
  35. ];
  36. }
  37. public function stopLastLdapRequest(): void {
  38. $this->data[count($this->data) - 1]['end'] = microtime(true);
  39. }
  40. public function getName(): string {
  41. return 'ldap';
  42. }
  43. public function collect(Request $request, Response $response, \Throwable $exception = null): void {
  44. }
  45. }