Class FileDataBodyPart


  • public class FileDataBodyPart
    extends FormDataBodyPart
    An extension of FormDataBodyPart for associating File File as a body part entity.

    This class may be used to create body parts that contains a file attachments. Appropriate Content-Disposition parameters and Content-Type header will be derived from the file.

    • Field Detail

      • fileEntity

        private java.io.File fileEntity
    • Constructor Detail

      • FileDataBodyPart

        public FileDataBodyPart()
        A no-args constructor which expects its client to set the values individually, the attributes to be set are fileEntity and name; the media type will be predicted from the fileEntity if not set explicitly.
      • FileDataBodyPart

        public FileDataBodyPart​(java.lang.String name,
                                java.io.File fileEntity,
                                javax.ws.rs.core.MediaType mediaType)
                         throws java.lang.IllegalArgumentException
        Constructs the body part with all the attributes set for its proper function. If this constructor is used to construct the body part then it is not required to set any other attributes for proper behavior.
        Parameters:
        name - the name of body part.
        fileEntity - the file that represents the entity.
        mediaType - the MediaType of the body part.
        Throws:
        java.lang.IllegalArgumentException - if the fileEntity is null.
    • Method Detail

      • getFileEntity

        public java.io.File getFileEntity()
        Gets the file for this body part.
        Returns:
        file entity for this body part.
      • setValue

        public void setValue​(javax.ws.rs.core.MediaType mediaType,
                             java.lang.Object value)
                      throws java.lang.UnsupportedOperationException
        This operation is not supported from this implementation.
        Overrides:
        setValue in class FormDataBodyPart
        Parameters:
        mediaType - the media type for this field value.
        value - the field value as a Java object.
        Throws:
        java.lang.UnsupportedOperationException - Operation not supported.
        See Also:
        setFileEntity(java.io.File, javax.ws.rs.core.MediaType)
      • setEntity

        public void setEntity​(java.lang.Object entity)
                       throws java.lang.UnsupportedOperationException
        This operation is not supported from this implementation.
        Overrides:
        setEntity in class BodyPart
        Parameters:
        entity - the new entity object.
        Throws:
        java.lang.UnsupportedOperationException - Operation not supported.
        See Also:
        setFileEntity(java.io.File)
      • setFileEntity

        public void setFileEntity​(java.io.File fileEntity)
        Sets the fileEntity for this FormDataBodyPart.
        Parameters:
        fileEntity - the entity of this FormDataBodyPart.
      • setFileEntity

        public void setFileEntity​(java.io.File fileEntity,
                                  javax.ws.rs.core.MediaType mediaType)
        Sets the MediaType and fileEntity for this FormDataBodyPart.
        Parameters:
        fileEntity - the entity of this body part.
        mediaType - the media type.
      • predictMediaType

        protected javax.ws.rs.core.MediaType predictMediaType()
        Predicts the media type of the current fileEntity.
        Returns:
        predicted MediaType.
      • predictMediaType

        protected javax.ws.rs.core.MediaType predictMediaType​(java.io.File file)
        Predicts the media type of the provided File.
        Parameters:
        file - the file from which the media type is predicted.
        Returns:
        predicted MediaType.
      • getPredictor

        public MediaTypePredictor getPredictor()
        Gets the media type predictor.
        Returns:
        the media type predictor.
      • setPredictor

        public void setPredictor​(MediaTypePredictor predictor)
        Sets the media type predictor.
        Parameters:
        predictor - the media type predictor.