package com.constellio.app.modules.rm.extensions.schema;
import com.constellio.app.modules.rm.services.RMSchemasRecordsServices;
import com.constellio.app.modules.rm.wrappers.type.MediumType;
import com.constellio.data.frameworks.extensions.ExtensionBooleanResult;
import com.constellio.model.extensions.behaviors.RecordExtension;
import com.constellio.model.extensions.events.records.RecordLogicalDeletionValidationEvent;
import com.constellio.model.services.factories.ModelLayerFactory;
import com.constellio.model.services.search.SearchServices;
import static com.constellio.model.entities.schemas.Schemas.CODE;
/**
* Created by Charles Blanchette on 2017-03-22.
*/
public class RMMediumTypeRecordExtension extends RecordExtension {
String collection;
ModelLayerFactory modelLayerFactory;
RMSchemasRecordsServices rm;
public RMMediumTypeRecordExtension(String collection, ModelLayerFactory modelLayerFactory) {
this.modelLayerFactory = modelLayerFactory;
this.collection = collection;
this.rm = new RMSchemasRecordsServices(collection, modelLayerFactory);
}
@Override
public ExtensionBooleanResult isLogicallyDeletable(RecordLogicalDeletionValidationEvent event) {
if (MediumType.SCHEMA_TYPE.equals(event.getSchemaTypeCode())
&& event.getRecord().get(CODE).equals("DM")) {
return ExtensionBooleanResult.FALSE;
}
return super.isLogicallyDeletable(event);
}
}