public function assignRoleToUser(APIRole $role, User $user, RoleLimitation $roleLimitation = null)
{
$roleAssignment = new RoleAssignment(array('role' => $role, 'limitation' => $roleLimitation));
$inputMessage = $this->outputVisitor->visit($roleAssignment);
$inputMessage->headers['Accept'] = $this->outputVisitor->getMediaType('RoleAssignmentList');
$result = $this->client->request('POST', $this->requestParser->generate('userRoleAssignments', array('user' => $user->id)), $inputMessage);
$this->inputDispatcher->parse($result);
}