def __init__(self, *args):
        # Default buffer size for this stream resource.
        self._bufferSize = 0

        # Default cache time for this stream resource.
        self._cacheTime = self.DEFAULT_CACHETIME

        # Associated class used for indetifying the source of the resource.
        self._associatedClass = None

        # Name of the resource is relative to the associated class.
        self._resourceName = None

        # Application used for serving the class.
        self._application = None

        nargs = len(args)
        if nargs == 2:
            resourceName, application = args
            self._associatedClass = application.__class__
            self._resourceName = resourceName
            self._application = application
            if resourceName is None:
                raise ValueError
            application.addResource(self)
        elif nargs == 3:
            associatedClass, resourceName, application = args
            self._associatedClass = associatedClass
            self._resourceName = resourceName
            self._application = application
            if (resourceName is None) or (associatedClass is None):
                raise ValueError
            application.addResource(self)
        else:
            raise ValueError, 'invalid number of arguments'
Construct a SchemaReference.
dataset/ETHPy150Open rwl/muntjac/muntjac/terminal/class_resource.py/ClassResource.__init__--crossover with--dataset/ETHPy150Open google/apis-client-generator/src/googleapis/codegen/data_types.py/SchemaReference.__init__