gerlowskija commented on code in PR #1704:
URL: https://github.com/apache/solr/pull/1704#discussion_r1242677061


##########
solr/core/src/java/org/apache/solr/handler/admin/api/CoreReplicationAPI.java:
##########
@@ -88,4 +90,137 @@ public IndexVersionResponse(Long indexVersion, Long 
generation, String status) {
       this.status = status;
     }
   }
+
+  /** Response for {@link CoreReplicationAPI#fetchFileList(long)}. */
+  public static class FileListResponse extends SolrJerseyResponse {
+    @JsonProperty("filelist")
+    public List<FileMetaData> fileList;
+
+    @JsonProperty("confFiles")
+    public List<FileMetaData> confFiles;
+
+    @JsonProperty("status")
+    public String status;
+
+    @JsonProperty("message")
+    public String message;
+
+    @JsonProperty("exception")
+    public Exception exception;
+
+    public FileListResponse() {}
+
+    public void addToFileList(List<FileMetaData> fileMetaData) {
+      if (fileList == null) {
+        fileList = new ArrayList<>();
+      }
+      fileList.addAll(fileMetaData);
+    }
+
+    public void addToConfFiles(List<FileMetaData> confFilesMetaData) {
+      if (confFiles == null) {
+        confFiles = new ArrayList<>();
+      }
+      confFiles.addAll(confFilesMetaData);
+    }
+
+    public void setFileList(List<FileMetaData> fileList) {

Review Comment:
   [Q] Do setters/getters here provide any value?  We kindof have to make the 
fields in this class 'public' bc of how we use Jackson, and it doesn't look 
like the getters/setters are doing anything that'd be different from users just 
accessing the fields directly.



##########
solr/core/src/java/org/apache/solr/handler/admin/api/ReplicationAPIBase.java:
##########
@@ -73,22 +62,24 @@ protected CoreReplicationAPI.IndexVersionResponse 
doFetchIndexVersion() throws I
     return replicationHandler.getIndexVersionResponse();
   }
 
-  protected NamedList<Object> doFetchFiles(long generation) {
+  protected CoreReplicationAPI.FileListResponse doFetchFileList(long 
generation) {
     ReplicationHandler replicationHandler =
         (ReplicationHandler) 
solrCore.getRequestHandler(ReplicationHandler.PATH);
     return getFileList(generation, replicationHandler);
   }
 
-  protected NamedList<Object> getFileList(long generation, ReplicationHandler 
replicationHandler) {
+  protected CoreReplicationAPI.FileListResponse getFileList(
+      long generation, ReplicationHandler replicationHandler) {
     final IndexDeletionPolicyWrapper delPol = solrCore.getDeletionPolicy();
-    final NamedList<Object> filesResponse = new NamedList<>();

Review Comment:
   [+1] Woohoo - always nice to see NamedList usages go away!



##########
solr/core/src/java/org/apache/solr/handler/ReplicationHandler.java:
##########
@@ -764,12 +765,8 @@ public FileInfo(long lasmodified, String name, long size, 
long checksum) {
       this.checksum = checksum;
     }
 
-    Map<String, Object> getAsMap() {
-      Map<String, Object> map = new HashMap<>();
-      map.put(NAME, name);
-      map.put(SIZE, size);
-      map.put(CHECKSUM, checksum);
-      return map;
+    CoreReplicationAPI.FileMetaData getAsMap() {

Review Comment:
   [-1] We probably need to rename this method, since it's no longer returning 
a map 😛 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@solr.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@solr.apache.org
For additional commands, e-mail: issues-h...@solr.apache.org

Reply via email to