Соответствие порядка байтов и битов в преобразователе типов (текст, base64, dec, hex, bin) - PullRequest
0 голосов
/ 30 ноября 2018

У меня есть задача создать веб-сервис RESTful с Jersey Jax-RS, который преобразует данные между текстом (я использовал UTF-8), base64, десятичное, шестнадцатеричное и двоичное.

ИнтернетСервис работает сейчас так: метод post использует JSON, который содержит тип и значение входных данных.Массив, заполненный различными преобразованиями, созданными моей бизнес-логикой, добавляется в JSON и затем создается методом.

пример этого будет выглядеть следующим образом:

(тело запроса)

{
    "input": {
        "type":"UTF_8",
        "value":"abc"
    }
}

(тело ответа)

{
    "input": {
        "type":"UTF_8",
        "value":"abc"
    },
    "output": [
        {
            "type":"base64",
            "value":"YWJj"
        },
        {
            "type":"decimal",
            "value":"97,98,99"
        },
        {
            "type":"hexadecimal",
            "value":"616263"
        },
        {
            "type":"binary",
            "value":"011000010110001001100011"
        }
    ]
}

Пока все хорошо, но мне сказали расширятьсяэтот веб-сервис, поэтому он различает различные байтовые и битовые порядки.

Упрощенный пример того, каковы ожидания (с моей точки зрения):

(Тело запроса)

{
    "input": {
        "type":"<type>",
        "value":"<value>",
        "input_format": {
            "byte_order":"<byte_order>",
            "bit_order":"<bit_order>"
        }
    }
}

(Тело ответа)

{
    "input": {
        "type":"<type>",
        "value":"<value>",
        "input_format": {
            "byte_order":"<byte_order>",
            "bit_order":"<bit_order>"
        }
    },
    "output": {
        "output_format": {
            "byte_order":"<byte_order>",
            "bit_order":"<bit_order>"
        },
        "conversion": [
            {
                "type":"<type>",
                "value":"<value>",
            }, {...}, {...}, {...}
        ]
    }
}

С моим пониманием концепции байтов и порядка битов это расширение неЭто не имеет смысла для меня, потому что данные, между которыми я преобразую, являются байтовым потоком, так что нет ни одного или менее значимого байта (по крайней мере, с UTF-8).Следовательно, порядок байтов в этом контексте не имеет никакого смысла.

Мой вопрос заключается в том, правильна ли моя проверка или нет.И , в особенности , я хотел бы знать, имеет ли смысл расширение в отношении упорядочения битов (поэтому, имеет ли значение упорядочение битов в последовательности байтов, как я здесь) ...

...