source: josm/trunk/src/com/drew/metadata/exif/ExifInteropDescriptor.java@ 8132

Last change on this file since 8132 was 8132, checked in by Don-vip, 9 years ago

fix #11162 - update to metadata-extractor 2.7.2

File size: 2.2 KB
Line 
1/*
2 * Copyright 2002-2015 Drew Noakes
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *
16 * More information about this project is available at:
17 *
18 * https://drewnoakes.com/code/exif/
19 * https://github.com/drewnoakes/metadata-extractor
20 */
21package com.drew.metadata.exif;
22
23import com.drew.lang.annotations.NotNull;
24import com.drew.lang.annotations.Nullable;
25import com.drew.metadata.TagDescriptor;
26
27import static com.drew.metadata.exif.ExifInteropDirectory.*;
28
29/**
30 * Provides human-readable string representations of tag values stored in a {@link ExifInteropDirectory}.
31 *
32 * @author Drew Noakes https://drewnoakes.com
33 */
34public class ExifInteropDescriptor extends TagDescriptor<ExifInteropDirectory>
35{
36 public ExifInteropDescriptor(@NotNull ExifInteropDirectory directory)
37 {
38 super(directory);
39 }
40
41 @Override
42 @Nullable
43 public String getDescription(int tagType)
44 {
45 switch (tagType) {
46 case TAG_INTEROP_INDEX:
47 return getInteropIndexDescription();
48 case TAG_INTEROP_VERSION:
49 return getInteropVersionDescription();
50 default:
51 return super.getDescription(tagType);
52 }
53 }
54
55 @Nullable
56 public String getInteropVersionDescription()
57 {
58 return getVersionBytesDescription(TAG_INTEROP_VERSION, 2);
59 }
60
61 @Nullable
62 public String getInteropIndexDescription()
63 {
64 String value = _directory.getString(TAG_INTEROP_INDEX);
65
66 if (value == null)
67 return null;
68
69 return "R98".equalsIgnoreCase(value.trim())
70 ? "Recommended Exif Interoperability Rules (ExifR98)"
71 : "Unknown (" + value + ")";
72 }
73}
Note: See TracBrowser for help on using the repository browser.