Get :class:`rtcclient.models.Priority` object by its name

        At least either of `projectarea_id` and `projectarea_name` is given

        :param priority_name: the priority name
        :param projectarea_id: the :class:`rtcclient.project_area.ProjectArea`
            id
        :param projectarea_name: the project area name
        :return: the :class:`rtcclient.models.Priority` object
        :rtype: rtcclient.models.Priority

def getPriority(self, priority_name, projectarea_id=None,
                    projectarea_name=None):
        """Get :class:`rtcclient.models.Priority` object by its name

        At least either of `projectarea_id` and `projectarea_name` is given

        :param priority_name: the priority name
        :param projectarea_id: the :class:`rtcclient.project_area.ProjectArea`
            id
        :param projectarea_name: the project area name
        :return: the :class:`rtcclient.models.Priority` object
        :rtype: rtcclient.models.Priority
        """

        self.log.debug("Try to get <Priority %s>", priority_name)
        if not isinstance(priority_name,
                          six.string_types) or not priority_name:
            excp_msg = "Please specify a valid Priority name"
            self.log.error(excp_msg)
            raise exception.BadValue(excp_msg)

        priorities = self._getPriorities(projectarea_id=projectarea_id,
                                         projectarea_name=projectarea_name,
                                         priority_name=priority_name)

        if priorities is not None:
            priority = priorities[0]
            self.log.info("Find <Priority %s>", priority)
            return priority

        self.log.error("No Priority named %s", priority_name)
        raise exception.NotFound("No Priority named %s" % priority_name)