Class ClientPrimaryDataDirectory

  • All Implemented Interfaces:
    java.lang.Comparable<ClientPrimaryDataEntity>

    public class ClientPrimaryDataDirectory
    extends ClientPrimaryDataEntity
    SampleClient version of PrimaryDataDirectory to use eDAL system like the stand-alone implementation.
    • Constructor Detail

      • ClientPrimaryDataDirectory

        public ClientPrimaryDataDirectory​(de.ipk_gatersleben.bit.bi.edal.rmi.interfaces.PrimaryDataDirectoryRmiInterface directory,
                                          ClientDataManager client)
        Constructor for ClientPrimaryDataDirectory.
        Parameters:
        directory - a PrimaryDataDirectoryRmiInterface object.
        client - the ClientDataManager
    • Method Detail

      • createPrimaryDataDirectory

        public ClientPrimaryDataDirectory createPrimaryDataDirectory​(java.lang.String path)
                                                              throws java.rmi.RemoteException,
                                                                     de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException
        PrimaryDataDirectory.createPrimaryDataDirectory(String)
        Parameters:
        path - the name of the new PrimaryDataDirectory.
        Returns:
        the new PrimaryDataDirectory object.
        null if failed
        Throws:
        de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException - if the current PrimaryDataEntityVersion of this PrimaryDataDirectory is marked as deleted or if there is already a PrimaryDataEntity with the same name.
        java.rmi.RemoteException - if unable to call remote function.
        See Also:
        PrimaryDataDirectoryRmiInterface.createPrimaryDataDirectory(String, Subject, Map)
      • createPrimaryDataFile

        public ClientPrimaryDataFile createPrimaryDataFile​(java.lang.String name)
                                                    throws de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException,
                                                           java.rmi.RemoteException
        PrimaryDataDirectory.createPrimaryDataFile(String)
        Parameters:
        name - of the new PrimaryDataFile object.
        Returns:
        the new PrimaryDataFile.
        null if failed
        Throws:
        de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException - if the current PrimaryDataEntityVersion of this PrimaryDataDirectory is marked as deleted or if there is already a PrimaryDataEntity with the same name.
        java.rmi.RemoteException - if unable to call remote function.
        See Also:
        PrimaryDataDirectoryRmiInterface.createPrimaryDataFile(String, Subject, Map)
      • exist

        public boolean exist​(java.lang.String path)
                      throws java.rmi.RemoteException,
                             de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException
        PrimaryDataDirectory.exist(String)
        Parameters:
        path - the name of the PrimaryDataEntity to check.
        Returns:
        true if there is already a PrimartyDataEntity with the same path;
        false otherwise
        Throws:
        de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException - if unable to load all PrimaryDataEntity objects in this PrimaryDataDirectory to check if the name already exists.
        java.rmi.RemoteException - if unable to call remote function.
        See Also:
        PrimaryDataDirectoryRmiInterface.exist(String, Subject)
      • getPrimaryDataEntity

        public ClientPrimaryDataEntity getPrimaryDataEntity​(java.lang.String name)
                                                     throws de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException,
                                                            java.rmi.RemoteException
        PrimaryDataDirectory.getPrimaryDataEntity(String)
        Parameters:
        name - name of the PrimaryDataEntity in this PrimaryDataDirectory.
        Returns:
        the found PrimaryDataEntity object.
        Throws:
        de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException - if no such PrimaryDataEntity exists.
        java.rmi.RemoteException - if unable to call remote function.
        See Also:
        PrimaryDataDirectoryRmiInterface.getPrimaryDataEntity(String, Subject)
      • listPrimaryDataEntities

        public java.util.List<ClientPrimaryDataEntity> listPrimaryDataEntities()
                                                                        throws de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException,
                                                                               java.rmi.RemoteException
        PrimaryDataDirectory.listPrimaryDataEntities()
        Returns:
        an unmodifiable List containing all PrimaryDataEntity
        Throws:
        de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException - this PrimaryDataDirectory.
        java.rmi.RemoteException - if unable to call remote function.
        See Also:
        PrimaryDataDirectoryRmiInterface.listPrimaryDataEntities(Subject)
      • getAllPublishedEntities

        public java.util.List<ClientPrimaryDataEntity> getAllPublishedEntities()
                                                                        throws de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException,
                                                                               java.rmi.RemoteException
        PrimaryDataDirectory.getAllPublishedEntities()
        Returns:
        a List of all PrimaryDataEntity with a PublicReference.
        Throws:
        de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException - if unable to load objcts.
        java.rmi.RemoteException - if unable to call remote function.
      • searchByPublicationStatus

        public java.util.List<ClientPrimaryDataEntity> searchByPublicationStatus​(de.ipk_gatersleben.bit.bi.edal.primary_data.reference.PublicationStatus publicationStatus)
                                                                          throws de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException,
                                                                                 java.rmi.RemoteException
        PrimaryDataDirectory.searchByPublicationStatus(PublicationStatus)
        Parameters:
        publicationStatus - the PublicationStatus of the searched PrimaryDataEntity.
        Returns:
        a List of all PrimaryDataEntity with a PublicReference.
        Throws:
        de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException - if unable to search for PublicationStatus
        java.rmi.RemoteException - if unable to call remote function.
        See Also:
        PrimaryDataDirectory.searchByPublicationStatus(PublicationStatus)
      • searchByDublinCoreElement

        public java.util.List<ClientPrimaryDataEntity> searchByDublinCoreElement​(de.ipk_gatersleben.bit.bi.edal.primary_data.metadata.EnumDublinCoreElements element,
                                                                                 de.ipk_gatersleben.bit.bi.edal.primary_data.metadata.UntypedData data,
                                                                                 boolean fuzzy,
                                                                                 boolean recursiveIntoSubdirectories)
                                                                          throws java.rmi.RemoteException,
                                                                                 de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException
        PrimaryDataDirectory.searchByDublinCoreElement(EnumDublinCoreElements, UntypedData, boolean, boolean)
        Parameters:
        element - the EnumDublinCoreElements for query.
        data - UntypedData parameter for search.
        fuzzy - true: exact search;
        false: fuzzy search.
        recursiveIntoSubdirectories - true: include also all sub directories recursively;
        false: search only in the current PrimaryDataDirectory object.
        Returns:
        an unmodifiable List of PrimaryDataEntity that match the parameter.
        Throws:
        java.rmi.RemoteException - if unable to call remote function.
        de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException - if unable to find PrimaryDataEntity object or if there are too much results.
        See Also:
        PrimaryDataDirectoryRmiInterface.searchByDublinCoreElement(EnumDublinCoreElements, UntypedData, boolean, boolean, Subject)
      • searchByMetaData

        public java.util.List<ClientPrimaryDataEntity> searchByMetaData​(de.ipk_gatersleben.bit.bi.edal.primary_data.metadata.MetaData query,
                                                                        boolean fuzzy,
                                                                        boolean recursiveIntoSubdirectories)
                                                                 throws java.rmi.RemoteException,
                                                                        de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException,
                                                                        de.ipk_gatersleben.bit.bi.edal.primary_data.metadata.MetaDataException
        PrimaryDataDirectory.searchByMetaData(MetaData, boolean, boolean)
        Parameters:
        query - a MetaData object for query.
        fuzzy - true: fuzzy search;
        false: exact search.
        recursiveIntoSubdirectories - true: include also all sub PrimaryDataDirectory recursively;
        false search only in the current PrimaryDataDirectory object.
        Returns:
        a unmodifiable List of PrimaryDataEntity that match the MetaData parameter.
        Throws:
        de.ipk_gatersleben.bit.bi.edal.primary_data.metadata.MetaDataException - if there are non valid values for some MetaData elements.
        java.rmi.RemoteException - if unable to call remote function.
        de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException - if unable to find PrimaryDataEntity object or if there are too much results.
        See Also:
        PrimaryDataDirectoryRmiInterface.searchByMetaData(MetaData, boolean, boolean, Subject)
      • searchByKeyword

        public java.util.List<ClientPrimaryDataEntity> searchByKeyword​(java.lang.String keyword,
                                                                       boolean fuzzy,
                                                                       boolean recursiveIntoSubdirectories)
                                                                throws java.rmi.RemoteException,
                                                                       de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException
        PrimaryDataDirectory.searchByKeyword(String, boolean, boolean)
        Parameters:
        keyword - the term to search over all elements.
        fuzzy - true: fuzzy search; false: exact search
        recursiveIntoSubdirectories - true: include also all sub PrimaryDataDirectory recursively; false search only in the current PrimaryDataDirectory object
        Returns:
        a unmodifiable List of PrimaryDataEntity that match the keyword.
        Throws:
        de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataDirectoryException - if unable to search for the keyword.
        java.rmi.RemoteException - if unable to call remote function.
      • setMetaData

        public void setMetaData​(de.ipk_gatersleben.bit.bi.edal.primary_data.metadata.MetaData new_metadata)
                         throws java.rmi.RemoteException,
                                de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataEntityVersionException,
                                de.ipk_gatersleben.bit.bi.edal.primary_data.metadata.MetaDataException
        PrimaryDataEntity.setMetaData(MetaData)
        Overrides:
        setMetaData in class ClientPrimaryDataEntity
        Parameters:
        new_metadata - the new MetaData object to set.
        Throws:
        java.rmi.RemoteException - if unable to call remote function.
        de.ipk_gatersleben.bit.bi.edal.primary_data.file.PrimaryDataEntityVersionException - if unable to store PrimaryDataEntityVersion.
        de.ipk_gatersleben.bit.bi.edal.primary_data.metadata.MetaDataException - if there are non valid value for element in the MetaData object.
        See Also:
        PrimaryDataEntityRmiInterface.setMetaData(MetaData, Subject)