// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __java_awt_datatransfer_SystemFlavorMap__
#define __java_awt_datatransfer_SystemFlavorMap__

#pragma interface

#include <java/lang/Object.h>
#include <gcj/array.h>

extern "Java"
{
  namespace java
  {
    namespace awt
    {
      namespace datatransfer
      {
        class SystemFlavorMap;
        class FlavorMap;
        class DataFlavor;
      }
    }
  }
}

class java::awt::datatransfer::SystemFlavorMap : public ::java::lang::Object
{
private:
  SystemFlavorMap ();
public:
  virtual ::java::util::Map *getNativesForFlavors (JArray< ::java::awt::datatransfer::DataFlavor *> *);
  virtual ::java::util::Map *getFlavorsForNatives (JArray< ::java::lang::String *> *);
  static ::java::awt::datatransfer::FlavorMap *getDefaultFlavorMap ();
  static ::java::lang::String *encodeJavaMIMEType (::java::lang::String *);
  static ::java::lang::String *encodeDataFlavor (::java::awt::datatransfer::DataFlavor *);
  static jboolean isJavaMIMEType (::java::lang::String *);
  static ::java::lang::String *decodeJavaMIMEType (::java::lang::String *);
  static ::java::awt::datatransfer::DataFlavor *decodeDataFlavor (::java::lang::String *);
  virtual ::java::util::List *getFlavorsForNative (::java::lang::String *);
  virtual ::java::util::List *getNativesForFlavor (::java::awt::datatransfer::DataFlavor *);
  virtual void addFlavorForUnencodedNative (::java::lang::String *, ::java::awt::datatransfer::DataFlavor *);
  virtual void addUnencodedNativeForFlavor (::java::awt::datatransfer::DataFlavor *, ::java::lang::String *);
  virtual void setNativesForFlavor (::java::awt::datatransfer::DataFlavor *, JArray< ::java::lang::String *> *);
  virtual void setFlavorsForNative (::java::lang::String *, JArray< ::java::awt::datatransfer::DataFlavor *> *);
private:
  static ::java::util::Map *systemFlavorMaps;
  static ::java::lang::String *GNU_JAVA_MIME_PREFIX;
  ::java::util::HashMap * __attribute__((aligned(__alignof__( ::java::lang::Object )))) nativeToFlavorMap;
  ::java::util::HashMap *flavorToNativeMap;
public:

  static ::java::lang::Class class$;
};

#endif /* __java_awt_datatransfer_SystemFlavorMap__ */
