This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Incorrect Java methods called from CNI


> Can you do the same for AbstractClassificationModel? Looks like C++ and 
> GCJ disagree on how many virtual methods there are in that class.

Sorry for the delay - I ran into some system problems and was down for
awhile.  Attached is the vtable for AbstractClassificationModel as well
as the original Java declarations, and generated C++ header.




=============================
AbstractClassificationModel.s
=============================

_ZTVN7jblocks8security14classification27AbstractClassificationModelE:
	.long	0
	.long	0
	.long	_ZN7jblocks8security14classification27AbstractClassificationModel6class$E
	.long	12
	.long	_ZN4java4lang6Object8finalizeEv
	.long	_ZN4java4lang6Object8hashCodeEv
	.long	_ZN4java4lang6Object6equalsEPS1_
	.long	_ZN4java4lang6Object8toStringEv
	.long	_ZN7jblocks8security14classification27AbstractClassificationModel5cloneEv
	.long	_ZN7jblocks8security14classification27AbstractClassificationModel25addClassificationListenerEPNS1_22ClassificationListenerE
	.long	_ZN7jblocks8security14classification27AbstractClassificationModel24fireClassificationChangeEv
	.long	_ZN7jblocks8security14classification27AbstractClassificationModel20getNumberOfListenersEv
	.long	_ZN7jblocks8security14classification27AbstractClassificationModel11isImmutableEv
	.long	_ZN7jblocks8security14classification27AbstractClassificationModel18removeAllListenersEv
	.long	_ZN7jblocks8security14classification27AbstractClassificationModel28removeClassificationListenerEPNS1_22ClassificationListenerE
	.long	0
	.align 4
	.type	_IF_jblocks_security_classification_AbstractClassificationModel, @object
	.size	_IF_jblocks_security_classification_AbstractClassificationModel, 12



=============================
AbstractClassificationModel.h
=============================

class jblocks::security::classification::AbstractClassificationModel : public ::java::lang::Object
{
public:
  virtual void addClassificationListener (::jblocks::security::classification::ClassificationListener *);
  virtual ::java::lang::Object *clone ();
public:  // actually protected
  virtual void fireClassificationChange ();
  virtual jint getNumberOfListeners ();
public:
  virtual jboolean isImmutable ();
public:  // actually protected
  virtual void removeAllListeners ();
public:
  virtual void removeClassificationListener (::jblocks::security::classification::ClassificationListener *);
  AbstractClassificationModel ();
  static ::java::lang::String *classVersion;
  static const jlong serialVersionUID = 3090927512595159081LL;
private:
  ::jblocks::security::classification::ClassificationEvent * __attribute__((aligned(__alignof__( ::java::lang::Object )))) event;
  ::java::util::List *listeners;
public:

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



================================
AbstractClassificationModel.java
================================

public abstract class AbstractClassificationModel
    implements ClassificationModel, Serializable, Cloneable
{
    //////////////////////
    // Public constants //
    //////////////////////

    public final static String classVersion = "2.4";
    public final static long serialVersionUID = 3090927512595159081L;

    //////////////////////////
    // Protected properties //
    //////////////////////////

    private transient ClassificationEvent event = null;
    private transient List                listeners = null;

    public synchronized void addClassificationListener( ClassificationListener listener )
    public Object clone()
    protected synchronized void fireClassificationChange()
    protected synchronized int getNumberOfListeners()
    public boolean isImmutable()
    protected synchronized void removeAllListeners()
    public synchronized void removeClassificationListener( ClassificationListener listener )
}




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]