@Override
	protected final void onInternalCacheMetadata() throws Exception {
		this.internalCacheMetadataExceptResult();

		List<RuntimeArgument> runtimeArguments = this.getRuntimeArguments();
		if (runtimeArguments != null) {
			for (RuntimeArgument runtimeArgument : runtimeArguments) {
				if (runtimeArgument.getName().equals("Result")) {
					this.resultRuntimeArgument = runtimeArgument;
					return;
				}
			}
		}

		if (this.result == null)
			this.result = new OutArgument();
		this.resultRuntimeArgument = new RuntimeArgument("Result", this.getType(), ArgumentDirection.Out);
		ActivityMetadata.bindArgument(this.result, this.resultRuntimeArgument);
		this.addRuntimeArgument(this.resultRuntimeArgument);

	}