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 Details

  • Constructor Details

    • 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(String name, File fileEntity)
      Constructs the body part with the provided name and file, it predicts the MediaType of the file provided. For the known media types client will not need to set the media type explicitly.
      Parameters:
      name - the name of body part.
      fileEntity - the file that represents the entity.
      See Also:
    • FileDataBodyPart

      public FileDataBodyPart(String name, File fileEntity, javax.ws.rs.core.MediaType mediaType) throws 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:
      IllegalArgumentException - if the fileEntity is null.
  • Method Details

    • getFileEntity

      public 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, Object value) throws 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:
      UnsupportedOperationException - Operation not supported.
      See Also:
    • setEntity

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

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

      public void setFileEntity(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(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.