Class BlobStoreIndexShardSnapshots

    • Constructor Detail

      • BlobStoreIndexShardSnapshots

        public BlobStoreIndexShardSnapshots​(List<SnapshotFiles> shardSnapshots)
    • Method Detail

      • snapshots

        public List<SnapshotFiles> snapshots()
        Returns list of snapshots
        Returns:
        list of snapshots
      • findPhysicalIndexFiles

        public List<BlobStoreIndexShardSnapshot.FileInfo> findPhysicalIndexFiles​(String physicalName)
        Finds reference to a snapshotted file by its original name
        Parameters:
        physicalName - original name
        Returns:
        a list of file infos that match specified physical file or null if the file is not present in any of snapshots
      • findNameFile

        public BlobStoreIndexShardSnapshot.FileInfo findNameFile​(String name)
        Finds reference to a snapshotted file by its snapshot name
        Parameters:
        name - file name
        Returns:
        file info or null if file is not present in any of snapshots
      • toXContent

        public XContentBuilder toXContent​(XContentBuilder builder,
                                          ToXContent.Params params)
                                   throws IOException
        Writes index file for the shard in the following format.
         
         {
             "files": [{
                 "name": "__3",
                 "physical_name": "_0.si",
                 "length": 310,
                 "checksum": "1tpsg3p",
                 "written_by": "5.1.0",
                 "meta_hash": "P9dsFxNMdWNlb......"
             }, {
                 "name": "__2",
                 "physical_name": "segments_2",
                 "length": 150,
                 "checksum": "11qjpz6",
                 "written_by": "5.1.0",
                 "meta_hash": "P9dsFwhzZWdtZ......."
             }, {
                 "name": "__1",
                 "physical_name": "_0.cfe",
                 "length": 363,
                 "checksum": "er9r9g",
                 "written_by": "5.1.0"
             }, {
                 "name": "__0",
                 "physical_name": "_0.cfs",
                 "length": 3354,
                 "checksum": "491liz",
                 "written_by": "5.1.0"
             }, {
                 "name": "__4",
                 "physical_name": "segments_3",
                 "length": 150,
                 "checksum": "134567",
                 "written_by": "5.1.0",
                 "meta_hash": "P9dsFwhzZWdtZ......."
             }],
             "snapshots": {
                 "snapshot_1": {
                     "files": ["__0", "__1", "__2", "__3"]
                 },
                 "snapshot_2": {
                     "files": ["__0", "__1", "__2", "__4"]
                 }
             }
         }
         }
         
         
        Specified by:
        toXContent in interface ToXContent
        Throws:
        IOException