Puts a new reference into this reference map.

        :param locator: a component reference to be added.

        :param component: a locator to find the reference by.

def put(self, locator = None, component = None):
        """
        Puts a new reference into this reference map.

        :param locator: a component reference to be added.

        :param component: a locator to find the reference by.
        """
        if component == None:
            raise Exception("Component cannot be null")

        self._lock.acquire()
        try:
            self._references.append(Reference(locator, component))
        finally:
            self._lock.release()