From 8311c82ac60e2c8ebaf1d3a20ab6a852abcdef5f Mon Sep 17 00:00:00 2001 From: Alexis Hernandez Date: Sat, 26 Sep 2020 13:25:24 -0600 Subject: [PATCH] Update the reflection config while dealing with the metadata-extractor While this is still not the full solution, most of my test files are being handled properly. There is still work to be done to get the same behavior than on the JVM. --- build.sbt | 6 +- etc/metadata-extractor-reflect-config.json | 1854 ++++++++++- metadata-extractor-reflect-config.json | 2710 +++++++++++++++++ .../util/GenerateNativeReflectionConfig.scala | 424 ++- 4 files changed, 4883 insertions(+), 111 deletions(-) create mode 100644 metadata-extractor-reflect-config.json diff --git a/build.sbt b/build.sbt index 6ec748c..fc81293 100644 --- a/build.sbt +++ b/build.sbt @@ -46,8 +46,10 @@ lazy val root = (project in file(".")) "-H:+AddAllCharsets" ), // To generate this file, run "sbt console", - // and then, "net.wiringbits.myphototimeline.util.GenerateNativeReflectionConfig.metadataExtractorReflectConfig" - // Paste the output to the file specified below + // and then, "net.wiringbits.myphototimeline.util.GenerateNativeReflectionConfig.generateConfigFile()" + // That's enough to regenerated the config file. + // + // TODO: Generate such config automatically before building the native image nativeImageOptions ++= List( "-H:ReflectionConfigurationFiles=etc/metadata-extractor-reflect-config.json" ), diff --git a/etc/metadata-extractor-reflect-config.json b/etc/metadata-extractor-reflect-config.json index 28d6d19..8df4b8e 100644 --- a/etc/metadata-extractor-reflect-config.json +++ b/etc/metadata-extractor-reflect-config.json @@ -8,7 +8,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.ByteArrayReader", "allDeclaredConstructors": true, @@ -18,7 +17,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.ByteConvert", "allDeclaredConstructors": true, @@ -28,7 +26,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.ByteTrie", "allDeclaredConstructors": true, @@ -38,7 +35,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.ByteUtil", "allDeclaredConstructors": true, @@ -48,7 +44,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.Charsets", "allDeclaredConstructors": true, @@ -58,7 +53,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.CompoundException", "allDeclaredConstructors": true, @@ -68,7 +62,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.DateUtil", "allDeclaredConstructors": true, @@ -78,7 +71,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.GeoLocation", "allDeclaredConstructors": true, @@ -88,7 +80,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.Iterables", "allDeclaredConstructors": true, @@ -98,7 +89,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.KeyValuePair", "allDeclaredConstructors": true, @@ -108,7 +98,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.NullOutputStream", "allDeclaredConstructors": true, @@ -118,7 +107,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.RandomAccessFileReader", "allDeclaredConstructors": true, @@ -128,7 +116,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.RandomAccessReader", "allDeclaredConstructors": true, @@ -138,7 +125,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.RandomAccessStreamReader", "allDeclaredConstructors": true, @@ -148,7 +134,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.Rational", "allDeclaredConstructors": true, @@ -158,7 +143,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.SequentialByteArrayReader", "allDeclaredConstructors": true, @@ -168,7 +152,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.SequentialReader", "allDeclaredConstructors": true, @@ -178,7 +161,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.StreamReader", "allDeclaredConstructors": true, @@ -188,7 +170,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.StreamUtil", "allDeclaredConstructors": true, @@ -198,7 +179,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.lang.StringUtil", "allDeclaredConstructors": true, @@ -208,7 +188,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.ExifDescriptorBase", "allDeclaredConstructors": true, @@ -218,7 +197,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.ExifDirectoryBase", "allDeclaredConstructors": true, @@ -228,7 +206,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.ExifIFD0Descriptor", "allDeclaredConstructors": true, @@ -238,7 +215,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.ExifIFD0Directory", "allDeclaredConstructors": true, @@ -248,7 +224,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.ExifImageDescriptor", "allDeclaredConstructors": true, @@ -258,7 +233,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.ExifImageDirectory", "allDeclaredConstructors": true, @@ -268,7 +242,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.ExifInteropDescriptor", "allDeclaredConstructors": true, @@ -278,7 +251,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.ExifInteropDirectory", "allDeclaredConstructors": true, @@ -288,7 +260,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.ExifReader", "allDeclaredConstructors": true, @@ -298,7 +269,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.ExifSubIFDDescriptor", "allDeclaredConstructors": true, @@ -308,7 +278,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.ExifSubIFDDirectory", "allDeclaredConstructors": true, @@ -318,7 +287,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.ExifThumbnailDescriptor", "allDeclaredConstructors": true, @@ -328,7 +296,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.ExifThumbnailDirectory", "allDeclaredConstructors": true, @@ -338,7 +305,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.ExifTiffHandler", "allDeclaredConstructors": true, @@ -348,7 +314,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.GpsDescriptor", "allDeclaredConstructors": true, @@ -358,7 +323,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.GpsDirectory", "allDeclaredConstructors": true, @@ -368,7 +332,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.PanasonicRawDistortionDescriptor", "allDeclaredConstructors": true, @@ -378,7 +341,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.PanasonicRawDistortionDirectory", "allDeclaredConstructors": true, @@ -388,7 +350,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.PanasonicRawIFD0Descriptor", "allDeclaredConstructors": true, @@ -398,7 +359,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.PanasonicRawIFD0Directory", "allDeclaredConstructors": true, @@ -408,7 +368,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.PanasonicRawWbInfo2Descriptor", "allDeclaredConstructors": true, @@ -418,7 +377,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.PanasonicRawWbInfo2Directory", "allDeclaredConstructors": true, @@ -428,7 +386,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.PanasonicRawWbInfoDescriptor", "allDeclaredConstructors": true, @@ -438,7 +395,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.PanasonicRawWbInfoDirectory", "allDeclaredConstructors": true, @@ -448,7 +404,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.PrintIMDescriptor", "allDeclaredConstructors": true, @@ -458,7 +413,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.PrintIMDirectory", "allDeclaredConstructors": true, @@ -468,7 +422,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.AppleMakernoteDescriptor", "allDeclaredConstructors": true, @@ -478,7 +431,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.AppleMakernoteDirectory", "allDeclaredConstructors": true, @@ -488,7 +440,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.AppleRunTimeMakernoteDescriptor", "allDeclaredConstructors": true, @@ -498,7 +449,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.AppleRunTimeMakernoteDirectory", "allDeclaredConstructors": true, @@ -508,7 +458,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.CanonMakernoteDescriptor", "allDeclaredConstructors": true, @@ -518,7 +467,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.CanonMakernoteDirectory", "allDeclaredConstructors": true, @@ -528,7 +476,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.CasioType1MakernoteDescriptor", "allDeclaredConstructors": true, @@ -538,7 +485,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.CasioType1MakernoteDirectory", "allDeclaredConstructors": true, @@ -548,7 +494,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.CasioType2MakernoteDescriptor", "allDeclaredConstructors": true, @@ -558,7 +503,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.CasioType2MakernoteDirectory", "allDeclaredConstructors": true, @@ -568,7 +512,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.FujifilmMakernoteDescriptor", "allDeclaredConstructors": true, @@ -578,7 +521,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.FujifilmMakernoteDirectory", "allDeclaredConstructors": true, @@ -588,7 +530,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.KodakMakernoteDescriptor", "allDeclaredConstructors": true, @@ -598,7 +539,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.KodakMakernoteDirectory", "allDeclaredConstructors": true, @@ -608,7 +548,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.KyoceraMakernoteDescriptor", "allDeclaredConstructors": true, @@ -618,7 +557,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.KyoceraMakernoteDirectory", "allDeclaredConstructors": true, @@ -628,7 +566,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.LeicaMakernoteDescriptor", "allDeclaredConstructors": true, @@ -638,7 +575,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.LeicaMakernoteDirectory", "allDeclaredConstructors": true, @@ -648,7 +584,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.LeicaType5MakernoteDescriptor", "allDeclaredConstructors": true, @@ -658,7 +593,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.LeicaType5MakernoteDirectory", "allDeclaredConstructors": true, @@ -668,7 +602,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.NikonType1MakernoteDescriptor", "allDeclaredConstructors": true, @@ -678,7 +611,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.NikonType1MakernoteDirectory", "allDeclaredConstructors": true, @@ -688,7 +620,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.NikonType2MakernoteDescriptor", "allDeclaredConstructors": true, @@ -698,7 +629,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.NikonType2MakernoteDirectory", "allDeclaredConstructors": true, @@ -708,7 +638,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusCameraSettingsMakernoteDescriptor", "allDeclaredConstructors": true, @@ -718,7 +647,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusCameraSettingsMakernoteDirectory", "allDeclaredConstructors": true, @@ -728,7 +656,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusEquipmentMakernoteDescriptor", "allDeclaredConstructors": true, @@ -738,7 +665,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusEquipmentMakernoteDirectory", "allDeclaredConstructors": true, @@ -748,7 +674,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusFocusInfoMakernoteDescriptor", "allDeclaredConstructors": true, @@ -758,7 +683,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusFocusInfoMakernoteDirectory", "allDeclaredConstructors": true, @@ -768,7 +692,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusImageProcessingMakernoteDescriptor", "allDeclaredConstructors": true, @@ -778,7 +701,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusImageProcessingMakernoteDirectory", "allDeclaredConstructors": true, @@ -788,7 +710,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusMakernoteDescriptor", "allDeclaredConstructors": true, @@ -798,7 +719,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusMakernoteDirectory", "allDeclaredConstructors": true, @@ -808,7 +728,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusRawDevelopment2MakernoteDescriptor", "allDeclaredConstructors": true, @@ -818,7 +737,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusRawDevelopment2MakernoteDirectory", "allDeclaredConstructors": true, @@ -828,7 +746,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusRawDevelopmentMakernoteDescriptor", "allDeclaredConstructors": true, @@ -838,7 +755,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusRawDevelopmentMakernoteDirectory", "allDeclaredConstructors": true, @@ -848,7 +764,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusRawInfoMakernoteDescriptor", "allDeclaredConstructors": true, @@ -858,7 +773,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.OlympusRawInfoMakernoteDirectory", "allDeclaredConstructors": true, @@ -868,7 +782,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.PanasonicMakernoteDescriptor", "allDeclaredConstructors": true, @@ -878,7 +791,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.PanasonicMakernoteDirectory", "allDeclaredConstructors": true, @@ -888,7 +800,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.PentaxMakernoteDescriptor", "allDeclaredConstructors": true, @@ -898,7 +809,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.PentaxMakernoteDirectory", "allDeclaredConstructors": true, @@ -908,7 +818,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.ReconyxHyperFireMakernoteDescriptor", "allDeclaredConstructors": true, @@ -918,7 +827,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.ReconyxHyperFireMakernoteDirectory", "allDeclaredConstructors": true, @@ -928,7 +836,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.ReconyxUltraFireMakernoteDescriptor", "allDeclaredConstructors": true, @@ -938,7 +845,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.ReconyxUltraFireMakernoteDirectory", "allDeclaredConstructors": true, @@ -948,7 +854,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.RicohMakernoteDescriptor", "allDeclaredConstructors": true, @@ -958,7 +863,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.RicohMakernoteDirectory", "allDeclaredConstructors": true, @@ -968,7 +872,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.SamsungType2MakernoteDescriptor", "allDeclaredConstructors": true, @@ -978,7 +881,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.SamsungType2MakernoteDirectory", "allDeclaredConstructors": true, @@ -988,7 +890,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.SanyoMakernoteDescriptor", "allDeclaredConstructors": true, @@ -998,7 +899,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.SanyoMakernoteDirectory", "allDeclaredConstructors": true, @@ -1008,7 +908,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.SigmaMakernoteDescriptor", "allDeclaredConstructors": true, @@ -1018,7 +917,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.SigmaMakernoteDirectory", "allDeclaredConstructors": true, @@ -1028,7 +926,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.SonyType1MakernoteDescriptor", "allDeclaredConstructors": true, @@ -1038,7 +935,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.SonyType1MakernoteDirectory", "allDeclaredConstructors": true, @@ -1048,7 +944,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.SonyType6MakernoteDescriptor", "allDeclaredConstructors": true, @@ -1058,7 +953,6 @@ "allDeclaredClasses": true, "allPublicClasses": true }, - { "name": "com.drew.metadata.exif.makernotes.SonyType6MakernoteDirectory", "allDeclaredConstructors": true, @@ -1067,4 +961,1750 @@ "allPublicMethods": true, "allDeclaredClasses": true, "allPublicClasses": true - }] + }, + { + "name": "com.drew.metadata.adobe.AdobeJpegDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.adobe.AdobeJpegDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.adobe.AdobeJpegReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.avi.AviDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.avi.AviDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.avi.AviRiffHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.bmp.BmpHeaderDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.bmp.BmpHeaderDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.bmp.BmpReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.eps.EpsDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.eps.EpsDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.eps.EpsReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.file.FileSystemDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.file.FileSystemDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.file.FileSystemMetadataReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.file.FileTypeDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.file.FileTypeDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifAnimationDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifAnimationDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifCommentDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifCommentDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifControlDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifControlDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifHeaderDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifHeaderDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifImageDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifImageDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.HeifBoxHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.HeifBoxTypes", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.HeifContainerTypes", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.HeifDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.HeifDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.HeifHandlerFactory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.HeifItemTypes", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.HeifPictureHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.boxes.AuxiliaryTypeProperty", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.boxes.Box", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.boxes.ColourInformationBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.boxes.FileTypeBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.boxes.FullBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.boxes.HandlerBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.boxes.ImageRotationBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.boxes.ImageSpatialExtentsProperty", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.boxes.ItemInfoBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.boxes.ItemLocationBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.boxes.ItemProtectionBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.boxes.PixelInformationBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.heif.boxes.PrimaryItemBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.icc.IccDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.icc.IccDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.icc.IccReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.ico.IcoDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.ico.IcoDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.ico.IcoReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.iptc.IptcDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.iptc.IptcDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.iptc.IptcReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.iptc.Iso2022Converter", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jfif.JfifDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jfif.JfifDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jfif.JfifReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jfxx.JfxxDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jfxx.JfxxDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jfxx.JfxxReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.HuffmanTablesDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.HuffmanTablesDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegCommentDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegCommentDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegCommentReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegComponent", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegDhtReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegDnlReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeAtomHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeAtomTypes", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeContainerTypes", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeContext", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeDictionary", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeHandlerFactory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeMediaHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeMetadataHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.Atom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.FileTypeCompatibilityAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.FullAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.HandlerReferenceAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.MediaHeaderAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.MovieHeaderAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.MusicSampleDescriptionAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.SampleDescription", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.SampleDescriptionAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.SoundInformationMediaHeaderAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.SoundSampleDescriptionAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.SubtitleSampleDescriptionAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.TextSampleDescriptionAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.TimecodeInformationMediaAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.TimecodeSampleDescriptionAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.TimeToSampleAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.TrackHeaderAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.VideoInformationMediaHeaderAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.VideoSampleDescriptionAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.canon.CanonThumbnailAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeMediaDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeMusicDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeMusicDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeMusicHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeSoundDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeSoundDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeSoundHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeSubtitleDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeSubtitleDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeSubtitleHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeTextDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeTextDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeTextHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeTimecodeDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeTimecodeDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeTimecodeHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeVideoDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeVideoDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeVideoHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.metadata.QuickTimeDataHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.metadata.QuickTimeDirectoryHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.metadata.QuickTimeMetadataDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.metadata.QuickTimeMetadataDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp3.Mp3Descriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp3.Mp3Directory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp3.Mp3Reader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4BoxHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4BoxTypes", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4ContainerTypes", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4Context", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4Descriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4Dictionary", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4Directory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4HandlerFactory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4MediaHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.AudioSampleEntry", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.Box", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.FileTypeBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.FullBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.HandlerBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.HintMediaHeaderBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.MediaHeaderBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.MovieHeaderBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.SampleEntry", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.SoundMediaHeaderBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.TimeToSampleBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.TrackHeaderBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.UserDataBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.UuidBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.VideoMediaHeaderBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.VisualSampleEntry", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4HintDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4HintDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4HintHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4MediaDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4MetaDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4MetaDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4MetaHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4SoundDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4SoundDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4SoundHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4TextDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4TextDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4TextHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4UuidBoxDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4UuidBoxDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4UuidBoxHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4VideoDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4VideoDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4VideoHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.pcx.PcxDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.pcx.PcxDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.pcx.PcxReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.plist.BplistReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.png.PngChromaticitiesDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.png.PngDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.png.PngDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.tiff.DirectoryTiffHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.wav.WavDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.wav.WavDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.wav.WavRiffHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.webp.WebpDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.webp.WebpDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.webp.WebpRiffHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.xmp.XmpDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.xmp.XmpDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.xmp.XmpReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.xmp.XmpWriter", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }] \ No newline at end of file diff --git a/metadata-extractor-reflect-config.json b/metadata-extractor-reflect-config.json new file mode 100644 index 0000000..adf78d7 --- /dev/null +++ b/metadata-extractor-reflect-config.json @@ -0,0 +1,2710 @@ +[ + { + "name": "com.drew.lang.BufferBoundsException", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.ByteArrayReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.ByteConvert", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.ByteTrie", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.ByteUtil", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.Charsets", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.CompoundException", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.DateUtil", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.GeoLocation", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.Iterables", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.KeyValuePair", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.NullOutputStream", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.RandomAccessFileReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.RandomAccessReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.RandomAccessStreamReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.Rational", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.SequentialByteArrayReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.SequentialReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.StreamReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.StreamUtil", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.lang.StringUtil", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.ExifDescriptorBase", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.ExifDirectoryBase", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.ExifIFD0Descriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.ExifIFD0Directory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.ExifImageDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.ExifImageDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.ExifInteropDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.ExifInteropDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.ExifReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.ExifSubIFDDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.ExifSubIFDDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.ExifThumbnailDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.ExifThumbnailDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.ExifTiffHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.GpsDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.GpsDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.PanasonicRawDistortionDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.PanasonicRawDistortionDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.PanasonicRawIFD0Descriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.PanasonicRawIFD0Directory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.PanasonicRawWbInfo2Descriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.PanasonicRawWbInfo2Directory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.PanasonicRawWbInfoDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.PanasonicRawWbInfoDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.PrintIMDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.PrintIMDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.AppleMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.AppleMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.AppleRunTimeMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.AppleRunTimeMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.CanonMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.CanonMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.CasioType1MakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.CasioType1MakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.CasioType2MakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.CasioType2MakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.FujifilmMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.FujifilmMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.KodakMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.KodakMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.KyoceraMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.KyoceraMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.LeicaMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.LeicaMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.LeicaType5MakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.LeicaType5MakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.NikonType1MakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.NikonType1MakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.NikonType2MakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.NikonType2MakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusCameraSettingsMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusCameraSettingsMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusEquipmentMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusEquipmentMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusFocusInfoMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusFocusInfoMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusImageProcessingMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusImageProcessingMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusRawDevelopment2MakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusRawDevelopment2MakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusRawDevelopmentMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusRawDevelopmentMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusRawInfoMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.OlympusRawInfoMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.PanasonicMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.PanasonicMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.PentaxMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.PentaxMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.ReconyxHyperFireMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.ReconyxHyperFireMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.ReconyxUltraFireMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.ReconyxUltraFireMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.RicohMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.RicohMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.SamsungType2MakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.SamsungType2MakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.SanyoMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.SanyoMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.SigmaMakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.SigmaMakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.SonyType1MakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.SonyType1MakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.SonyType6MakernoteDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.exif.makernotes.SonyType6MakernoteDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.adobe.AdobeJpegDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.adobe.AdobeJpegDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.adobe.AdobeJpegReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.avi.AviDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.avi.AviDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.avi.AviRiffHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.bmp.BmpHeaderDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.bmp.BmpHeaderDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.bmp.BmpReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.eps.EpsDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.eps.EpsDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.eps.EpsReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.file.FileSystemDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.file.FileSystemDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.file.FileSystemMetadataReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.file.FileTypeDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.file.FileTypeDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifAnimationDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifAnimationDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifCommentDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifCommentDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifControlDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifControlDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifHeaderDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifHeaderDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifImageDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifImageDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.gif.GifReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.HeifBoxHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.HeifBoxTypes", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.HeifContainerTypes", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.HeifDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.HeifDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.HeifHandlerFactory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.HeifItemTypes", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.HeifPictureHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.boxes.AuxiliaryTypeProperty", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.boxes.Box", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.boxes.ColourInformationBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.boxes.FileTypeBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.boxes.FullBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.boxes.HandlerBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.boxes.ImageRotationBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.boxes.ImageSpatialExtentsProperty", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.boxes.ItemInfoBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.boxes.ItemLocationBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.boxes.ItemProtectionBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.boxes.PixelInformationBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.helf.boxes.PrimaryItemBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.icc.IccDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.icc.IccDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.icc.IccReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.ico.IcoDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.ico.IcoDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.ico.IcoReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.iptc.IptcDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.iptc.IptcDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.iptc.IptcReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.iptc.Iso2022Converter", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jfif.JfifDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jfif.JfifDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jfif.JfifReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jfxx.JfxxDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jfxx.JfxxDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jfxx.JfxxReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.HuffmanTablesDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.HuffmanTablesDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegCommentDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegCommentDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegCommentReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegComponent", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegDhtReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegDnlReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.jpeg.JpegReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeAtomHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeAtomTypes", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeContainerTypes", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeContext", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeDictionary", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeHandlerFactory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeMediaHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.QuickTimeMetadataHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.Atom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.FileTypeCompatibilityAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.FullAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.HandlerReferenceAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.MediaHeaderAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.MovieHeaderAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.MusicSampleDescriptionAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.SampleDescription", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.SampleDescriptionAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.SoundInformationMediaHeaderAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.SoundSampleDescriptionAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.SubtitleSampleDescriptionAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.TextSampleDescriptionAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.TimecodeInformationMediaAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.TimecodeSampleDescriptionAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.TimeToSampleAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.TrackHeaderAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.VideoInformationMediaHeaderAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.VideoSampleDescriptionAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.atoms.canon.CanonThumbnailAtom", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeMediaDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeMusicDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeMusicDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeMusicHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeSoundDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeSoundDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeSoundHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeSubtitleDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeSubtitleDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeSubtitleHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeTextDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeTextDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeTextHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeTimecodeDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeTimecodeDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeTimecodeHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeVideoDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeVideoDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.media.QuickTimeVideoHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.metadata.QuickTimeDataHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.metadata.QuickTimeDirectoryHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.metadata.QuickTimeMetadataDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mov.metadata.QuickTimeMetadataDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp3.Mp3Descriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp3.Mp3Directory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp3.Mp3Reader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4BoxHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4BoxTypes", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4ContainerTypes", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4Context", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4Descriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4Dictionary", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4Directory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4HandlerFactory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.Mp4MediaHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.AudioSampleEntry", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.Box", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.FileTypeBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.FullBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.HandlerBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.HintMediaHeaderBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.MediaHeaderBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.MovieHeaderBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.SampleEntry", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.SoundMediaHeaderBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.TimeToSampleBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.TrackHeaderBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.UserDataBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.UuidBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.VideoMediaHeaderBox", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.boxes.VisualSampleEntry", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4HintDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4HintDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4HintHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4MediaDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4MetaDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4MetaDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4MetaHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4SoundDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4SoundDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4SoundHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4TextDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4TextDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4TextHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4UuidBoxDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4UuidBoxDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4UuidBoxHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4VideoDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4VideoDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.mp4.media.Mp4VideoHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.pcx.PcxDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.pcx.PcxDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.pcx.PcxReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.plist.BplistReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.png.PngChromaticitiesDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.png.PngDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.png.PngDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.tiff.DirectoryTiffHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.wav.WavDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.wav.WavDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.wav.WavRiffHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.webp.WebpDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.webp.WebpDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.webp.WebpRiffHandler", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.xmp.XmpDescriptor", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.xmp.XmpDirectory", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.xmp.XmpReader", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.drew.metadata.xmp.XmpWriter", + "allDeclaredConstructors": true, + "allPublicConstructors": true, + "allDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }] \ No newline at end of file diff --git a/src/main/scala/net/wiringbits/myphototimeline/util/GenerateNativeReflectionConfig.scala b/src/main/scala/net/wiringbits/myphototimeline/util/GenerateNativeReflectionConfig.scala index 22f13da..296bc8c 100644 --- a/src/main/scala/net/wiringbits/myphototimeline/util/GenerateNativeReflectionConfig.scala +++ b/src/main/scala/net/wiringbits/myphototimeline/util/GenerateNativeReflectionConfig.scala @@ -3,15 +3,375 @@ package net.wiringbits.myphototimeline.util /** * Just a helper to generate the config file to include reflection related classes * on the native image. + * + * TODO: We can write a script to map the jar classes to the proper config file instead, + * this is a very poor error-prone approach that exists just to fix the issue fast. */ object GenerateNativeReflectionConfig { + def generateConfigFile(): Unit = { + val string = metadataExtractorReflectConfig + new java.io.PrintWriter("etc/metadata-extractor-reflect-config.json") { write(string); close() } + } + def metadataExtractorReflectConfig: String = { List( + extra, comDrewLang, comDrewMetadataExif, - comDrewMetadataExifMakernotes - ).flatten.mkString("[", ",\n", "]") + comDrewMetadataExifMakernotes, + comDrewMetadataAdobe, + comDrewMetadataAvi, + comDrewMetadataBmp, + comDrewMetadataEps, + comDrewMetadataFile, + comDrewMetadataGif, + comDrewMetadataHeif, + comDrewMetadataHeifBoxes, + comDrewMetadataIcc, + comDrewMetadataIco, + comDrewMetadataIptc, + comDrewMetadataJfif, + comDrewMetadataJfxx, + comDrewMetadataJpeg, + comDrewMetadataMov, + comDrewMetadataMovAtoms, + comDrewMetadataMovAtomsCanon, + comDrewMetadataMovMedia, + comDrewMetadataMovMetadata, + comDrewMetadataMp3, + comDrewMetadataMp4, + comDrewMetadataMp4Boxes, + comDrewMetadataMp4Media, + comDrewMetadataPcx, + comDrewMetadataPlist, + comDrewMetadataPng, + comDrewMetadataTiff, + comDrewMetadataWav, + comDrewMetadataWebp, + comDrewMetadataXmp + ).flatten.mkString("[", ",", "]") + } + + private def extra: List[String] = { + // TODO: Need to fix this error + // java.util.MissingResourceException: Could not load any resource bundle by com.sun.org.apache.xerces.internal.impl.msg.SAXMessages + List( +// "com.sun.org.apache.xerces.internal.impl.msg.SAXMessages" + ).map(toConfigItem) + } + private def comDrewMetadataAdobe: List[String] = { + val pack = "com.drew.metadata.adobe" + val classes = """AdobeJpegDescriptor + |AdobeJpegDirectory + |AdobeJpegReader""" + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataAvi: List[String] = { + val pack = "com.drew.metadata.avi" + val classes = """AviDescriptor + |AviDirectory + |AviRiffHandler""" + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataBmp: List[String] = { + val pack = "com.drew.metadata.bmp" + val classes = """BmpHeaderDescriptor + |BmpHeaderDirectory + |BmpReader""" + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataEps: List[String] = { + val pack = "com.drew.metadata.eps" + val classes = """EpsDescriptor + |EpsDirectory + |EpsReader""" + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataFile: List[String] = { + val pack = "com.drew.metadata.file" + val classes = """FileSystemDescriptor + |FileSystemDirectory + |FileSystemMetadataReader + |FileTypeDescriptor + |FileTypeDirectory""" + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataGif: List[String] = { + val pack = "com.drew.metadata.gif" + val classes = """GifAnimationDescriptor + |GifAnimationDirectory + |GifCommentDescriptor + |GifCommentDirectory + |GifControlDescriptor + |GifControlDirectory + |GifHeaderDescriptor + |GifHeaderDirectory + |GifImageDescriptor + |GifImageDirectory + |GifReader""" + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataHeif: List[String] = { + val pack = "com.drew.metadata.heif" + val classes = """HeifBoxHandler + |HeifBoxTypes + |HeifContainerTypes + |HeifDescriptor + |HeifDirectory + |HeifHandlerFactory + |HeifItemTypes + |HeifPictureHandler""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataHeifBoxes: List[String] = { + val pack = "com.drew.metadata.heif.boxes" + val classes = """AuxiliaryTypeProperty + |Box + |ColourInformationBox + |FileTypeBox + |FullBox + |HandlerBox + |ImageRotationBox + |ImageSpatialExtentsProperty + |ItemInfoBox + |ItemLocationBox + |ItemProtectionBox + |PixelInformationBox + |PrimaryItemBox""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataIcc: List[String] = { + val pack = "com.drew.metadata.icc" + val classes = """IccDescriptor + |IccDirectory + |IccReader""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataIco: List[String] = { + val pack = "com.drew.metadata.ico" + val classes = """IcoDescriptor + |IcoDirectory + |IcoReader""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataIptc: List[String] = { + val pack = "com.drew.metadata.iptc" + val classes = """IptcDescriptor + |IptcDirectory + |IptcReader + |Iso2022Converter""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataJfif: List[String] = { + val pack = "com.drew.metadata.jfif" + val classes = """JfifDescriptor + |JfifDirectory + |JfifReader""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataJfxx: List[String] = { + val pack = "com.drew.metadata.jfxx" + val classes = """JfxxDescriptor + |JfxxDirectory + |JfxxReader""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataJpeg: List[String] = { + val pack = "com.drew.metadata.jpeg" + val classes = """HuffmanTablesDescriptor + |HuffmanTablesDirectory + |JpegCommentDescriptor + |JpegCommentDirectory + |JpegCommentReader + |JpegComponent + |JpegDescriptor + |JpegDhtReader + |JpegDirectory + |JpegDnlReader + |JpegReader""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataMov: List[String] = { + val pack = "com.drew.metadata.mov" + val classes = """QuickTimeAtomHandler + |QuickTimeAtomTypes + |QuickTimeContainerTypes + |QuickTimeContext + |QuickTimeDescriptor + |QuickTimeDictionary + |QuickTimeDirectory + |QuickTimeHandlerFactory + |QuickTimeMediaHandler + |QuickTimeMetadataHandler""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataMovAtoms: List[String] = { + val pack = "com.drew.metadata.mov.atoms" + val classes = """Atom + |FileTypeCompatibilityAtom + |FullAtom + |HandlerReferenceAtom + |MediaHeaderAtom + |MovieHeaderAtom + |MusicSampleDescriptionAtom + |SampleDescription + |SampleDescriptionAtom + |SoundInformationMediaHeaderAtom + |SoundSampleDescriptionAtom + |SubtitleSampleDescriptionAtom + |TextSampleDescriptionAtom + |TimecodeInformationMediaAtom + |TimecodeSampleDescriptionAtom + |TimeToSampleAtom + |TrackHeaderAtom + |VideoInformationMediaHeaderAtom + |VideoSampleDescriptionAtom""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataMovAtomsCanon: List[String] = { + val pack = "com.drew.metadata.mov.atoms.canon" + val classes = """CanonThumbnailAtom""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataMovMedia: List[String] = { + val pack = "com.drew.metadata.mov.media" + val classes = """QuickTimeMediaDirectory + |QuickTimeMusicDescriptor + |QuickTimeMusicDirectory + |QuickTimeMusicHandler + |QuickTimeSoundDescriptor + |QuickTimeSoundDirectory + |QuickTimeSoundHandler + |QuickTimeSubtitleDescriptor + |QuickTimeSubtitleDirectory + |QuickTimeSubtitleHandler + |QuickTimeTextDescriptor + |QuickTimeTextDirectory + |QuickTimeTextHandler + |QuickTimeTimecodeDescriptor + |QuickTimeTimecodeDirectory + |QuickTimeTimecodeHandler + |QuickTimeVideoDescriptor + |QuickTimeVideoDirectory + |QuickTimeVideoHandler""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataMovMetadata: List[String] = { + val pack = "com.drew.metadata.mov.metadata" + val classes = """QuickTimeDataHandler + |QuickTimeDirectoryHandler + |QuickTimeMetadataDescriptor + |QuickTimeMetadataDirectory""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataMp3: List[String] = { + val pack = "com.drew.metadata.mp3" + val classes = """Mp3Descriptor + |Mp3Directory + |Mp3Reader""" + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataMp4: List[String] = { + val pack = "com.drew.metadata.mp4" + val classes = """Mp4BoxHandler + |Mp4BoxTypes + |Mp4ContainerTypes + |Mp4Context + |Mp4Descriptor + |Mp4Dictionary + |Mp4Directory + |Mp4HandlerFactory + |Mp4MediaHandler""" + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataMp4Boxes: List[String] = { + val pack = "com.drew.metadata.mp4.boxes" + val classes = """AudioSampleEntry + |Box + |FileTypeBox + |FullBox + |HandlerBox + |HintMediaHeaderBox + |MediaHeaderBox + |MovieHeaderBox + |SampleEntry + |SoundMediaHeaderBox + |TimeToSampleBox + |TrackHeaderBox + |UserDataBox + |UuidBox + |VideoMediaHeaderBox + |VisualSampleEntry""" + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataMp4Media: List[String] = { + val pack = "com.drew.metadata.mp4.media" + val classes = """Mp4HintDescriptor + |Mp4HintDirectory + |Mp4HintHandler + |Mp4MediaDirectory + |Mp4MetaDescriptor + |Mp4MetaDirectory + |Mp4MetaHandler + |Mp4SoundDescriptor + |Mp4SoundDirectory + |Mp4SoundHandler + |Mp4TextDescriptor + |Mp4TextDirectory + |Mp4TextHandler + |Mp4UuidBoxDescriptor + |Mp4UuidBoxDirectory + |Mp4UuidBoxHandler + |Mp4VideoDescriptor + |Mp4VideoDirectory + |Mp4VideoHandler""" + + toConfigItems(classes = classes, pack = pack) } private def comDrewMetadataExifMakernotes: List[String] = { @@ -81,6 +441,66 @@ object GenerateNativeReflectionConfig { toConfigItems(classes = classes, pack = pack) } + private def comDrewMetadataPcx: List[String] = { + val pack = "com.drew.metadata.pcx" + val classes = """PcxDescriptor + |PcxDirectory + |PcxReader""" + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataPlist: List[String] = { + val pack = "com.drew.metadata.plist" + val classes = """BplistReader""" + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataPng: List[String] = { + val pack = "com.drew.metadata.png" + val classes = """PngChromaticitiesDirectory + |PngDescriptor + |PngDirectory""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataTiff: List[String] = { + val pack = "com.drew.metadata.tiff" + val classes = """DirectoryTiffHandler""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataWav: List[String] = { + val pack = "com.drew.metadata.wav" + val classes = """WavDescriptor + |WavDirectory + |WavRiffHandler""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataWebp: List[String] = { + val pack = "com.drew.metadata.webp" + val classes = """WebpDescriptor + |WebpDirectory + |WebpRiffHandler""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + + private def comDrewMetadataXmp: List[String] = { + val pack = "com.drew.metadata.xmp" + val classes = """XmpDescriptor + |XmpDirectory + |XmpReader + |XmpWriter""".stripMargin + + toConfigItems(classes = classes, pack = pack) + } + private def comDrewMetadataExif: List[String] = { val pack = "com.drew.metadata.exif" val classes =