Class ResourceCollection<Resource>

java.lang.Object
edu.umd.cs.findbugs.ResourceCollection<Resource>

public class ResourceCollection<Resource> extends Object
A ResourceCollection defines all of the resources created and used in a particular method. It serves two related purposes:
  1. Define all of the resources which exist in the method, and
  2. Record where resources created in the method are created

This distinction is important because some resources which exist in the method aren't created in the method: for example, resources passed in as parameters.

Author:
David Hovemeyer
  • Constructor Details

    • ResourceCollection

      public ResourceCollection()
      Constructor. Creates empty collection.
  • Method Details

    • addPreexistingResource

      public void addPreexistingResource(Resource resource)
      Add a preexisting resource. That is, one that is not created within the analyzed method. Resources passed to the method as parameters fall into this category.
      Parameters:
      resource - the preexisting resource
    • addCreatedResource

      public void addCreatedResource(Location location, Resource resource)
      Add a resource created within the analyzed method.
      Parameters:
      location - the location
      resource - the resource created at that location
    • isEmpty

      public boolean isEmpty()
      Return whether or not there are any resources in the collection.
    • resourceIterator

      public Iterator<Resource> resourceIterator()
      Get an Iterator over all resources in the method. This includes both preexisting and created resources.
    • getCreatedResource

      public Resource getCreatedResource(Location location)
      Get the resource that is created at given location.
      Parameters:
      location - the Location
      Returns:
      the Resource created at that location, or null if no resource is created at the location