Exemplo n.º 1
0
class IntentViewSet(viewsets.ModelViewSet):
    """
    ModelViewSet for getting all Intent entries for all users

    Access Control
    ===============
    - All users can read
    - AppMallSteward can view

    URIs
    ======
    GET /api/intent
    Summary:
        Get a list of all system-wide categories

    Response:
        200 - Successful operation - [IntentSerializer]

    POST /api/intent/
    Summary:
        Add an intent
    Request:
        data: IntentSerializer Schema
    Response:
        200 - Successful operation - IntentSerializer

    GET /api/intent/{pk}
    Summary:
        Find an intent Entry by ID
    Response:
        200 - Successful operation - IntentSerializer

    PUT /api/intent/{pk}
    Summary:
        Update an intent Entry by ID

    PATCH /api/intent/{pk}
    Summary:
        Update (Partial) an intent Entry by ID

    DELETE /api/intent/{pk}
    Summary:
        Delete an intent Entry by ID
    """
    queryset = model_access.get_all_intents()
    serializer_class = serializers.IntentSerializer
    permission_classes = (permissions.IsAppsMallStewardOrReadOnly, )
Exemplo n.º 2
0
    def list(self, request):
        if not hal.validate_version(request.META.get('HTTP_ACCEPT')):
            return Response('Invalid version requested',
                status=status.HTTP_406_NOT_ACCEPTABLE)

        root_url = hal.get_abs_url_for_iwc(request)
        profile = model_access.get_profile(request.user.username)  # flake8: noqa TODO: Is Necessary? - Variable not being used in method
        data = hal.create_base_structure(request,
            hal.generate_content_type(request.accepted_media_type))
        intents = intent_model_access.get_all_intents()
        items = []
        for i in intents:
            item = {"href": '{0!s}intent/{1!s}/'.format(root_url, i.id)}
            items.append(item)
        data['_links']['item'] = items

        return Response(data)
Exemplo n.º 3
0
def IntentListView(request):
    """
    List of intents
    """
    if not hal.validate_version(request.META.get('HTTP_ACCEPT')):
        return Response('Invalid version requested',
            status=status.HTTP_406_NOT_ACCEPTABLE)

    root_url = hal.get_abs_url_for_iwc(request)
    profile = model_access.get_profile(request.user.username)
    data = hal.create_base_structure(request,
        hal.generate_content_type(request.accepted_media_type))
    intents = intent_model_access.get_all_intents()
    items = []
    for i in intents:
        item = {"href": '%sintent/%s/' % (root_url, i.id)}
        items.append(item)
    data['_links']['item'] = items

    return Response(data)
Exemplo n.º 4
0
    def test__get_all_intents(self):
        results = list(model_access.get_all_intents().order_by("id"))

        self.assertListEqual(results, self.intents)