Class ReferencingDirectiveLeakPreventer

Object
ReferencingDirectiveLeakPreventer
All Implemented Interfaces:
Adapter

public class ReferencingDirectiveLeakPreventer extends Object implements Adapter
Adapter to prevent memory leaks that occur when importing a gml schema.

When an application schema imports the gml schema a link from the gml schema to the app schema is created. Since the gml schema is a singleton we store permenantly this causes a memory leak. This adapter watches the XSDSchema.getReferencingDirectives() list and ensures that it does not continue to grow by only allowing unique schema references (in terms of target namespace) to reference it.

Author:
Justin Deoliveira, OpenGeo
  • Constructor Details

    • ReferencingDirectiveLeakPreventer

      public ReferencingDirectiveLeakPreventer()
  • Method Details

    • getTarget

      public Notifier getTarget()
      Specified by:
      getTarget in interface Adapter
    • setTarget

      public void setTarget(Notifier newTarget)
      Specified by:
      setTarget in interface Adapter
    • isAdapterForType

      public boolean isAdapterForType(Object type)
      Specified by:
      isAdapterForType in interface Adapter
    • notifyChanged

      public void notifyChanged(Notification notification)
      Specified by:
      notifyChanged in interface Adapter