public function toArray()

in imm-20200930/src/Models/File.php [564:987]


    public function toArray($noStream = false)
    {
        $res = [];
        if (null !== $this->accessControlAllowOrigin) {
            $res['AccessControlAllowOrigin'] = $this->accessControlAllowOrigin;
        }

        if (null !== $this->accessControlRequestMethod) {
            $res['AccessControlRequestMethod'] = $this->accessControlRequestMethod;
        }

        if (null !== $this->addresses) {
            if (\is_array($this->addresses)) {
                $res['Addresses'] = [];
                $n1 = 0;
                foreach ($this->addresses as $item1) {
                    $res['Addresses'][$n1++] = null !== $item1 ? $item1->toArray($noStream) : $item1;
                }
            }
        }

        if (null !== $this->album) {
            $res['Album'] = $this->album;
        }

        if (null !== $this->albumArtist) {
            $res['AlbumArtist'] = $this->albumArtist;
        }

        if (null !== $this->artist) {
            $res['Artist'] = $this->artist;
        }

        if (null !== $this->audioCovers) {
            if (\is_array($this->audioCovers)) {
                $res['AudioCovers'] = [];
                $n1 = 0;
                foreach ($this->audioCovers as $item1) {
                    $res['AudioCovers'][$n1++] = null !== $item1 ? $item1->toArray($noStream) : $item1;
                }
            }
        }

        if (null !== $this->audioStreams) {
            if (\is_array($this->audioStreams)) {
                $res['AudioStreams'] = [];
                $n1 = 0;
                foreach ($this->audioStreams as $item1) {
                    $res['AudioStreams'][$n1++] = null !== $item1 ? $item1->toArray($noStream) : $item1;
                }
            }
        }

        if (null !== $this->bitrate) {
            $res['Bitrate'] = $this->bitrate;
        }

        if (null !== $this->cacheControl) {
            $res['CacheControl'] = $this->cacheControl;
        }

        if (null !== $this->composer) {
            $res['Composer'] = $this->composer;
        }

        if (null !== $this->contentDisposition) {
            $res['ContentDisposition'] = $this->contentDisposition;
        }

        if (null !== $this->contentEncoding) {
            $res['ContentEncoding'] = $this->contentEncoding;
        }

        if (null !== $this->contentLanguage) {
            $res['ContentLanguage'] = $this->contentLanguage;
        }

        if (null !== $this->contentMd5) {
            $res['ContentMd5'] = $this->contentMd5;
        }

        if (null !== $this->contentType) {
            $res['ContentType'] = $this->contentType;
        }

        if (null !== $this->createTime) {
            $res['CreateTime'] = $this->createTime;
        }

        if (null !== $this->croppingSuggestions) {
            if (\is_array($this->croppingSuggestions)) {
                $res['CroppingSuggestions'] = [];
                $n1 = 0;
                foreach ($this->croppingSuggestions as $item1) {
                    $res['CroppingSuggestions'][$n1++] = null !== $item1 ? $item1->toArray($noStream) : $item1;
                }
            }
        }

        if (null !== $this->customId) {
            $res['CustomId'] = $this->customId;
        }

        if (null !== $this->customLabels) {
            if (\is_array($this->customLabels)) {
                $res['CustomLabels'] = [];
                foreach ($this->customLabels as $key1 => $value1) {
                    $res['CustomLabels'][$key1] = $value1;
                }
            }
        }

        if (null !== $this->datasetName) {
            $res['DatasetName'] = $this->datasetName;
        }

        if (null !== $this->duration) {
            $res['Duration'] = $this->duration;
        }

        if (null !== $this->ETag) {
            $res['ETag'] = $this->ETag;
        }

        if (null !== $this->EXIF) {
            $res['EXIF'] = $this->EXIF;
        }

        if (null !== $this->elements) {
            if (\is_array($this->elements)) {
                $res['Elements'] = [];
                $n1 = 0;
                foreach ($this->elements as $item1) {
                    $res['Elements'][$n1++] = null !== $item1 ? $item1->toArray($noStream) : $item1;
                }
            }
        }

        if (null !== $this->figureCount) {
            $res['FigureCount'] = $this->figureCount;
        }

        if (null !== $this->figures) {
            if (\is_array($this->figures)) {
                $res['Figures'] = [];
                $n1 = 0;
                foreach ($this->figures as $item1) {
                    $res['Figures'][$n1++] = null !== $item1 ? $item1->toArray($noStream) : $item1;
                }
            }
        }

        if (null !== $this->fileAccessTime) {
            $res['FileAccessTime'] = $this->fileAccessTime;
        }

        if (null !== $this->fileCreateTime) {
            $res['FileCreateTime'] = $this->fileCreateTime;
        }

        if (null !== $this->fileHash) {
            $res['FileHash'] = $this->fileHash;
        }

        if (null !== $this->fileModifiedTime) {
            $res['FileModifiedTime'] = $this->fileModifiedTime;
        }

        if (null !== $this->filename) {
            $res['Filename'] = $this->filename;
        }

        if (null !== $this->formatLongName) {
            $res['FormatLongName'] = $this->formatLongName;
        }

        if (null !== $this->formatName) {
            $res['FormatName'] = $this->formatName;
        }

        if (null !== $this->imageHeight) {
            $res['ImageHeight'] = $this->imageHeight;
        }

        if (null !== $this->imageScore) {
            $res['ImageScore'] = null !== $this->imageScore ? $this->imageScore->toArray($noStream) : $this->imageScore;
        }

        if (null !== $this->imageWidth) {
            $res['ImageWidth'] = $this->imageWidth;
        }

        if (null !== $this->labels) {
            if (\is_array($this->labels)) {
                $res['Labels'] = [];
                $n1 = 0;
                foreach ($this->labels as $item1) {
                    $res['Labels'][$n1++] = null !== $item1 ? $item1->toArray($noStream) : $item1;
                }
            }
        }

        if (null !== $this->language) {
            $res['Language'] = $this->language;
        }

        if (null !== $this->latLong) {
            $res['LatLong'] = $this->latLong;
        }

        if (null !== $this->mediaType) {
            $res['MediaType'] = $this->mediaType;
        }

        if (null !== $this->OCRContents) {
            if (\is_array($this->OCRContents)) {
                $res['OCRContents'] = [];
                $n1 = 0;
                foreach ($this->OCRContents as $item1) {
                    $res['OCRContents'][$n1++] = null !== $item1 ? $item1->toArray($noStream) : $item1;
                }
            }
        }

        if (null !== $this->OCRTexts) {
            $res['OCRTexts'] = $this->OCRTexts;
        }

        if (null !== $this->OSSCRC64) {
            $res['OSSCRC64'] = $this->OSSCRC64;
        }

        if (null !== $this->OSSDeleteMarker) {
            $res['OSSDeleteMarker'] = $this->OSSDeleteMarker;
        }

        if (null !== $this->OSSExpiration) {
            $res['OSSExpiration'] = $this->OSSExpiration;
        }

        if (null !== $this->OSSObjectType) {
            $res['OSSObjectType'] = $this->OSSObjectType;
        }

        if (null !== $this->OSSStorageClass) {
            $res['OSSStorageClass'] = $this->OSSStorageClass;
        }

        if (null !== $this->OSSTagging) {
            if (\is_array($this->OSSTagging)) {
                $res['OSSTagging'] = [];
                foreach ($this->OSSTagging as $key1 => $value1) {
                    $res['OSSTagging'][$key1] = $value1;
                }
            }
        }

        if (null !== $this->OSSTaggingCount) {
            $res['OSSTaggingCount'] = $this->OSSTaggingCount;
        }

        if (null !== $this->OSSURI) {
            $res['OSSURI'] = $this->OSSURI;
        }

        if (null !== $this->OSSUserMeta) {
            if (\is_array($this->OSSUserMeta)) {
                $res['OSSUserMeta'] = [];
                foreach ($this->OSSUserMeta as $key1 => $value1) {
                    $res['OSSUserMeta'][$key1] = $value1;
                }
            }
        }

        if (null !== $this->OSSVersionId) {
            $res['OSSVersionId'] = $this->OSSVersionId;
        }

        if (null !== $this->objectACL) {
            $res['ObjectACL'] = $this->objectACL;
        }

        if (null !== $this->objectId) {
            $res['ObjectId'] = $this->objectId;
        }

        if (null !== $this->objectStatus) {
            $res['ObjectStatus'] = $this->objectStatus;
        }

        if (null !== $this->objectType) {
            $res['ObjectType'] = $this->objectType;
        }

        if (null !== $this->orientation) {
            $res['Orientation'] = $this->orientation;
        }

        if (null !== $this->ownerId) {
            $res['OwnerId'] = $this->ownerId;
        }

        if (null !== $this->pageCount) {
            $res['PageCount'] = $this->pageCount;
        }

        if (null !== $this->performer) {
            $res['Performer'] = $this->performer;
        }

        if (null !== $this->produceTime) {
            $res['ProduceTime'] = $this->produceTime;
        }

        if (null !== $this->programCount) {
            $res['ProgramCount'] = $this->programCount;
        }

        if (null !== $this->projectName) {
            $res['ProjectName'] = $this->projectName;
        }

        if (null !== $this->reason) {
            $res['Reason'] = $this->reason;
        }

        if (null !== $this->sceneElements) {
            if (\is_array($this->sceneElements)) {
                $res['SceneElements'] = [];
                $n1 = 0;
                foreach ($this->sceneElements as $item1) {
                    $res['SceneElements'][$n1++] = null !== $item1 ? $item1->toArray($noStream) : $item1;
                }
            }
        }

        if (null !== $this->semanticTypes) {
            if (\is_array($this->semanticTypes)) {
                $res['SemanticTypes'] = [];
                $n1 = 0;
                foreach ($this->semanticTypes as $item1) {
                    $res['SemanticTypes'][$n1++] = $item1;
                }
            }
        }

        if (null !== $this->serverSideDataEncryption) {
            $res['ServerSideDataEncryption'] = $this->serverSideDataEncryption;
        }

        if (null !== $this->serverSideEncryption) {
            $res['ServerSideEncryption'] = $this->serverSideEncryption;
        }

        if (null !== $this->serverSideEncryptionCustomerAlgorithm) {
            $res['ServerSideEncryptionCustomerAlgorithm'] = $this->serverSideEncryptionCustomerAlgorithm;
        }

        if (null !== $this->serverSideEncryptionKeyId) {
            $res['ServerSideEncryptionKeyId'] = $this->serverSideEncryptionKeyId;
        }

        if (null !== $this->size) {
            $res['Size'] = $this->size;
        }

        if (null !== $this->startTime) {
            $res['StartTime'] = $this->startTime;
        }

        if (null !== $this->streamCount) {
            $res['StreamCount'] = $this->streamCount;
        }

        if (null !== $this->subtitles) {
            if (\is_array($this->subtitles)) {
                $res['Subtitles'] = [];
                $n1 = 0;
                foreach ($this->subtitles as $item1) {
                    $res['Subtitles'][$n1++] = null !== $item1 ? $item1->toArray($noStream) : $item1;
                }
            }
        }

        if (null !== $this->timezone) {
            $res['Timezone'] = $this->timezone;
        }

        if (null !== $this->title) {
            $res['Title'] = $this->title;
        }

        if (null !== $this->travelClusterId) {
            $res['TravelClusterId'] = $this->travelClusterId;
        }

        if (null !== $this->URI) {
            $res['URI'] = $this->URI;
        }

        if (null !== $this->updateTime) {
            $res['UpdateTime'] = $this->updateTime;
        }

        if (null !== $this->videoHeight) {
            $res['VideoHeight'] = $this->videoHeight;
        }

        if (null !== $this->videoStreams) {
            if (\is_array($this->videoStreams)) {
                $res['VideoStreams'] = [];
                $n1 = 0;
                foreach ($this->videoStreams as $item1) {
                    $res['VideoStreams'][$n1++] = null !== $item1 ? $item1->toArray($noStream) : $item1;
                }
            }
        }

        if (null !== $this->videoWidth) {
            $res['VideoWidth'] = $this->videoWidth;
        }

        return $res;
    }