private function createWith(ResourceMetadata $resourceMetadata, string $property, $value) : ResourceMetadata
{
$getter = 'get' . ucfirst($property);
if (null !== $resourceMetadata->{$getter}()) {
return $resourceMetadata;
}
$wither = 'with' . ucfirst($property);
return $resourceMetadata->{$wither}($value);
}