code: public Milestone updateMilestone(Object projectIdOrPath, Integer milestoneId, String title, String description, 
              Date dueDate, Date startDate, MilestoneState milestoneState) throws GitLabApiException {
  
          if (milestoneId == null) {
              throw new RuntimeException("milestoneId cannot be null");
          }
   
          GitLabApiForm formData = new GitLabApiForm()
                  .withParam("title", title, true)
                  .withParam("description", description)
                  .withParam("due_date", dueDate)
                  .withParam("start_date", startDate)
                  .withParam("state_event", milestoneState);
          Response response = put(Response.Status.OK, formData.asMap(),
                  "projects", getProjectIdOrPath(projectIdOrPath), "milestones", milestoneId);
          return (response.readEntity(Milestone.class));
      }
docs: Update the specified milestone.
  
  @param projectIdOrPath the project in the form of an Integer(ID), String(path), or Project instance
  @param milestoneId the milestone ID to update
  @param title the updated title for the milestone
  @param description the updated description for the milestone
  @param dueDate the updated due date for the milestone
  @param startDate the updated start date for the milestone
  @param milestoneState the updated milestone state
  @return the updated Milestone instance
  @throws GitLabApiException if any exception occurs