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

#ifndef __javax_print_attribute_AttributeSetUtilities__
#define __javax_print_attribute_AttributeSetUtilities__

#pragma interface

#include <java/lang/Object.h>

extern "Java"
{
  namespace javax
  {
    namespace print
    {
      namespace attribute
      {
        class AttributeSetUtilities;
        class Attribute;
        class PrintServiceAttributeSet;
        class PrintRequestAttributeSet;
        class PrintJobAttributeSet;
        class DocAttributeSet;
        class AttributeSet;
      }
    }
  }
}

class javax::print::attribute::AttributeSetUtilities : public ::java::lang::Object
{
private:
  AttributeSetUtilities ();
public:
  static ::javax::print::attribute::AttributeSet *synchronizedView (::javax::print::attribute::AttributeSet *);
  static ::javax::print::attribute::DocAttributeSet *synchronizedView (::javax::print::attribute::DocAttributeSet *);
  static ::javax::print::attribute::PrintJobAttributeSet *synchronizedView (::javax::print::attribute::PrintJobAttributeSet *);
  static ::javax::print::attribute::PrintRequestAttributeSet *synchronizedView (::javax::print::attribute::PrintRequestAttributeSet *);
  static ::javax::print::attribute::PrintServiceAttributeSet *synchronizedView (::javax::print::attribute::PrintServiceAttributeSet *);
  static ::javax::print::attribute::AttributeSet *unmodifiableView (::javax::print::attribute::AttributeSet *);
  static ::javax::print::attribute::DocAttributeSet *unmodifiableView (::javax::print::attribute::DocAttributeSet *);
  static ::javax::print::attribute::PrintJobAttributeSet *unmodifiableView (::javax::print::attribute::PrintJobAttributeSet *);
  static ::javax::print::attribute::PrintRequestAttributeSet *unmodifiableView (::javax::print::attribute::PrintRequestAttributeSet *);
  static ::javax::print::attribute::PrintServiceAttributeSet *unmodifiableView (::javax::print::attribute::PrintServiceAttributeSet *);
  static ::java::lang::Class *verifyAttributeCategory (::java::lang::Object *, ::java::lang::Class *);
  static ::javax::print::attribute::Attribute *verifyAttributeValue (::java::lang::Object *, ::java::lang::Class *);
  static void verifyCategoryForValue (::java::lang::Class *, ::javax::print::attribute::Attribute *);

  friend class javax_print_attribute_AttributeSetUtilities$SynchronizedPrintServiceAttributeSet;
  friend class javax_print_attribute_AttributeSetUtilities$SynchronizedPrintRequestAttributeSet;
  friend class javax_print_attribute_AttributeSetUtilities$SynchronizedPrintJobAttributeSet;
  friend class javax_print_attribute_AttributeSetUtilities$SynchronizedDocAttributeSet;
  friend class javax_print_attribute_AttributeSetUtilities$SynchronizedAttributeSet;
  friend class javax_print_attribute_AttributeSetUtilities$UnmodifiablePrintServiceAttributeSet;
  friend class javax_print_attribute_AttributeSetUtilities$UnmodifiablePrintRequestAttributeSet;
  friend class javax_print_attribute_AttributeSetUtilities$UnmodifiablePrintJobAttributeSet;
  friend class javax_print_attribute_AttributeSetUtilities$UnmodifiableDocAttributeSet;
  friend class javax_print_attribute_AttributeSetUtilities$UnmodifiableAttributeSet;

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

#endif /* __javax_print_attribute_AttributeSetUtilities__ */
