use of org.gradle.internal.operations.OperationIdentifier in project gradle by gradle.
the class LogEventSerializer method read.
@Override
public LogEvent read(Decoder decoder) throws Exception {
long timestamp = decoder.readLong();
String category = decoder.readString();
LogLevel logLevel = logLevelSerializer.read(decoder);
String message = decoder.readString();
Throwable throwable = throwableSerializer.read(decoder);
OperationIdentifier buildOperationId = decoder.readBoolean() ? new OperationIdentifier(decoder.readSmallLong()) : null;
return new LogEvent(timestamp, category, logLevel, message, throwable, buildOperationId);
}
use of org.gradle.internal.operations.OperationIdentifier in project gradle by gradle.
the class ProgressEventSerializer method read.
@Override
public ProgressEvent read(Decoder decoder) throws Exception {
OperationIdentifier id = new OperationIdentifier(decoder.readSmallLong());
String status = decoder.readString();
boolean failing = decoder.readBoolean();
return new ProgressEvent(id, status, failing);
}
use of org.gradle.internal.operations.OperationIdentifier in project gradle by gradle.
the class ProgressStartEventSerializer method write.
@Override
public void write(Encoder encoder, ProgressStartEvent event) throws Exception {
byte flags = 0;
OperationIdentifier parentProgressOperationId = event.getParentProgressOperationId();
if (parentProgressOperationId != null) {
flags |= PARENT_PROGRESS_ID;
}
String shortDescription = event.getShortDescription();
if (shortDescription != null) {
flags |= SHORT_DESCRIPTION;
}
String loggingHeader = event.getLoggingHeader();
if (loggingHeader != null) {
flags |= LOGGING_HEADER;
}
OperationIdentifier buildOperationId = event.getBuildOperationId();
if (buildOperationId != null) {
flags |= BUILD_OPERATION_ID;
}
OperationIdentifier parentBuildOperationId = event.getParentBuildOperationId();
if (parentBuildOperationId != null) {
flags |= PARENT_BUILD_OPERATION_ID;
}
BuildOperationCategory buildOperationCategory = event.getBuildOperationCategory();
if (buildOperationCategory == BuildOperationCategory.CONFIGURE_PROJECT) {
flags |= BUILD_OPERATION_CATEGORY_PROJECT;
} else if (buildOperationCategory == BuildOperationCategory.TASK) {
flags |= BUILD_OPERATION_CATEGORY_TASK;
} else if (buildOperationCategory != BuildOperationCategory.UNCATEGORIZED) {
throw new IllegalArgumentException("Can't handle build operation category " + buildOperationCategory);
}
encoder.writeByte(flags);
encoder.writeSmallLong(event.getProgressOperationId().getId());
if (parentProgressOperationId != null) {
encoder.writeSmallLong(parentProgressOperationId.getId());
}
encoder.writeLong(event.getTimestamp());
encoder.writeString(event.getCategory());
encoder.writeString(event.getDescription());
if (shortDescription != null) {
encoder.writeString(shortDescription);
}
if (loggingHeader != null) {
encoder.writeString(loggingHeader);
}
encoder.writeString(event.getStatus());
encoder.writeInt(event.getTotalProgress());
encoder.writeBoolean(event.isBuildOperationStart());
if (buildOperationId != null) {
encoder.writeSmallLong(buildOperationId.getId());
}
if (parentBuildOperationId != null) {
encoder.writeSmallLong(parentBuildOperationId.getId());
}
}
use of org.gradle.internal.operations.OperationIdentifier in project gradle by gradle.
the class ProgressStartEventSerializer method read.
@Override
public ProgressStartEvent read(Decoder decoder) throws Exception {
byte flags = decoder.readByte();
OperationIdentifier progressOperationId = new OperationIdentifier(decoder.readSmallLong());
OperationIdentifier parentProgressOperationId = null;
if ((flags & PARENT_PROGRESS_ID) != 0) {
parentProgressOperationId = new OperationIdentifier(decoder.readSmallLong());
}
long timestamp = decoder.readLong();
String category = decoder.readString();
String description = decoder.readString();
String shortDescription = null;
if ((flags & SHORT_DESCRIPTION) != 0) {
shortDescription = decoder.readString();
}
String loggingHeader = null;
if ((flags & LOGGING_HEADER) != 0) {
loggingHeader = decoder.readString();
}
String status = decoder.readString();
int totalProgress = decoder.readInt();
boolean buildOperationStart = decoder.readBoolean();
OperationIdentifier buildOperationId = null;
if ((flags & BUILD_OPERATION_ID) != 0) {
buildOperationId = new OperationIdentifier(decoder.readSmallLong());
}
OperationIdentifier parentBuildOperationId = null;
if ((flags & PARENT_BUILD_OPERATION_ID) != 0) {
parentBuildOperationId = new OperationIdentifier(decoder.readSmallLong());
}
BuildOperationCategory buildOperationCategory;
if ((flags & BUILD_OPERATION_CATEGORY_PROJECT) == BUILD_OPERATION_CATEGORY_PROJECT) {
buildOperationCategory = BuildOperationCategory.CONFIGURE_PROJECT;
} else if ((flags & BUILD_OPERATION_CATEGORY_TASK) == BUILD_OPERATION_CATEGORY_TASK) {
buildOperationCategory = BuildOperationCategory.TASK;
} else {
buildOperationCategory = BuildOperationCategory.UNCATEGORIZED;
}
return new ProgressStartEvent(progressOperationId, parentProgressOperationId, timestamp, category, description, shortDescription, loggingHeader, status, totalProgress, buildOperationStart, buildOperationId, parentBuildOperationId, buildOperationCategory);
}
use of org.gradle.internal.operations.OperationIdentifier in project gradle by gradle.
the class LoggingBackedStyledTextOutput method doEndLine.
@Override
protected void doEndLine(CharSequence endOfLine) {
buffer.append(endOfLine);
spans.add(new StyledTextOutputEvent.Span(this.style, buffer.toString()));
buffer.setLength(0);
OperationIdentifier buildOperationId = CurrentBuildOperationRef.instance().getId();
listener.onOutput(new StyledTextOutputEvent(clock.getCurrentTime(), category, logLevel, buildOperationId, spans));
spans = new ArrayList<StyledTextOutputEvent.Span>();
}
Aggregations