protected final void internalCacheMetadata() throws Exception {
		this.onInternalCacheMetadata();

		if (this.children == null)
			this.children = emptyActivities;

		if (this.implementationChildren == null)
			this.implementationChildren = emptyActivities;

		if (this.runtimeArguments == null)
			this.runtimeArguments = emptyArguments;
		else
			this.symbolCount += this.runtimeArguments.size();

		if (this.runtimeVariables == null)
			this.runtimeVariables = emptyVariables;
		else
			this.symbolCount += this.runtimeVariables.size();

		if (this.implementationVariables == null)
			this.implementationVariables = emptyVariables;
		else
			this.symbolCount += this.implementationVariables.size();

		this.cacheState = MetadataCacheState.Partial;
	}