Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 3 additions & 6 deletions Controller/EditInPlaceController.php
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
use Translation\Bundle\Exception\MessageValidationException;
use Translation\Bundle\Service\StorageService;
use Translation\Common\Model\Message;
use Translation\Common\Model\MessageInterface;

/**
* @author Damien Alexandre <dalexandre@jolicode.com>
Expand Down Expand Up @@ -57,7 +58,7 @@ public function editAction(Request $request, $configName, $locale)
* @param string $locale
* @param array $validationGroups
*
* @return Message[]
* @return MessageInterface[]
*
* @throws MessageValidationException
*/
Expand All @@ -71,11 +72,7 @@ private function getMessages(Request $request, $locale, array $validationGroups
foreach ($data as $key => $value) {
list($domain, $translationKey) = explode('|', $key);

$message = new Message();
$message->setKey($translationKey);
$message->setTranslation($value);
$message->setDomain($domain);
$message->setLocale($locale);
$message = new Message($translationKey, $domain, $locale, $value);

$errors = $validator->validate($message, null, $validationGroups);
if (count($errors) > 0) {
Expand Down
14 changes: 7 additions & 7 deletions Controller/SymfonyProfilerController.php
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
use Symfony\Component\VarDumper\Cloner\Data;
use Translation\Bundle\Model\SfProfilerMessage;
use Translation\Bundle\Service\StorageService;
use Translation\Common\Model\Message;
use Translation\Common\Model\MessageInterface;

/**
* @author Tobias Nyholm <tobias.nyholm@gmail.com>
Expand Down Expand Up @@ -154,16 +154,16 @@ private function getMessage(Request $request, $token)
throw $this->createNotFoundException('No collector with name "translation" was found.');
}

$messages = $dataCollector->getMessages();
$collectorMessages = $dataCollector->getMessages();

if ($messages instanceof Data) {
$messages = $messages->getValue(true);
if ($collectorMessages instanceof Data) {
$collectorMessages = $collectorMessages->getValue(true);
}

if (!isset($messages[$messageId])) {
if (!isset($collectorMessages[$messageId])) {
throw $this->createNotFoundException(sprintf('No message with key "%s" was found.', $messageId));
}
$message = SfProfilerMessage::create($messages[$messageId]);
$message = SfProfilerMessage::create($collectorMessages[$messageId]);

if (DataCollectorTranslator::MESSAGE_EQUALS_FALLBACK === $message->getState()) {
$message->setLocale($profile->getCollector('request')->getLocale())
Expand All @@ -177,7 +177,7 @@ private function getMessage(Request $request, $token)
* @param Request $request
* @param string $token
*
* @return Message[]
* @return MessageInterface[]
*/
protected function getSelectedMessages(Request $request, $token)
{
Expand Down
28 changes: 13 additions & 15 deletions Controller/WebUIController.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
use Translation\Common\Exception\StorageException;
use Translation\Bundle\Model\CatalogueMessage;
use Translation\Common\Model\Message;
use Translation\Common\Model\MessageInterface;

/**
* @author Tobias Nyholm <tobias.nyholm@gmail.com>
Expand Down Expand Up @@ -141,8 +142,8 @@ public function createAction(Request $request, $configName, $locale, $domain)

try {
$message = $this->getMessageFromRequest($request);
$message->setDomain($domain);
$message->setLocale($locale);
$message = $message->withDomain($domain);
$message = $message->withLocale($locale);
$this->validateMessage($message, ['Create']);
} catch (MessageValidationException $e) {
return new Response($e->getMessage(), 400);
Expand Down Expand Up @@ -180,8 +181,8 @@ public function editAction(Request $request, $configName, $locale, $domain)

try {
$message = $this->getMessageFromRequest($request);
$message->setDomain($domain);
$message->setLocale($locale);
$message = $message->withDomain($domain);
$message = $message->withLocale($locale);
$this->validateMessage($message, ['Edit']);
} catch (MessageValidationException $e) {
return new Response($e->getMessage(), 400);
Expand Down Expand Up @@ -210,8 +211,8 @@ public function deleteAction(Request $request, $configName, $locale, $domain)

try {
$message = $this->getMessageFromRequest($request);
$message->setLocale($locale);
$message->setDomain($domain);
$message = $message->withLocale($locale);
$message = $message->withDomain($domain);
$this->validateMessage($message, ['Delete']);
} catch (MessageValidationException $e) {
return new Response($e->getMessage(), 400);
Expand All @@ -227,18 +228,15 @@ public function deleteAction(Request $request, $configName, $locale, $domain)
/**
* @param Request $request
*
* @return Message
* @return MessageInterface
*/
private function getMessageFromRequest(Request $request)
{
$json = $request->getContent();
$data = json_decode($json, true);
$message = new Message();
if (isset($data['key'])) {
$message->setKey($data['key']);
}
$message = new Message($data['key']);
if (isset($data['message'])) {
$message->setTranslation($data['message']);
$message = $message->withTranslation($data['message']);
}

return $message;
Expand All @@ -262,12 +260,12 @@ private function getLocale2LanguageMap()
}

/**
* @param Message $message
* @param array $validationGroups
* @param MessageInterface $message
* @param array $validationGroups
*
* @throws MessageValidationException
*/
private function validateMessage(Message $message, array $validationGroups)
private function validateMessage(MessageInterface $message, array $validationGroups)
{
$errors = $this->get('validator')->validate($message, null, $validationGroups);
if (count($errors) > 0) {
Expand Down
5 changes: 3 additions & 2 deletions Model/SfProfilerMessage.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@

use Symfony\Component\VarDumper\Cloner\Data;
use Translation\Common\Model\Message;
use Translation\Common\Model\MessageInterface;

/**
* @author Tobias Nyholm <tobias.nyholm@gmail.com>
Expand Down Expand Up @@ -118,9 +119,9 @@ public static function create(array $data)
}

/**
* Convert to a Common\Message.
* Convert to a Common\Model\MessageInterface.
*
* @return Message
* @return MessageInterface
*/
public function convertToMessage()
{
Expand Down
11 changes: 6 additions & 5 deletions Service/StorageService.php
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
use Translation\Bundle\Model\Configuration;
use Translation\Common\Exception\LogicException;
use Translation\Common\Model\Message;
use Translation\Common\Model\MessageInterface;
use Translation\Common\Storage;
use Translation\Common\TransferableStorage;

Expand Down Expand Up @@ -208,7 +209,7 @@ private function getFromStorages(array $storages, $locale, $domain, $key)
*
* {@inheritdoc}
*/
public function create(Message $message)
public function create(MessageInterface $message)
{
// Validate if message actually has data
if (empty((array) $message)) {
Expand All @@ -229,18 +230,18 @@ public function create(Message $message)
*
* {@inheritdoc}
*/
public function update(Message $message)
public function update(MessageInterface $message)
{
foreach ([$this->localStorages, $this->remoteStorages] as $storages) {
$this->updateStorages($storages, $message);
}
}

/**
* @param Storage[] $storages
* @param Message $message
* @param Storage[] $storages
* @param MessageInterface $message
*/
private function updateStorages(array $storages, Message $message)
private function updateStorages(array $storages, MessageInterface $message)
{
// Validate if message actually has data
if (empty((array) $message)) {
Expand Down
4 changes: 2 additions & 2 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@
"symfony/finder": "^2.7 || ^3.0 || ^4.0",
"symfony/intl": "^2.7 || ^3.0 || ^4.0",

"php-translation/common": "^0.2.1",
"php-translation/symfony-storage": "^0.4.0",
"php-translation/common": "^0.3",
"php-translation/symfony-storage": "^0.5.0",
"php-translation/extractor": "^1.3"
},
"require-dev": {
Expand Down