Class FileInfoBuilder


  • @AggregateBuilder
    public class FileInfoBuilder
    extends java.lang.Object
    Builds file meta data.
    • Method Detail

      • from

        public FileInfoBuilder from​(@NonNull
                                    @NonNull FileInfo file)
        Initialize from existing FileInfo.
        Parameters:
        file - existing FileInfo
        Returns:
        this
      • from

        public FileInfoBuilder from​(@NonNull
                                    @NonNull org.springframework.web.multipart.MultipartFile file)
        Initialize from existing MultipartFile.
        Parameters:
        file - existing MultipartFile
        Returns:
        this
      • id

        public FileInfoBuilder id​(java.lang.Long id)
        Set id.
        Parameters:
        id - id
        Returns:
        this
      • id

        public FileInfoBuilder id​(FileInfo fileInfo)
        Set id from existing FileInfo.
        Parameters:
        fileInfo - existing FileInfo
        Returns:
        this
      • name

        public FileInfoBuilder name​(@NonNull
                                    @NonNull java.lang.String name)
        Set name.
        Parameters:
        name - name
        Returns:
        this
      • directory

        public FileInfoBuilder directory​(long directoryId)
        Set directory.
        Parameters:
        directoryId - is the directoryId
        Returns:
        this
      • directory

        public FileInfoBuilder directory​(@NonNull
                                         @NonNull Directory directory)
        Set directory.
        Parameters:
        directory - directory
        Returns:
        this
      • type

        public FileInfoBuilder type​(@NonNull
                                    @NonNull java.lang.String type)
        Set type.
        Parameters:
        type - type
        Returns:
        this
      • size

        public FileInfoBuilder size​(long size)
        Set size.
        Parameters:
        size - size
        Returns:
        this
      • owner

        public FileInfoBuilder owner​(@NonNull
                                     @NonNull java.lang.String owner)
        Set owner.
        Parameters:
        owner - owner
        Returns:
        this
      • tag

        public FileInfoBuilder tag​(@NonNull
                                   @NonNull java.lang.String tag)
        Add tag.
        Parameters:
        tag - tag
        Returns:
        this
      • tags

        public FileInfoBuilder tags​(@NonNull
                                    @NonNull java.lang.String... tags)
        Add tags.
        Parameters:
        tags - tags
        Returns:
        this
      • tags

        public FileInfoBuilder tags​(@NonNull
                                    @NonNull java.lang.Iterable<java.lang.String> tags)
        Add tags.
        Parameters:
        tags - tags
        Returns:
        this
      • availableFrom

        public FileInfoBuilder availableFrom​(java.time.Instant availableFrom)
        Set the available from time.
        Parameters:
        availableFrom - available from time
        Returns:
        this
      • availableTo

        public FileInfoBuilder availableTo​(java.time.Instant availableTo)
        Set the available to time.
        Parameters:
        availableTo - available to time
        Returns:
        this
      • build

        public FileInfo build()
        Builds the FileInfo.
        Returns:
        composed FileInfo
        Throws:
        java.lang.IllegalStateException - if FileInfo is not complete