Class ObjectView
- java.lang.Object
-
- org.neotropic.kuwaiba.core.apis.integration.modules.views.AbstractView<com.vaadin.flow.component.orderedlayout.VerticalLayout>
-
- org.neotropic.kuwaiba.modules.optional.physcon.views.ObjectView
-
public class ObjectView extends AbstractView<com.vaadin.flow.component.orderedlayout.VerticalLayout>
View for object view representation- Author:
- Orlando Paz <orlando.paz@kuwaiba.org>
-
-
Field Summary
-
Fields inherited from class org.neotropic.kuwaiba.core.apis.integration.modules.views.AbstractView
lstDeselectEvents, lstSelectionEvents, properties, viewMap
-
-
Constructor Summary
Constructors Constructor Description ObjectView(BusinessObjectLight businessObject, MetadataEntityManager mem, ApplicationEntityManager aem, BusinessEntityManager bem, TranslationService ts, ResourceFactory resourceFactory)
-
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[] theSavedView)
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(AbstractImageExporter exporter)
Exports the view as image using the given exporter.com.vaadin.flow.component.orderedlayout.VerticalLayout
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.MxGraphCanvas<BusinessObjectLight,BusinessObjectLight>
getMxGraphCanvas()
void
initialize(BusinessObjectLight businessObject)
Builds the view from scratch and tries to recover the last saved state, if it exists.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
resetView()
void
setHeight(Integer height)
void
setMxGraphCanvas(MxGraphCanvas<BusinessObjectLight,BusinessObjectLight> mxGraph)
void
setWidth(Integer width)
-
Methods inherited from class org.neotropic.kuwaiba.core.apis.integration.modules.views.AbstractView
addDeselectionListener, addSelectionListener, fireDeselectEvents, fireSelectionEvents, getAsViewMap, getProperties, removeDeselectListener, removeSelectionListener
-
-
-
-
Constructor Detail
-
ObjectView
public ObjectView(BusinessObjectLight businessObject, MetadataEntityManager mem, ApplicationEntityManager aem, BusinessEntityManager bem, TranslationService ts, ResourceFactory resourceFactory)
-
-
Method Detail
-
initialize
public void initialize(BusinessObjectLight businessObject)
Builds the view from scratch and tries to recover the last saved state, if it exists.- Parameters:
businessObject
- The inventory object used to build the view.
-
getMxGraphCanvas
public MxGraphCanvas<BusinessObjectLight,BusinessObjectLight> getMxGraphCanvas()
-
setMxGraphCanvas
public void setMxGraphCanvas(MxGraphCanvas<BusinessObjectLight,BusinessObjectLight> mxGraph)
-
setHeight
public void setHeight(Integer height)
-
setWidth
public void setWidth(Integer width)
-
resetView
public void resetView()
-
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.vaadin.flow.component.orderedlayout.VerticalLayout>
- 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(AbstractImageExporter exporter)
Description copied from class:AbstractView
Exports the view as image using the given exporter. It most likely will have to be called after calling#build()
or#build(java.lang.Object)
.- Specified by:
getAsImage
in classAbstractView<com.vaadin.flow.component.orderedlayout.VerticalLayout>
- Parameters:
exporter
- The exporter used to generate the byte array.- Returns:
- A byte array with a formated byte array of the view.
-
getAsUiElement
public com.vaadin.flow.component.orderedlayout.VerticalLayout 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.vaadin.flow.component.orderedlayout.VerticalLayout>
- Returns:
- An embeddable component (Panel, VerticalLayout, etc)
- Throws:
InvalidArgumentException
- If the component could not be created for some reason (most likely, misconfiguration).
-
buildFromSavedView
public void buildFromSavedView(byte[] theSavedView)
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.vaadin.flow.component.orderedlayout.VerticalLayout>
- Parameters:
theSavedView
- The view to be rendered.
-
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.vaadin.flow.component.orderedlayout.VerticalLayout>
-
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.vaadin.flow.component.orderedlayout.VerticalLayout>
- 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.vaadin.flow.component.orderedlayout.VerticalLayout>
- 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.vaadin.flow.component.orderedlayout.VerticalLayout>
- 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.vaadin.flow.component.orderedlayout.VerticalLayout>
- 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.vaadin.flow.component.orderedlayout.VerticalLayout>
- 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.vaadin.flow.component.orderedlayout.VerticalLayout>
- Parameters:
listener
- The listener object.
-
-