| /* |
| * 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.ranger.entity; |
| |
| /** |
| * Logging table for all DB create and update queries |
| * |
| */ |
| |
| import javax.persistence.Column; |
| import javax.persistence.Entity; |
| import javax.persistence.GeneratedValue; |
| import javax.persistence.GenerationType; |
| import javax.persistence.Id; |
| import javax.persistence.SequenceGenerator; |
| import javax.persistence.Table; |
| import javax.xml.bind.annotation.XmlRootElement; |
| |
| import org.apache.ranger.common.AppConstants; |
| import org.apache.ranger.common.RangerConstants; |
| |
| |
| @Entity |
| @Table(name="x_trx_log") |
| @XmlRootElement |
| public class XXTrxLog extends XXDBBase implements java.io.Serializable { |
| private static final long serialVersionUID = 1L; |
| |
| @Id |
| @SequenceGenerator(name="X_TRX_LOG_SEQ",sequenceName="X_TRX_LOG_SEQ",allocationSize=1) |
| @GeneratedValue(strategy=GenerationType.AUTO,generator="X_TRX_LOG_SEQ") |
| @Column(name="ID") |
| protected Long id; |
| @Override |
| public void setId(Long id) { |
| this.id=id; |
| } |
| @Override |
| public Long getId() { |
| return id; |
| } |
| /** |
| * Name of the class to which the object id belongs to |
| * <ul> |
| * <li>This attribute is of type enum CommonEnums::ClassTypes |
| * </ul> |
| * |
| */ |
| @Column(name="CLASS_TYPE" , nullable=false ) |
| protected int objectClassType = RangerConstants.CLASS_TYPE_NONE; |
| |
| /** |
| * Id of the object to which this notes refers to |
| * <ul> |
| * </ul> |
| * |
| */ |
| @Column(name="OBJECT_ID" ) |
| protected Long objectId; |
| |
| /** |
| * Object Id of the parent object |
| * <ul> |
| * </ul> |
| * |
| */ |
| @Column(name="PARENT_OBJECT_ID" ) |
| protected Long parentObjectId; |
| |
| /** |
| * Object Class Type of the parent object |
| * <ul> |
| * </ul> |
| * |
| */ |
| @Column(name="PARENT_OBJECT_CLASS_TYPE" , nullable=false ) |
| protected int parentObjectClassType; |
| |
| /** |
| * Name of the attribute that was changed |
| * <ul> |
| * <li>The maximum length for this attribute is <b>1024</b>. |
| * </ul> |
| * |
| */ |
| @Column(name="PARENT_OBJECT_NAME" , length=1024) |
| protected String parentObjectName; |
| |
| /** |
| * Name of the attribute that was changed |
| * <ul> |
| * <li>The maximum length for this attribute is <b>1024</b>. |
| * </ul> |
| * |
| */ |
| @Column(name="OBJECT_NAME" , length=1024) |
| protected String objectName; |
| |
| /** |
| * Name of the attribute that was changed |
| * <ul> |
| * <li>The maximum length for this attribute is <b>255</b>. |
| * </ul> |
| * |
| */ |
| @Column(name="ATTR_NAME" , length=255) |
| protected String attributeName; |
| |
| /** |
| * Previous value |
| * <ul> |
| * <li>The maximum length for this attribute is <b>1024</b>. |
| * </ul> |
| * |
| */ |
| @Column(name="PREV_VAL" , length=1024) |
| protected String previousValue; |
| |
| /** |
| * New value |
| * <ul> |
| * <li>The maximum length for this attribute is <b>1024</b>. |
| * </ul> |
| * |
| */ |
| @Column(name="NEW_VAL" , length=1024) |
| protected String newValue; |
| |
| /** |
| * Transaction id |
| * <ul> |
| * <li>The maximum length for this attribute is <b>1024</b>. |
| * </ul> |
| * |
| */ |
| @Column(name="TRX_ID" , length=1024) |
| protected String transactionId; |
| |
| /** |
| * Action of the transaction |
| * <ul> |
| * <li>The maximum length for this attribute is <b>255</b>. |
| * </ul> |
| * |
| */ |
| @Column(name="ACTION" , length=255) |
| protected String action; |
| |
| /** |
| * Session Id |
| * <ul> |
| * <li>The maximum length for this attribute is <b>512</b>. |
| * </ul> |
| * |
| */ |
| @Column(name="SESS_ID" , length=512) |
| protected String sessionId; |
| |
| /** |
| * Request Id |
| * <ul> |
| * </ul> |
| * |
| */ |
| @Column(name="REQ_ID" ) |
| protected String requestId; |
| |
| /** |
| * Session Type |
| * <ul> |
| * </ul> |
| * |
| */ |
| @Column(name="SESS_TYPE" ) |
| protected String sessionType; |
| |
| /** |
| * Default constructor. This will set all the attributes to default value. |
| */ |
| public XXTrxLog ( ) { |
| objectClassType = RangerConstants.CLASS_TYPE_NONE; |
| } |
| |
| @Override |
| public int getMyClassType( ) { |
| return AppConstants.CLASS_TYPE_TRX_LOG; |
| } |
| |
| /** |
| * This method sets the value to the member attribute <b>objectClassType</b>. |
| * You cannot set null to the attribute. |
| * @param objectClassType Value to set member attribute <b>objectClassType</b> |
| */ |
| public void setObjectClassType( int objectClassType ) { |
| this.objectClassType = objectClassType; |
| } |
| |
| /** |
| * Returns the value for the member attribute <b>objectClassType</b> |
| * @return int - value of member attribute <b>objectClassType</b>. |
| */ |
| public int getObjectClassType( ) { |
| return this.objectClassType; |
| } |
| |
| /** |
| * This method sets the value to the member attribute <b>objectId</b>. |
| * You cannot set null to the attribute. |
| * @param objectId Value to set member attribute <b>objectId</b> |
| */ |
| public void setObjectId( Long objectId ) { |
| this.objectId = objectId; |
| } |
| |
| /** |
| * Returns the value for the member attribute <b>objectId</b> |
| * @return Long - value of member attribute <b>objectId</b>. |
| */ |
| public Long getObjectId( ) { |
| return this.objectId; |
| } |
| |
| /** |
| * This method sets the value to the member attribute <b>parentObjectId</b>. |
| * You cannot set null to the attribute. |
| * @param parentObjectId Value to set member attribute <b>parentObjectId</b> |
| */ |
| public void setParentObjectId( Long parentObjectId ) { |
| this.parentObjectId = parentObjectId; |
| } |
| |
| /** |
| * Returns the value for the member attribute <b>parentObjectId</b> |
| * @return Long - value of member attribute <b>parentObjectId</b>. |
| */ |
| public Long getParentObjectId( ) { |
| return this.parentObjectId; |
| } |
| |
| /** |
| * This method sets the value to the member attribute <b>parentObjectClassType</b>. |
| * You cannot set null to the attribute. |
| * @param parentObjectClassType Value to set member attribute <b>parentObjectClassType</b> |
| */ |
| public void setParentObjectClassType( int parentObjectClassType ) { |
| this.parentObjectClassType = parentObjectClassType; |
| } |
| |
| /** |
| * Returns the value for the member attribute <b>parentObjectClassType</b> |
| * @return int - value of member attribute <b>parentObjectClassType</b>. |
| */ |
| public int getParentObjectClassType( ) { |
| return this.parentObjectClassType; |
| } |
| |
| /** |
| * This method sets the value to the member attribute <b>parentObjectName</b>. |
| * You cannot set null to the attribute. |
| * @param parentObjectName Value to set member attribute <b>parentObjectName</b> |
| */ |
| public void setParentObjectName( String parentObjectName ) { |
| this.parentObjectName = parentObjectName; |
| } |
| |
| /** |
| * Returns the value for the member attribute <b>parentObjectName</b> |
| * @return String - value of member attribute <b>parentObjectName</b>. |
| */ |
| public String getParentObjectName( ) { |
| return this.parentObjectName; |
| } |
| |
| /** |
| * This method sets the value to the member attribute <b>objectName</b>. |
| * You cannot set null to the attribute. |
| * @param objectName Value to set member attribute <b>objectName</b> |
| */ |
| public void setObjectName( String objectName ) { |
| this.objectName = objectName; |
| } |
| |
| /** |
| * Returns the value for the member attribute <b>objectName</b> |
| * @return String - value of member attribute <b>objectName</b>. |
| */ |
| public String getObjectName( ) { |
| return this.objectName; |
| } |
| |
| /** |
| * This method sets the value to the member attribute <b>attributeName</b>. |
| * You cannot set null to the attribute. |
| * @param attributeName Value to set member attribute <b>attributeName</b> |
| */ |
| public void setAttributeName( String attributeName ) { |
| this.attributeName = attributeName; |
| } |
| |
| /** |
| * Returns the value for the member attribute <b>attributeName</b> |
| * @return String - value of member attribute <b>attributeName</b>. |
| */ |
| public String getAttributeName( ) { |
| return this.attributeName; |
| } |
| |
| /** |
| * This method sets the value to the member attribute <b>previousValue</b>. |
| * You cannot set null to the attribute. |
| * @param previousValue Value to set member attribute <b>previousValue</b> |
| */ |
| public void setPreviousValue( String previousValue ) { |
| this.previousValue = previousValue; |
| } |
| |
| /** |
| * Returns the value for the member attribute <b>previousValue</b> |
| * @return String - value of member attribute <b>previousValue</b>. |
| */ |
| public String getPreviousValue( ) { |
| return this.previousValue; |
| } |
| |
| /** |
| * This method sets the value to the member attribute <b>newValue</b>. |
| * You cannot set null to the attribute. |
| * @param newValue Value to set member attribute <b>newValue</b> |
| */ |
| public void setNewValue( String newValue ) { |
| this.newValue = newValue; |
| } |
| |
| /** |
| * Returns the value for the member attribute <b>newValue</b> |
| * @return String - value of member attribute <b>newValue</b>. |
| */ |
| public String getNewValue( ) { |
| return this.newValue; |
| } |
| |
| /** |
| * This method sets the value to the member attribute <b>transactionId</b>. |
| * You cannot set null to the attribute. |
| * @param transactionId Value to set member attribute <b>transactionId</b> |
| */ |
| public void setTransactionId( String transactionId ) { |
| this.transactionId = transactionId; |
| } |
| |
| /** |
| * Returns the value for the member attribute <b>transactionId</b> |
| * @return String - value of member attribute <b>transactionId</b>. |
| */ |
| public String getTransactionId( ) { |
| return this.transactionId; |
| } |
| |
| /** |
| * This method sets the value to the member attribute <b>action</b>. |
| * You cannot set null to the attribute. |
| * @param action Value to set member attribute <b>action</b> |
| */ |
| public void setAction( String action ) { |
| this.action = action; |
| } |
| |
| /** |
| * Returns the value for the member attribute <b>action</b> |
| * @return String - value of member attribute <b>action</b>. |
| */ |
| public String getAction( ) { |
| return this.action; |
| } |
| |
| /** |
| * This method sets the value to the member attribute <b>sessionId</b>. |
| * You cannot set null to the attribute. |
| * @param sessionId Value to set member attribute <b>sessionId</b> |
| */ |
| public void setSessionId( String sessionId ) { |
| this.sessionId = sessionId; |
| } |
| |
| /** |
| * Returns the value for the member attribute <b>sessionId</b> |
| * @return String - value of member attribute <b>sessionId</b>. |
| */ |
| public String getSessionId( ) { |
| return this.sessionId; |
| } |
| |
| /** |
| * This method sets the value to the member attribute <b>requestId</b>. |
| * You cannot set null to the attribute. |
| * @param requestId Value to set member attribute <b>requestId</b> |
| */ |
| public void setRequestId( String requestId ) { |
| this.requestId = requestId; |
| } |
| |
| /** |
| * Returns the value for the member attribute <b>requestId</b> |
| * @return String - value of member attribute <b>requestId</b>. |
| */ |
| public String getRequestId( ) { |
| return this.requestId; |
| } |
| |
| /** |
| * This method sets the value to the member attribute <b>sessionType</b>. |
| * You cannot set null to the attribute. |
| * @param sessionType Value to set member attribute <b>sessionType</b> |
| */ |
| public void setSessionType( String sessionType ) { |
| this.sessionType = sessionType; |
| } |
| |
| /** |
| * Returns the value for the member attribute <b>sessionType</b> |
| * @return String - value of member attribute <b>sessionType</b>. |
| */ |
| public String getSessionType( ) { |
| return this.sessionType; |
| } |
| |
| /** |
| * This return the bean content in string format |
| * @return formatedStr |
| */ |
| @Override |
| public String toString( ) { |
| String str = "XXTrxLog={"; |
| str += super.toString(); |
| str += "objectClassType={" + objectClassType + "} "; |
| str += "objectId={" + objectId + "} "; |
| str += "parentObjectId={" + parentObjectId + "} "; |
| str += "parentObjectClassType={" + parentObjectClassType + "} "; |
| str += "parentObjectName={" + parentObjectName + "} "; |
| str += "objectName={" + objectName + "} "; |
| str += "attributeName={" + attributeName + "} "; |
| str += "previousValue={" + previousValue + "} "; |
| str += "newValue={" + newValue + "} "; |
| str += "transactionId={" + transactionId + "} "; |
| str += "action={" + action + "} "; |
| str += "requestId={" + requestId + "} "; |
| str += "}"; |
| return str; |
| } |
| |
| /** |
| * Checks for all attributes except referenced db objects |
| * @return true if all attributes match |
| */ |
| @Override |
| public boolean equals( Object obj) { |
| if ( !super.equals(obj) ) { |
| return false; |
| } |
| XXTrxLog other = (XXTrxLog) obj; |
| if( this.objectClassType != other.objectClassType ) return false; |
| if ((this.objectId == null && other.objectId != null) || (this.objectId != null && !this.objectId.equals(other.objectId))) { |
| return false; |
| } |
| if ((this.parentObjectId == null && other.parentObjectId != null) || (this.parentObjectId != null && !this.parentObjectId.equals(other.parentObjectId))) { |
| return false; |
| } |
| if( this.parentObjectClassType != other.parentObjectClassType ) return false; |
| if ((this.parentObjectName == null && other.parentObjectName != null) || (this.parentObjectName != null && !this.parentObjectName.equals(other.parentObjectName))) { |
| return false; |
| } |
| if ((this.objectName == null && other.objectName != null) || (this.objectName != null && !this.objectName.equals(other.objectName))) { |
| return false; |
| } |
| if ((this.attributeName == null && other.attributeName != null) || (this.attributeName != null && !this.attributeName.equals(other.attributeName))) { |
| return false; |
| } |
| if ((this.previousValue == null && other.previousValue != null) || (this.previousValue != null && !this.previousValue.equals(other.previousValue))) { |
| return false; |
| } |
| if ((this.newValue == null && other.newValue != null) || (this.newValue != null && !this.newValue.equals(other.newValue))) { |
| return false; |
| } |
| if ((this.transactionId == null && other.transactionId != null) || (this.transactionId != null && !this.transactionId.equals(other.transactionId))) { |
| return false; |
| } |
| if ((this.action == null && other.action != null) || (this.action != null && !this.action.equals(other.action))) { |
| return false; |
| } |
| if ((this.sessionId == null && other.sessionId != null) || (this.sessionId != null && !this.sessionId.equals(other.sessionId))) { |
| return false; |
| } |
| if ((this.requestId == null && other.requestId != null) || (this.requestId != null && !this.requestId.equals(other.requestId))) { |
| return false; |
| } |
| if ((this.sessionType == null && other.sessionType != null) || (this.sessionType != null && !this.sessionType.equals(other.sessionType))) { |
| return false; |
| } |
| return true; |
| } |
| public static String getEnumName(String fieldName ) { |
| if( "objectClassType".equals(fieldName) ) { |
| return "CommonEnums.ClassTypes"; |
| } |
| //Later TODO |
| //return super.getEnumName(fieldName); |
| return null; |
| } |
| |
| } |