code: @Override
      public AffinityGroup modify(@Nonnull String affinityGroupId, @Nonnull AffinityGroupCreateOptions options) throws InternalException, CloudException {
          if(affinityGroupId == null|| affinityGroupId.isEmpty())
              throw new InternalException("Cannot modify an affinity group: affinityGroupId cannot be null or empty");
  
          if(options == null || options.getDescription() == null)
              throw new InternalException("Cannot create AffinityGroup. Create options or affinity group description cannot be null.");
  
          UpdateAffinityGroupModel updateAffinityGroupModel = new UpdateAffinityGroupModel();
          updateAffinityGroupModel.setDescription(options.getDescription());
  
          AzureMethod method = new AzureMethod(this.provider);
          try {
              method.put(String.format(RESOURCE_AFFINITYGROUP, affinityGroupId), updateAffinityGroupModel);
          }
          catch (JAXBException e)
          {
              logger.error(e.getMessage());
              throw new InternalException(e);
          }
  
          return get(affinityGroupId);
      }
docs: Modifies details of the specified affinity group
  
  @param affinityGroupId the ID of the affinity group to be modified
  @param options         the options containing the modified data
  @return the newly modified Dasein AffinityGroup object
  @throws org.dasein.cloud.InternalException an error occurred within the Dasein Cloud implementation modifying the affinity group
  @throws org.dasein.cloud.CloudException    an error occurred within the service provider modifying the affinity group