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

#ifndef __java_beans_beancontext_BeanContextChildComponentProxy__
#define __java_beans_beancontext_BeanContextChildComponentProxy__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace java
  {
    namespace awt
    {
        class Component;
    }
    namespace beans
    {
      namespace beancontext
      {
          class BeanContextChildComponentProxy;
      }
    }
  }
}

class java::beans::beancontext::BeanContextChildComponentProxy : public ::java::lang::Object
{

public:
  virtual ::java::awt::Component * getComponent() = 0;
  static ::java::lang::Class class$;
} __attribute__ ((java_interface));

#endif // __java_beans_beancontext_BeanContextChildComponentProxy__
