Class Border

  • All Implemented Interfaces:
    Element, Mark, MediaMark

    @Documentation(state=UNDOCUMENTED,
                   date="2023-07-26")
    public class Border
    extends Object
    implements MediaMark
    The border mark sets border styling. This mark applies to media nodes. This mark applies to media nodes and indicates that the image should be decorated with a border with the given color and size in pixels.

    The color should be given as a 6- or 8-digit hexadecimal value prefixed with a hash mark; for example #ff00cc or #00ffcc24. Where the 8-digit form is used, the final 2 hex digits represent the value for the alpha channel, which controls the color's opacity.

    Example

    Java

    
     Media.fileMedia(
             "6e7c7f2c-dd7a-499c-bceb-6f32bfbf30b5",
             "my project files"
     ).border("#ff00cc").size(200, 183);
     

    ADF

    
       {
         "type": "media",
         "attrs": {
           "id": "6e7c7f2c-dd7a-499c-bceb-6f32bfbf30b5",
           "collection": "my project files",
           "type": "file",
           "width": 200,
           "height": 183
         }
       }
     

    Result

    Note: This example uses a data URI to embed the image instead of retrieving the image from media services, which uses a different mechanism to supply the image content.
    • Field Detail

      • DEFAULT_SIZE

        public static final int DEFAULT_SIZE
        The default size, in pixels, that will be used for the border if it is not explicitly given.
        See Also:
        Constant Field Values
      • MINIMUM_SIZE

        public static final int MINIMUM_SIZE
        The minimum size, in pixels, that may be used for a border.
        See Also:
        Constant Field Values
      • MAXIMUM_SIZE

        public static final int MAXIMUM_SIZE
        The maximum size, in pixels, that may be used for a border.
        See Also:
        Constant Field Values
      • DEFAULT_COLOR

        public static final String DEFAULT_COLOR
        The default color that will be used for the border if it is not explicitly given.
        See Also:
        Constant Field Values
    • Method Detail

      • border

        public static Border border()
      • border

        public static Border border​(Color color)
      • size

        public int size()
      • size

        public Border size​(int size)
      • color

        public String color()
      • elementType

        public String elementType()
        Description copied from interface: Element
        The type value that identifies this element, such as "paragraph" or "strong".
        Specified by:
        elementType in interface Element
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • toString

        public String toString()
      • toMap

        public Map<String,​?> toMap()
        Description copied from interface: Element
        Transforms this element to a map of String values to various basic object types suitable for direct rendering as JSON content.
        Specified by:
        toMap in interface Element
        Returns:
        the map representation of this ADF element
      • copy

        public Border copy()
        Description copied from interface: Element
        Returns a deep copy of this element, including copies of any nodes or marks that it contains. The copy will not necessarily be in exactly the same state as the original in some cases. For example, a text node that is used inside a codeBlock will have the ability to use marks on it disabled, but a copy made of the text node using this method will not similarly disallow marks unless it is also added to a content node with those same restrictions.

        Implementations notes:

        • Implementations should narrow the return type.
        • Implementations should return this if the element is immutable. The @Immutable annotation should be used on the class to offer additional confirmation of this intent.
        • Implementations should return parse(toMap()) if they have state.
        • While there may be cases where it is worthwhile to do something more efficient than the conversion to a map and back, this is discouraged because it would add yet another fragile piece of code that breaks when new data is added to the node. The parse and toMap methods already have to be updated in these circumstances, so it makes sense to take advantage of that.
        Specified by:
        copy in interface Element
        Specified by:
        copy in interface Mark
        Specified by:
        copy in interface MediaMark
        Returns:
        a copy of this element, or this if the element is immutable anyway
      • mapWithType

        protected FieldMap mapWithType()
      • isSupported

        public boolean isSupported()
        Description copied from interface: Element
        Indicates whether this element is fully supported by this library. This library includes a small amount of support for preserving new, unrecognized node types during a round trip. These are represented by immutable placeholder objects that return false for this value.
        Specified by:
        isSupported in interface Element
        Returns:
        true for fully supported elements; false for immutable placeholders
      • validate

        public void validate()
        Description copied from interface: Element
        Verifies that the node is well-formed (including the state of any descendents that it has).
        Specified by:
        validate in interface Element