public static VaspMessage fromJson()

in src/main/java/org/openvasp/client/model/VaspMessage.java [206:237]


    public static VaspMessage fromJson(@NonNull final String str) {
        val rootNode = Json.readTree(str);
        val messageTypeStr = extractMessageTypeStr(rootNode);
        val messageType = TypeDescriptor.fromIdStr(messageTypeStr);
        final VaspMessage result;
        switch (messageType) {
            case SESSION_REQUEST:
                result = Json.convertValue(SessionRequest.class, rootNode);
                break;
            case SESSION_REPLY:
                result = Json.convertValue(SessionReply.class, rootNode);
                break;
            case TRANSFER_REQUEST:
                result = Json.convertValue(TransferRequest.class, rootNode);
                break;
            case TRANSFER_REPLY:
                result = Json.convertValue(TransferReply.class, rootNode);
                break;
            case TRANSFER_DISPATCH:
                result = Json.convertValue(TransferDispatch.class, rootNode);
                break;
            case TRANSFER_CONFIRMATION:
                result = Json.convertValue(TransferConfirmation.class, rootNode);
                break;
            case TERMINATION:
                result = Json.convertValue(TerminationMessage.class, rootNode);
                break;
            default:
                throw new VaspException("An unknown message type " + messageTypeStr);
        }
        return result;
    }