Class SerializerUtils

java.lang.Object
org.rumbledb.serialization.SerializerUtils

public final class SerializerUtils extends Object
Shared helpers for Serializer implementations (map serialization, DM node names).
  • Field Details

    • URI_ATTRIBUTES

      public static final Set<String> URI_ATTRIBUTES
    • HTML5_VOID_ELEMENTS

      public static final Set<String> HTML5_VOID_ELEMENTS
  • Method Details

    • escapeUriAttribute

      public static String escapeUriAttribute(String value)
      Escapes URI attribute values using percent-encoding for non-ASCII characters.
    • appendDmNodeNameLexical

      public static void appendDmNodeNameLexical(StringBuilder sb, Item item)
    • appendXmlDeclaration

      public static void appendXmlDeclaration(StringBuilder sb, SerializationParameters params)
    • getEffectiveXmlVersion

      public static String getEffectiveXmlVersion(SerializationParameters params)
    • serializeMapAsJsonSafeObject

      public static void serializeMapAsJsonSafeObject(Serializer serializer, SerializationParameters params, Item mapItem, StringBuilder sb, String indent, String optionalPrefixBeforeOpenBrace)
      Serializes a map item as a JSON object shape (with optional TYSON type prefix before "{").
      Parameters:
      optionalPrefixBeforeOpenBrace - e.g. TYSON ("type") ; null or empty for JSON / hybrid
    • appendJsonEscapedString

      public static void appendJsonEscapedString(StringBuilder sb, String value, CharsetEncoder encoder)
      Appends the JSON-escaped form of value to sb, using the provided cached encoder to decide whether non-ASCII code points can be represented directly or must be Unicode-escaped.
    • appendJsonEscapedString

      public static void appendJsonEscapedString(StringBuilder sb, String value, SerializationParameters params)
      Convenience overload that builds a throwaway encoder from params. Prefer appendJsonEscapedString(StringBuilder, String, CharsetEncoder) when a cached encoder is available (e.g. from buildEncodingChecker(org.rumbledb.serialization.SerializationParameters)).