assert project != null;
assert name != null;
path = project.absoluteProjectPath(name);
state = new TaskStateInternal(toString());
dynamicObjectHelper = new DynamicObjectHelper(this, new DefaultConvention());
dependencies = new DefaultTaskDependency(project.getTasks());
services = project.getServices().createFor(this);
outputs = services.get(TaskOutputsInternal.class);
inputs = services.get(TaskInputs.class);
executer = services.get(TaskExecuter.class);
loggingManager = services.get(LoggingManagerInternal.class);