All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.runsidekick.broker.model.request.impl.tracepoint.PutTracePointRequest Maven / Gradle / Ivy

package com.runsidekick.broker.model.request.impl.tracepoint;

import com.runsidekick.broker.model.Application;
import com.runsidekick.broker.model.ApplicationFilter;
import com.runsidekick.broker.model.TracePoint;
import com.runsidekick.broker.model.request.impl.BaseApplicationAwareRequest;
import lombok.Data;

import java.util.Collections;
import java.util.List;

/**
 * @author ozge.lule
 */
@Data
public class PutTracePointRequest extends BaseApplicationAwareRequest {

    private String fileName;
    private int lineNo;
    private String conditionExpression;
    private int expireSecs;
    private int expireCount;
    private boolean enableTracing;
    private String fileHash;
    private boolean disable;
    private List applicationFilters;
    private List webhookIds;
    private String probeName;
    private List tags;

    public static PutTracePointRequest of(TracePoint tracePoint, ApplicationFilter applicationFilter,
                                          Application application) {
        PutTracePointRequest request = new PutTracePointRequest();
        request.setEnableTracing(true);
        request.setApplicationFilters(Collections.singletonList(applicationFilter));
        request.setApplications(Collections.singletonList(application.getInstanceId()));
        request.setExpireCount(tracePoint.getExpireCount());
        request.setExpireSecs(tracePoint.getExpireSecs());
        request.setConditionExpression(tracePoint.getConditionExpression());
        request.setFileHash(tracePoint.getFileHash());
        request.setFileName(tracePoint.getFileName());
        request.setLineNo(tracePoint.getLineNo());
        request.setDisable(tracePoint.isDisabled());
        request.setPersist(true);
        request.setClient(tracePoint.getClient());
        request.setId(tracePoint.getId());
        request.setWebhookIds(tracePoint.getWebhookIds());
        request.setProbeName(tracePoint.getProbeName());
        request.setTags(tracePoint.getTags());

        return request;
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy