code: public void marshall(ProvisionProductRequest provisionProductRequest, ProtocolMarshaller protocolMarshaller) {
  
          if (provisionProductRequest == null) {
              throw new SdkClientException("Invalid argument passed to marshall(...)");
          }
  
          try {
              protocolMarshaller.marshall(provisionProductRequest.getAcceptLanguage(), ACCEPTLANGUAGE_BINDING);
              protocolMarshaller.marshall(provisionProductRequest.getProductId(), PRODUCTID_BINDING);
              protocolMarshaller.marshall(provisionProductRequest.getProvisioningArtifactId(), PROVISIONINGARTIFACTID_BINDING);
              protocolMarshaller.marshall(provisionProductRequest.getPathId(), PATHID_BINDING);
              protocolMarshaller.marshall(provisionProductRequest.getProvisionedProductName(), PROVISIONEDPRODUCTNAME_BINDING);
              protocolMarshaller.marshall(provisionProductRequest.getProvisioningParameters(), PROVISIONINGPARAMETERS_BINDING);
              protocolMarshaller.marshall(provisionProductRequest.getProvisioningPreferences(), PROVISIONINGPREFERENCES_BINDING);
              protocolMarshaller.marshall(provisionProductRequest.getTags(), TAGS_BINDING);
              protocolMarshaller.marshall(provisionProductRequest.getNotificationArns(), NOTIFICATIONARNS_BINDING);
              protocolMarshaller.marshall(provisionProductRequest.getProvisionToken(), PROVISIONTOKEN_BINDING);
          } catch (Exception e) {
              throw new SdkClientException("Unable to marshall request to JSON: " + e.getMessage(), e);
          }
      }
docs: Marshall the given parameter object.