package com.constellio.app.modules.es.ui.pages; import com.constellio.app.modules.es.model.connectors.ConnectorInstance; import com.constellio.app.modules.es.ui.components.TraversalSchedulesComponent; import com.constellio.app.ui.entities.MetadataVO; import com.constellio.app.ui.entities.RecordVO; import com.constellio.app.ui.framework.components.RecordFieldFactory; import com.vaadin.ui.Field; public class ConnectorInstanceFieldFactory extends RecordFieldFactory { @Override public Field<?> build(RecordVO recordVO, MetadataVO metadata) { if (metadata.getCode().contains(ConnectorInstance.CONNECTOR_TYPE)) { Field<?> field = super.build(recordVO, metadata); if (field != null) { field.setReadOnly(true); } return field; } else if (metadata.getCode().contains(ConnectorInstance.PROPERTIES_MAPPING)) { return null; } else if (metadata.getCode().contains(ConnectorInstance.TRAVERSAL_CODE)) { return null; } else if (metadata.getCode().contains(ConnectorInstance.TRAVERSAL_SCHEDULE)) { TraversalSchedulesComponent field = new TraversalSchedulesComponent(recordVO, metadata); postBuild(field, recordVO, metadata); return field; } else { return super.build(recordVO, metadata); } } }