1. /*
  2. * @(#)WBMPMetadataFormat.java 1.3 04/03/19
  3. *
  4. * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
  5. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
  6. */
  7. package com.sun.imageio.plugins.wbmp;
  8. import java.util.Arrays;
  9. import javax.imageio.ImageTypeSpecifier;
  10. import javax.imageio.metadata.IIOMetadataFormat;
  11. import javax.imageio.metadata.IIOMetadataFormatImpl;
  12. public class WBMPMetadataFormat extends IIOMetadataFormatImpl {
  13. private static IIOMetadataFormat instance = null;
  14. private WBMPMetadataFormat() {
  15. super(WBMPMetadata.nativeMetadataFormatName,
  16. CHILD_POLICY_SOME);
  17. // root -> ImageDescriptor
  18. addElement("ImageDescriptor",
  19. WBMPMetadata.nativeMetadataFormatName,
  20. CHILD_POLICY_EMPTY);
  21. addAttribute("ImageDescriptor", "WBMPType",
  22. DATATYPE_INTEGER, true, "0");
  23. addAttribute("ImageDescriptor", "Width",
  24. DATATYPE_INTEGER, true, null,
  25. "0", "65535", true, true);
  26. addAttribute("ImageDescriptor", "Height",
  27. DATATYPE_INTEGER, true, null,
  28. "1", "65535", true, true);
  29. }
  30. public boolean canNodeAppear(String elementName,
  31. ImageTypeSpecifier imageType) {
  32. return true;
  33. }
  34. public static synchronized IIOMetadataFormat getInstance() {
  35. if (instance == null) {
  36. instance = new WBMPMetadataFormat();
  37. }
  38. return instance;
  39. }
  40. }