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

#ifndef __java_text_spi_DateFormatSymbolsProvider__
#define __java_text_spi_DateFormatSymbolsProvider__

#pragma interface

#include <java/util/spi/LocaleServiceProvider.h>
extern "Java"
{
  namespace java
  {
    namespace text
    {
        class DateFormatSymbols;
      namespace spi
      {
          class DateFormatSymbolsProvider;
      }
    }
  }
}

class java::text::spi::DateFormatSymbolsProvider : public ::java::util::spi::LocaleServiceProvider
{

public: // actually protected
  DateFormatSymbolsProvider();
public:
  virtual ::java::text::DateFormatSymbols * getInstance(::java::util::Locale *) = 0;
  static ::java::lang::Class class$;
};

#endif // __java_text_spi_DateFormatSymbolsProvider__
