Class WorkspaceMetadata
- java.lang.Object
-
- com.smeup.jardis.jariko.lsp.handler.WorkspaceMetadata
-
public class WorkspaceMetadata extends Object
This class model all metadata related to workspace.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static DocumentMetadatacreateDocumentMetadata(URI uri)voiddeleteDocumentsMetadata(Consumer<File> notDeletedFile)Delete all documents metadatavoidgetCopiesMetadata(Consumer<CopyMetadata> copiesMetadataConsumer)Gets the copies metadataDocumentMetadatagetDocumentMetadata(URI uri)static WorkspaceMetadatagetInstance(WorkspaceMetadataConfig workspaceMetadataConfig)Creates an instance of WorkspaceMetadatavoidgetProgramsMetadata(Consumer<ProgramMetadata> programMetadataConsumer)Gets the programs metadataWorkspaceMetadataConfiggetWorkspaceMetadataConfig()voidinvalidateDiagnosticParams(URI uri)Invalidate the diagnostic paramsvoidremoveMetadata(URI uri)Remove metadata related uri.voidstoreDocumentMetadata(DocumentMetadata documentMetadata)voidstoreDocumentMetadata(DocumentMetadata documentMetadata, Consumer<Path> didDocumentMetadataCreate)
-
-
-
Method Detail
-
getInstance
public static WorkspaceMetadata getInstance(WorkspaceMetadataConfig workspaceMetadataConfig)
Creates an instance of WorkspaceMetadata- Parameters:
workspaceMetadataConfig- The configuration of WorkspaceMetadata
-
createDocumentMetadata
public static DocumentMetadata createDocumentMetadata(URI uri)
-
getWorkspaceMetadataConfig
public WorkspaceMetadataConfig getWorkspaceMetadataConfig()
-
getDocumentMetadata
public DocumentMetadata getDocumentMetadata(URI uri)
- Returns:
- If exists an instance of DocumentMetadata, else null. Note that if uri is a program and the last modified date of program is later of metadata this method returns null anyway.
-
getProgramsMetadata
public void getProgramsMetadata(Consumer<ProgramMetadata> programMetadataConsumer)
Gets the programs metadata- Parameters:
programMetadataConsumer- The consumer of program metadata got by this method
-
getCopiesMetadata
public void getCopiesMetadata(Consumer<CopyMetadata> copiesMetadataConsumer)
Gets the copies metadata- Parameters:
copiesMetadataConsumer- The consumer of copy metadata got by this method
-
storeDocumentMetadata
public void storeDocumentMetadata(DocumentMetadata documentMetadata, Consumer<Path> didDocumentMetadataCreate)
-
storeDocumentMetadata
public void storeDocumentMetadata(DocumentMetadata documentMetadata)
-
deleteDocumentsMetadata
public void deleteDocumentsMetadata(Consumer<File> notDeletedFile)
Delete all documents metadata- Parameters:
notDeletedFile- Callback function called for each metadata file not deleted
-
invalidateDiagnosticParams
public void invalidateDiagnosticParams(URI uri)
Invalidate the diagnostic params- Parameters:
uri- document uri
-
removeMetadata
public void removeMetadata(URI uri)
Remove metadata related uri. Regardless uri be a program or a copy, is always called the invalidation of diagnostic params, after that, just for programs, the reference of the uri is searched and removed in all the CopyMetadata instances containing that uri. Finally, the metadata file is removed.- Parameters:
uri- The uri of program or copy for which is required the metadata removal.
-
-