/** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.ambari.server.orm.entities; import javax.persistence.Basic; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.Id; import javax.persistence.IdClass; import javax.persistence.JoinColumn; import javax.persistence.JoinColumns; import javax.persistence.Lob; import javax.persistence.ManyToOne; import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; import javax.persistence.Table; @IdClass(RequestScheduleBatchRequestEntityPK.class) @Entity @Table(name = "requestschedulebatchrequest") @NamedQueries({ @NamedQuery(name = "findByScheduleId", query = "SELECT batchreqs FROM " + "RequestScheduleBatchRequestEntity batchreqs WHERE batchreqs.scheduleId=:id") }) public class RequestScheduleBatchRequestEntity { @Id @Column(name = "schedule_id", nullable = false, insertable = true, updatable = true) private Long scheduleId; @Id @Column(name = "batch_id", nullable = false, insertable = true, updatable = true) private Long batchId; @Column(name = "request_id") private Long requestId; @Column(name = "request_type", length = 255) private String requestType; @Column(name = "request_uri", length = 1024) private String requestUri; @Lob @Basic(fetch = FetchType.LAZY) @Column(name = "request_body") private byte[] requestBody; @Column(name = "request_status", length = 255) private String requestStatus; @Column(name = "return_code") private Integer returnCode; @Column(name = "return_message", length = 2000) private String returnMessage; @ManyToOne @JoinColumns({ @JoinColumn(name = "schedule_id", referencedColumnName = "schedule_id", nullable = false, insertable = false, updatable = false) }) private RequestScheduleEntity requestScheduleEntity; public Long getScheduleId() { return scheduleId; } public void setScheduleId(Long scheduleId) { this.scheduleId = scheduleId; } public Long getBatchId() { return batchId; } public void setBatchId(Long batchId) { this.batchId = batchId; } public Long getRequestId() { return requestId; } public void setRequestId(Long requestId) { this.requestId = requestId; } public String getRequestType() { return requestType; } public void setRequestType(String requestType) { this.requestType = requestType; } public String getRequestUri() { return requestUri; } public void setRequestUri(String requestUri) { this.requestUri = requestUri; } public byte[] getRequestBody() { return requestBody; } public String getRequestBodyAsString() { return requestBody != null ? new String(requestBody) : null; } public void setRequestBody(byte[] requestBody) { this.requestBody = requestBody; } public void setRequestBody(String requestBodyStr) { if (requestBodyStr != null) { requestBody = requestBodyStr.getBytes(); } } public String getRequestStatus() { return requestStatus; } public void setRequestStatus(String requestStatus) { this.requestStatus = requestStatus; } public Integer getReturnCode() { return returnCode; } public void setReturnCode(Integer returnCode) { this.returnCode = returnCode; } public String getReturnMessage() { return returnMessage; } public void setReturnMessage(String returnMessage) { this.returnMessage = returnMessage; } public RequestScheduleEntity getRequestScheduleEntity() { return requestScheduleEntity; } public void setRequestScheduleEntity(RequestScheduleEntity requestScheduleEntity) { this.requestScheduleEntity = requestScheduleEntity; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; RequestScheduleBatchRequestEntity that = (RequestScheduleBatchRequestEntity) o; if (!batchId.equals(that.batchId)) return false; if (!scheduleId.equals(that.scheduleId)) return false; return true; } @Override public int hashCode() { int result = scheduleId.hashCode(); result = 31 * result + batchId.hashCode(); return result; } @Override public String toString() { return "RequestScheduleBatchRequestEntity{" + "scheduleId=" + scheduleId + ", batchId=" + batchId + ", requestId=" + requestId + ", requestType='" + requestType + '\'' + ", requestUri='" + requestUri + '\'' + ", requestStatus='" + requestStatus + '\'' + ", returnCode=" + returnCode + ", returnMessage='" + returnMessage + '\'' + '}'; } }