package com.bagri.server.hazelcast.task.doc; import java.util.ArrayList; import java.util.Collection; import org.springframework.beans.factory.annotation.Autowired; import com.bagri.core.api.DocumentManagement; import com.bagri.core.server.api.SchemaRepository; import com.bagri.core.system.Permission; import com.bagri.server.hazelcast.impl.SchemaRepositoryImpl; import com.hazelcast.spring.context.SpringAware; @SpringAware public class DocumentUrisProvider extends com.bagri.client.hazelcast.task.doc.DocumentUrisProvider { private transient DocumentManagement docMgr; @Autowired public void setRepository(SchemaRepository repo) { this.repo = repo; this.docMgr = repo.getDocumentManagement(); } @Override public Collection<String> call() throws Exception { // not sure we have to check it at all.. ((SchemaRepositoryImpl) repo).getXQProcessor(clientId); checkPermission(Permission.Value.read); Collection<String> uris = docMgr.getDocumentUris(pattern, props); return new ArrayList<>(uris); } }