Put an item to queue if it is not duplicated.

def put(self, item, block=True, timeout=None, dup_callback=None):
        """Put an item to queue if it is not duplicated.
        """
        if not self.is_duplicated(item):
            super(CachedQueue, self).put(item, block, timeout)
        else:
            if dup_callback:
                dup_callback(item)