Skip to content

Commit

Permalink
latest update that extends functionality for updateUser, updateCompan…
Browse files Browse the repository at this point in the history
…y, etc.
  • Loading branch information
matthewtanner91 committed Mar 22, 2024
1 parent f3010fb commit 641ca6c
Show file tree
Hide file tree
Showing 4 changed files with 37 additions and 14 deletions.
2 changes: 1 addition & 1 deletion src/Consumer/SendCurlTaskConsumer.php
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ public function persist(array $batch): bool {
}

public function updateUser(array $userData): bool {
$data = $batch; //json_encode($userData);
$data = json_encode($userData);
$url = $this->protocol . '://' . $this->host . $this->usersEndpoint;

return $this->fork ? $this->_executeForked($url, $data) : $this->_executeCurl($url, $data);
Expand Down
27 changes: 15 additions & 12 deletions src/EventSubscriber/MoesifSubscriber.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,16 @@

use DateTime;
use DateTimeZone;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Symfony\Component\EventDispatcher\EventSubscriberInterface as SymfonyEventSubscriberInterface;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpKernel\Event\RequestEvent;
use Symfony\Component\HttpKernel\Event\ResponseEvent;
use Symfony\Component\HttpKernel\KernelEvents;
use Moesif\MoesifBundle\Service\MoesifApiService;
use Moesif\MoesifBundle\Interfaces\EventSubscriberInterface as MoesifEventSubscriberInterface;

class MoesifSubscriber implements EventSubscriberInterface
class MoesifSubscriber implements SymfonyEventSubscriberInterface, MoesifEventSubscriberInterface
{
private MoesifApiService $moesifApiService;

Expand Down Expand Up @@ -44,7 +46,7 @@ public function onKernelResponse(ResponseEvent $event): void
}
}

private function prepareData(Request $request, $response): array
private function prepareData(Request $request, Response $response): array
{
$startTime = new DateTime();
$startTime->setTimezone(new DateTimeZone("UTC"));
Expand Down Expand Up @@ -74,6 +76,7 @@ private function prepareData(Request $request, $response): array
'request' => $requestData,
'response' => $responseData,
'user_id' => $this->identifyUserId($request, $response),
'company_id' => $this->identifyCompanyId($request, $response),
'session_token' => $this->identifySessionToken($request, $response),
'company_id' => $this->identifyCompanyId($request, $response),
'metadata' => $this->getMetadata($request, $response),
Expand All @@ -96,47 +99,47 @@ private function getIp(Request $request): ?string
return $request->getClientIp();
}

private function identifyUserId(Request $request, $response): ?string
public function identifyUserId(Request $request, Response $response): ?string
{
return null;
}

private function identifyCompanyId(Request $request, $response): ?string
public function identifyCompanyId(Request $request, Response $response): ?string
{
return null;
}

private function identifySessionToken(Request $request, $response): ?string
public function identifySessionToken(Request $request, Response $response): ?string
{
return null;
}

private function getMetadata(Request $request, $response): ?array
public function getMetadata(Request $request, Response $response): ?array
{
return null;
}

private function skip(Request $request, $response): bool
public function skip(Request $request, Response $response): bool
{
return false;
}

private function maskRequestHeaders(array $headers): array
public function maskRequestHeaders(array $headers): array
{
return $headers;
}

private function maskResponseHeaders(array $headers): array
public function maskResponseHeaders(array $headers): array
{
return $headers;
}

private function maskRequestBody(string $body): ?string
public function maskRequestBody(string $body): ?string
{
return $body;
}

private function maskResponseBody(string $body): ?string
public function maskResponseBody(string $body): ?string
{
return $body;
}
Expand Down
18 changes: 18 additions & 0 deletions src/Interfaces/EventSubscriberInterface.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<?php

namespace Moesif\MoesifBundle\Interfaces;

use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;

interface EventSubscriberInterface {
public function identifyUserId(Request $request, Response $response): ?string;
public function identifyCompanyId(Request $request, Response $response): ?string;
public function identifySessionToken(Request $request, Response $response): ?string;
public function getMetadata(Request $request, Response $response): ?array;
public function skip(Request $request, Response $response): bool;
public function maskRequestHeaders(array $headers): array;
public function maskResponseHeaders(array $headers): array;
public function maskRequestBody(string $body): ?string;
public function maskResponseBody(string $body): ?string;
}
4 changes: 3 additions & 1 deletion src/Resources/config/services.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,9 @@ services:

Moesif\MoesifBundle\EventSubscriber\:
resource: '../../EventSubscriber/*'
tags: ['kernel.event_subscriber']
tags:
- { name: 'kernel.event_subscriber' }
- { name: 'moesif.event_subscriber' }

# Define your services and any specific dependencies
Moesif\MoesifBundle\Service\MoesifApiService:
Expand Down

0 comments on commit 641ca6c

Please sign in to comment.