Class RackView
- java.lang.Object
-
- org.neotropic.kuwaiba.core.apis.integration.views.AbstractView<com.neotropic.flow.component.mxgraph.MxGraph>
-
- org.neotropic.kuwaiba.modules.optional.physcon.views.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 Summary
Fields Modifier and Type Field Description static String
PROPERTY_BORDER_COLOR
static String
PROPERTY_BORDER_WIDTH
static String
PROPERTY_COLOR
static String
PROPERTY_ELLIPSE_COLOR
static String
PROPERTY_HEIGHT
static String
PROPERTY_INTERIOR_COLOR
static String
PROPERTY_IS_EQUIPMENT
static String
PROPERTY_IS_SLOT
static String
PROPERTY_NAME
static String
PROPERTY_NUM_OF_SIDES
static String
PROPERTY_OPAQUE
static String
PROPERTY_OUTLINE_COLOR
static String
PROPERTY_OVAL_COLOR
static String
PROPERTY_TYPE
static String
PROPERTY_WIDTH
static String
PROPERTY_X
static String
PROPERTY_Y
static String
SHAPE_ELLIPSE
static String
SHAPE_LABEL
static String
SHAPE_POLYGON
static String
SHAPE_RECTANGLE
static int
UNIT_HEIGHT
static int
UNIT_WIDTH
-
Fields inherited from class org.neotropic.kuwaiba.core.apis.integration.views.AbstractView
properties, viewMap
-
-
Constructor Summary
Constructors Constructor Description RackView(BusinessObjectLight businessObject, boolean showLayouts, BusinessEntityManager bem, ApplicationEntityManager aem, MetadataEntityManager mem, TranslationService ts, PhysicalConnectionsService physicalConnectionsService, PhysicalPathViewWidget physicalPathViewWidget)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AbstractViewEdge
addEdge(BusinessObjectLight businessObject, BusinessObjectLight sourceBusinessObject, BusinessObjectLight targetBusinessObject, Properties properties)
Adds an edge to views that are not generated automatically.AbstractViewNode
addNode(BusinessObjectLight businessObject, Properties properties)
Adds a node to views that are not generated automatically.void
buildFromSavedView(byte[] view)
Builds the view.void
clean()
Cleans the view so some other thing can be painted on the canvas.void
edgeClickListener(ViewEventListener listener)
Adds a listener to the edge click events.byte[]
getAsImage()
Exports the view to a PNG image.com.neotropic.flow.component.mxgraph.MxGraph
getAsUiElement()
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)
.byte[]
getAsXml()
Exports the view to XML.HashMap<BusinessObjectLight,List<BusinessObjectLight>>
getMapChildrensCache()
HashMap<BusinessObjectLight,com.neotropic.flow.component.mxgraph.MxGraphNode>
getMapNamedObjects()
void
initialize(BusinessObjectLight businessObject)
Builds a view from scratch.boolean
isOrderDescending()
void
nodeClickListener(ViewEventListener listener)
Adds a listener to the node click events.void
removeEdge(BusinessObjectLight businessObject)
remove a edge from the viewMapvoid
removeNode(BusinessObjectLight businessObject)
remove a node from the viewMapvoid
setMapChildrensCache(HashMap<BusinessObjectLight,List<BusinessObjectLight>> mapChildrensCache)
void
setMapNamedObjects(HashMap<BusinessObjectLight,com.neotropic.flow.component.mxgraph.MxGraphNode> mapNamedObjects)
void
setOrderDescending(boolean orderDescending)
-
Methods inherited from class org.neotropic.kuwaiba.core.apis.integration.views.AbstractView
getAsViewMap, getProperties
-
-
-
-
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_IS_SLOT
public static final String PROPERTY_IS_SLOT
- See Also:
- Constant Field Values
-
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
-
-
Constructor Detail
-
RackView
public RackView(BusinessObjectLight businessObject, boolean showLayouts, BusinessEntityManager bem, ApplicationEntityManager aem, MetadataEntityManager mem, TranslationService ts, PhysicalConnectionsService physicalConnectionsService, PhysicalPathViewWidget physicalPathViewWidget)
-
-
Method Detail
-
isOrderDescending
public boolean isOrderDescending()
-
setOrderDescending
public void setOrderDescending(boolean orderDescending)
-
getMapChildrensCache
public HashMap<BusinessObjectLight,List<BusinessObjectLight>> getMapChildrensCache()
-
setMapChildrensCache
public void setMapChildrensCache(HashMap<BusinessObjectLight,List<BusinessObjectLight>> mapChildrensCache)
-
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 classAbstractView<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 classAbstractView<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 classAbstractView<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 classAbstractView<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 classAbstractView<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 classAbstractView<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 classAbstractView<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 classAbstractView<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 classAbstractView<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 classAbstractView<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 classAbstractView<com.neotropic.flow.component.mxgraph.MxGraph>
-
-