package io.lumify.csv; import io.lumify.core.ingest.graphProperty.GraphPropertyWorkData; import io.lumify.core.ingest.graphProperty.PostMimeTypeWorker; import io.lumify.core.model.properties.LumifyProperties; import org.securegraph.Authorizations; import org.securegraph.Vertex; import org.securegraph.Visibility; import org.securegraph.mutation.ExistingElementMutation; public class CsvPostMimeTypeWorker extends PostMimeTypeWorker { private static final String MIME_TYPE_TEXT_CSV = "text/csv"; private static final String MULTI_KEY = CsvPostMimeTypeWorker.class.getName(); @Override public void execute(String mimeType, GraphPropertyWorkData data, Authorizations authorizations) throws Exception { if (MIME_TYPE_TEXT_CSV.equals(mimeType)) { addCsvGraphPropertyWorkerToWhiteList((Vertex) data.getElement(), data.getVisibility(), authorizations); } } private void addCsvGraphPropertyWorkerToWhiteList(Vertex vertex, Visibility visibility, Authorizations authorizations) { ExistingElementMutation<Vertex> m = vertex.prepareMutation(); LumifyProperties.GRAPH_PROPERTY_WORKER_WHITE_LIST.addPropertyValue(m, MULTI_KEY, CsvGraphPropertyWorker.class.getName(), visibility); m.save(authorizations); } }