I am working on adding some custom columns to the datastore table in my HTML Bridge based plugin. I have added the following to my plugin.xml file:
<extension id="com.mycompany.vcenterWebClientui.datastore.list.myNiceColumns">
<extendedPoint>vsphere.core.datastore.list.columns</extendedPoint>
<object>
<items>
<com.vmware.ui.lists.ColumnContainer>
<uid>com.mycompany.vcenterWebClientui.datastore.column.myCustomName</uid>
<dataInfo>
<com.vmware.ui.lists.ColumnDataSourceInfo>
<headerText>#{datastore.column.myCustomName}</headerText>
<requestedProperties>
<String>myCustomName</String>
</requestedProperties>
<sortProperty>myCustomName</sortProperty>
<exportProperty>myCustomName</exportProperty>
</com.vmware.ui.lists.ColumnDataSourceInfo>
</dataInfo>
</com.vmware.ui.lists.ColumnContainer>
</items>
</object>
</extension>
The result is that my column does appear as expected in the datastore table.
But I don't understand how I am to feed the appropriate data to the column. I don't see my data adapter class being called.
I tried adding Datastore to the annotation @type("Datastore,myDataType") of my DataProviderAdapter but that doesn't seem to result in it being invoked to get data for the column.
I looked at the documentation and also the chassisRackVSphere example, but I haven't spotted the solution in any of those.
My question is how do I tie that column I have added to my DataProviderAdapter (or another service side class) to supply the data for the column?