Skip to content

Commit

Permalink
[SHIBUI-660]
Browse files Browse the repository at this point in the history
Lucene updates WIP.
  • Loading branch information
Bill Smith committed Jul 24, 2018
1 parent df16b6b commit 1462367
Showing 1 changed file with 46 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,14 @@
import edu.internet2.tier.shibboleth.admin.ui.domain.resolvers.MetadataResolver;
import edu.internet2.tier.shibboleth.admin.ui.domain.resolvers.MetadataResolverValidationService;
import edu.internet2.tier.shibboleth.admin.ui.repository.MetadataResolverRepository;
import edu.internet2.tier.shibboleth.admin.ui.service.IndexWriterService;
import edu.internet2.tier.shibboleth.admin.ui.service.MetadataResolverService;
import lombok.extern.slf4j.Slf4j;
import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.document.StringField;
import org.apache.lucene.index.IndexWriter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
Expand Down Expand Up @@ -47,6 +53,9 @@ public class MetadataResolversController {
@Autowired
MetadataResolverService metadataResolverService;

@Autowired
IndexWriterService indexWriterService;

@ExceptionHandler({InvalidTypeIdException.class, IOException.class, HttpMessageNotReadableException.class})
public ResponseEntity<?> unableToParseJson(Exception ex) {
return ResponseEntity.badRequest().body(new ErrorResponse(HttpStatus.BAD_REQUEST.toString(), ex.getMessage()));
Expand Down Expand Up @@ -150,4 +159,41 @@ private static URI getResourceUriFor(MetadataResolver resolver) {
.build()
.toUri();
}

private void updateLucene(MetadataResolver resolver) throws ComponentInitializationException {
IndexWriter indexWriter = null;
try {
indexWriter = indexWriterService.getIndexWriter(resolver.getResourceId());
} catch (IOException e) {
throw new ComponentInitializationException(e);
}

// add documents to indexWriter .. for each what?
/*
for () {
Document document = new Document();
document.add(new StringField("id", entityId, Field.Store.YES));
document.add(new TextField("content", entityId, Field.Store.YES)); // TODO: change entityId to be content of entity descriptor block
try {
indexWriter.addDocument(document);
} catch (IOException e) {
logger.error(e.getMessage(), e);
}
}
*/

Document document = new Document();
document.add(new StringField("id", resolver.getResourceId(), Field.Store.YES));
try {
indexWriter.addDocument(document);
} catch (IOException e) {
throw new ComponentInitializationException(e);
}

try {
indexWriter.commit();
} catch (IOException e) {
throw new ComponentInitializationException(e);
}
}
}

0 comments on commit 1462367

Please sign in to comment.