code: public void marshall(Image image, ProtocolMarshaller protocolMarshaller) {
  
          if (image == null) {
              throw new SdkClientException("Invalid argument passed to marshall(...)");
          }
  
          try {
              protocolMarshaller.marshall(image.getName(), NAME_BINDING);
              protocolMarshaller.marshall(image.getArn(), ARN_BINDING);
              protocolMarshaller.marshall(image.getBaseImageArn(), BASEIMAGEARN_BINDING);
              protocolMarshaller.marshall(image.getDisplayName(), DISPLAYNAME_BINDING);
              protocolMarshaller.marshall(image.getState(), STATE_BINDING);
              protocolMarshaller.marshall(image.getVisibility(), VISIBILITY_BINDING);
              protocolMarshaller.marshall(image.getImageBuilderSupported(), IMAGEBUILDERSUPPORTED_BINDING);
              protocolMarshaller.marshall(image.getPlatform(), PLATFORM_BINDING);
              protocolMarshaller.marshall(image.getDescription(), DESCRIPTION_BINDING);
              protocolMarshaller.marshall(image.getStateChangeReason(), STATECHANGEREASON_BINDING);
              protocolMarshaller.marshall(image.getApplications(), APPLICATIONS_BINDING);
              protocolMarshaller.marshall(image.getCreatedTime(), CREATEDTIME_BINDING);
              protocolMarshaller.marshall(image.getPublicBaseImageReleasedDate(), PUBLICBASEIMAGERELEASEDDATE_BINDING);
              protocolMarshaller.marshall(image.getAppstreamAgentVersion(), APPSTREAMAGENTVERSION_BINDING);
              protocolMarshaller.marshall(image.getImagePermissions(), IMAGEPERMISSIONS_BINDING);
          } catch (Exception e) {
              throw new SdkClientException("Unable to marshall request to JSON: " + e.getMessage(), e);
          }
      }
docs: Marshall the given parameter object.