Class RackView


  • public class RackView
    extends AbstractView<com.neotropic.flow.component.mxgraph.MxGraph>
    Rack view, shows the front view of the rack the way it should look like in the real world.
    Author:
    Orlando Paz <orlando.paz@kuwaiba.org>
    • Field Detail

      • PROPERTY_TYPE

        public static String PROPERTY_TYPE
      • PROPERTY_NAME

        public static String PROPERTY_NAME
      • PROPERTY_X

        public static String PROPERTY_X
      • PROPERTY_Y

        public static String PROPERTY_Y
      • PROPERTY_WIDTH

        public static String PROPERTY_WIDTH
      • PROPERTY_HEIGHT

        public static String PROPERTY_HEIGHT
      • PROPERTY_COLOR

        public static String PROPERTY_COLOR
      • PROPERTY_BORDER_WIDTH

        public static String PROPERTY_BORDER_WIDTH
      • PROPERTY_BORDER_COLOR

        public static String PROPERTY_BORDER_COLOR
      • PROPERTY_IS_EQUIPMENT

        public static String PROPERTY_IS_EQUIPMENT
      • PROPERTY_OPAQUE

        public static String PROPERTY_OPAQUE
      • SHAPE_RECTANGLE

        public static String SHAPE_RECTANGLE
      • SHAPE_POLYGON

        public static String SHAPE_POLYGON
      • SHAPE_ELLIPSE

        public static String SHAPE_ELLIPSE
      • SHAPE_LABEL

        public static String SHAPE_LABEL
      • PROPERTY_ELLIPSE_COLOR

        public static String PROPERTY_ELLIPSE_COLOR
      • PROPERTY_OVAL_COLOR

        public static String PROPERTY_OVAL_COLOR
      • PROPERTY_NUM_OF_SIDES

        public static String PROPERTY_NUM_OF_SIDES
      • PROPERTY_OUTLINE_COLOR

        public static String PROPERTY_OUTLINE_COLOR
      • PROPERTY_INTERIOR_COLOR

        public static String PROPERTY_INTERIOR_COLOR
      • UNIT_WIDTH

        public static int UNIT_WIDTH
      • UNIT_HEIGHT

        public static int UNIT_HEIGHT
    • Method Detail

      • isOrderDescending

        public boolean isOrderDescending()
      • setOrderDescending

        public void setOrderDescending​(boolean orderDescending)
      • getMapNamedObjects

        public HashMap<BusinessObjectLight,​com.neotropic.flow.component.mxgraph.MxGraphNode> getMapNamedObjects()
      • setMapNamedObjects

        public void setMapNamedObjects​(HashMap<BusinessObjectLight,​com.neotropic.flow.component.mxgraph.MxGraphNode> mapNamedObjects)
      • getAsXml

        public byte[] getAsXml()
        Description copied from class: AbstractView
        Exports the view to XML. It most likely will have to be called after calling #build() or #build(java.lang.Object).
        Specified by:
        getAsXml in class AbstractView<com.neotropic.flow.component.mxgraph.MxGraph>
        Returns:
        A byte array with an XML document representing the view. The format of the document must follow the Standard Kuwaiba View Text Format (SKTF)
      • getAsImage

        public byte[] getAsImage()
        Description copied from class: AbstractView
        Exports the view to a PNG image. It most likely will have to be called after calling #build() or #build(java.lang.Object).
        Specified by:
        getAsImage in class AbstractView<com.neotropic.flow.component.mxgraph.MxGraph>
        Returns:
        A byte array with a PNG formatted image of the view.
      • getAsUiElement

        public com.neotropic.flow.component.mxgraph.MxGraph getAsUiElement()
                                                                    throws InvalidArgumentException
        Description copied from class: AbstractView
        Gets an embeddable visual component that can be rendered in a dashboard.It most likely will have to be called after calling #build() or #build(java.lang.Object).
        Specified by:
        getAsUiElement in class AbstractView<com.neotropic.flow.component.mxgraph.MxGraph>
        Returns:
        An embeddable component (Panel, VerticalLayout, etc)
        Throws:
        InvalidArgumentException - If the component could not be created for some reason (most likely, misconfiguration).
      • initialize

        public void initialize​(BusinessObjectLight businessObject)
        Builds a view from scratch.
        Parameters:
        businessObject - The rack.
      • buildFromSavedView

        public void buildFromSavedView​(byte[] view)
        Description copied from class: AbstractView
        Builds the view. Call this method if no business object is required to build the view. It just loads the elements from an view definition structure (like an XML document).
        Specified by:
        buildFromSavedView in class AbstractView<com.neotropic.flow.component.mxgraph.MxGraph>
        Parameters:
        view - The view to be rendered.
      • addNode

        public AbstractViewNode addNode​(BusinessObjectLight businessObject,
                                        Properties properties)
        Description copied from class: AbstractView
        Adds a node to views that are not generated automatically.
        Specified by:
        addNode in class AbstractView<com.neotropic.flow.component.mxgraph.MxGraph>
        Parameters:
        businessObject - The business object behind the node to be added. Nodes that already exist will not be added.
        properties - The properties associated to this object, such as the location that will be used to place it or the URL of the icon that will represent the node.
        Returns:
        A reference to the newly added node.
      • addEdge

        public AbstractViewEdge addEdge​(BusinessObjectLight businessObject,
                                        BusinessObjectLight sourceBusinessObject,
                                        BusinessObjectLight targetBusinessObject,
                                        Properties properties)
        Description copied from class: AbstractView
        Adds an edge to views that are not generated automatically.
        Specified by:
        addEdge in class AbstractView<com.neotropic.flow.component.mxgraph.MxGraph>
        Parameters:
        businessObject - The business object behind the edge to be added. Edges that already exist will not be added.
        sourceBusinessObject - The business object behind the source node to the edge to be created.
        targetBusinessObject - The business object behind the target node to the edge to be created.
        properties - The properties associated to this object, such as the control points of the edge, or its color.
        Returns:
        A reference to the newly added edge.
      • removeNode

        public void removeNode​(BusinessObjectLight businessObject)
        Description copied from class: AbstractView
        remove a node from the viewMap
        Specified by:
        removeNode in class AbstractView<com.neotropic.flow.component.mxgraph.MxGraph>
        Parameters:
        businessObject - The business object behind the node to be removed
      • removeEdge

        public void removeEdge​(BusinessObjectLight businessObject)
        Description copied from class: AbstractView
        remove a edge from the viewMap
        Specified by:
        removeEdge in class AbstractView<com.neotropic.flow.component.mxgraph.MxGraph>
        Parameters:
        businessObject - The business object behind the edge to be removed
      • nodeClickListener

        public void nodeClickListener​(ViewEventListener listener)
        Description copied from class: AbstractView
        Adds a listener to the node click events.
        Specified by:
        nodeClickListener in class AbstractView<com.neotropic.flow.component.mxgraph.MxGraph>
        Parameters:
        listener - The listener object.
      • edgeClickListener

        public void edgeClickListener​(ViewEventListener listener)
        Description copied from class: AbstractView
        Adds a listener to the edge click events.
        Specified by:
        edgeClickListener in class AbstractView<com.neotropic.flow.component.mxgraph.MxGraph>
        Parameters:
        listener - The listener object.
      • clean

        public void clean()
        Description copied from class: AbstractView
        Cleans the view so some other thing can be painted on the canvas. Typically this is used in refresh buttons.
        Specified by:
        clean in class AbstractView<com.neotropic.flow.component.mxgraph.MxGraph>