docs: @PUT
      @Path("/{iOSID}")
      @Consumes(MediaType.MULTIPART_FORM_DATA)
      @Produces(MediaType.APPLICATION_JSON)
      public Response updateiOSVariant(
              @MultipartForm iOSApplicationUploadForm updatedForm,
              @PathParam("pushAppID") String pushApplicationId,
              @PathParam("iOSID") String iOSID) {
  
          iOSVariant iOSVariant = (iOSVariant)variantService.findByVariantID(iOSID);
          if (iOSVariant != null) {
  
              // some model validation on the uploaded form
              try {
                  validateModelClass(updatedForm);
              } catch (ConstraintViolationException cve) {
                  // Build and return the 400 (Bad Request) response
                  ResponseBuilder builder = createBadRequestResponse(cve.getConstraintViolations());
                  return builder.build();
              }
  
              // apply update:
              iOSVariant.setName(updatedForm.getName());
              iOSVariant.setDescription(updatedForm.getDescription());
              iOSVariant.setPassphrase(updatedForm.getPassphrase());
              iOSVariant.setCertificate(updatedForm.getCertificate());
              iOSVariant.setProduction(updatedForm.getProduction());
  
              // some model validation on the entity:
              try {
                  validateModelClass(iOSVariant);
              } catch (ConstraintViolationException cve) {
                  logger.info("Unable to update iOS Variant '{}'", iOSVariant.getVariantID());
                  logger.debug("Details: {}", cve);
  
                  // Build and return the 400 (Bad Request) response
                  ResponseBuilder builder = createBadRequestResponse(cve.getConstraintViolations());
  
                  return builder.build();
              }
  
              // update performed, we now need to invalidate existing connection w/ APNs:
              logger.trace("Updating iOS Variant '{}'", iOSVariant.getVariantID());
              variantUpdateEventEvent.fire(new iOSVariantUpdateEvent(iOSVariant));
              variantService.updateVariant(iOSVariant);
              return Response.ok(iOSVariant).build();
          }
          return Response.status(Status.NOT_FOUND).entity("Could not find requested Variant").build();
      }