Added method \FederationLib\Classes > Validate > associationType()
Refactored \FederationLib\Classes > Validate
This commit is contained in:
parent
e6a869c216
commit
a2f4b2b685
1 changed files with 25 additions and 12 deletions
|
@ -5,7 +5,6 @@
|
||||||
use FederationLib\Enums\Standard\PeerType;
|
use FederationLib\Enums\Standard\PeerType;
|
||||||
use FederationLib\Enums\Standard\InternetPeerType;
|
use FederationLib\Enums\Standard\InternetPeerType;
|
||||||
use FederationLib\Enums\Standard\PeerAssociationType;
|
use FederationLib\Enums\Standard\PeerAssociationType;
|
||||||
use FederationLib\Enums\Standard\PermissionRole;
|
|
||||||
use FederationLib\Enums\Standard\UserPeerType;
|
use FederationLib\Enums\Standard\UserPeerType;
|
||||||
use FederationLib\Exceptions\Standard\InvalidPeerMetadataException;
|
use FederationLib\Exceptions\Standard\InvalidPeerMetadataException;
|
||||||
|
|
||||||
|
@ -40,10 +39,7 @@
|
||||||
*/
|
*/
|
||||||
public static function validateEntityType(string $entity_type): bool
|
public static function validateEntityType(string $entity_type): bool
|
||||||
{
|
{
|
||||||
if(self::getEntityType($entity_type) === PeerType::UNKNOWN)
|
return self::getEntityType($entity_type) !== PeerType::UNKNOWN;
|
||||||
return false;
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -54,8 +50,10 @@
|
||||||
*/
|
*/
|
||||||
public static function peerAssociationType(string $type): bool
|
public static function peerAssociationType(string $type): bool
|
||||||
{
|
{
|
||||||
if(in_array(strtolower($type), PeerAssociationType::ALL))
|
if (in_array(strtolower($type), PeerAssociationType::ALL))
|
||||||
|
{
|
||||||
return true;
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -112,28 +110,43 @@
|
||||||
* @return void
|
* @return void
|
||||||
* @throws InvalidPeerMetadataException
|
* @throws InvalidPeerMetadataException
|
||||||
*/
|
*/
|
||||||
public static function validateMetadata(array $data, array $required, array $optional): void
|
public static function metadata(array $data, array $required, array $optional): void
|
||||||
{
|
{
|
||||||
foreach ($required as $property => $type)
|
foreach($required as $property => $type)
|
||||||
{
|
{
|
||||||
if (!isset($data[$property]))
|
if(!isset($data[$property]))
|
||||||
{
|
{
|
||||||
throw new InvalidPeerMetadataException(sprintf('The property "%s" is required in the metadata', $property));
|
throw new InvalidPeerMetadataException(sprintf('The property "%s" is required in the metadata', $property));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (gettype($data[$property]) !== $type)
|
if(gettype($data[$property]) !== $type)
|
||||||
{
|
{
|
||||||
throw new InvalidPeerMetadataException(sprintf('The property "%s" must be a %s in metadata, got %s', $property, $type, Security::gettype($data[$property])));
|
throw new InvalidPeerMetadataException(sprintf('The property "%s" must be a %s in metadata, got %s', $property, $type, Security::gettype($data[$property])));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach ($optional as $property => $type)
|
foreach($optional as $property => $type)
|
||||||
{
|
{
|
||||||
if (isset($data[$property]) && gettype($data[$property]) !== $type)
|
if(isset($data[$property]) && gettype($data[$property]) !== $type)
|
||||||
{
|
{
|
||||||
throw new InvalidPeerMetadataException(sprintf('The property "%s" must be a %s in metadata, got %s', $property, $type, Security::gettype($data[$property])));
|
throw new InvalidPeerMetadataException(sprintf('The property "%s" must be a %s in metadata, got %s', $property, $type, Security::gettype($data[$property])));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Validates if the given association type is valid.
|
||||||
|
*
|
||||||
|
* @param string $type
|
||||||
|
* @return bool
|
||||||
|
*/
|
||||||
|
public static function associationType(string $type): bool
|
||||||
|
{
|
||||||
|
if(in_array($type, PeerAssociationType::ALL))
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
Loading…
Add table
Reference in a new issue