У меня есть примерно следующий абстрактный класс:
@MappedSuperclass
public abstract class AuditModel extends BaseModel implements IEditable {
private Long createdBy;
@CurrentUser(type = PersistenceType.CREATE)
@Column(nullable = false, updatable = false)
public Long getCreatedBy() {
return this.createdBy;
}
public void setCreatedBy(Long createdBy) {
this.createdBy = createdBy;
}
}
Сонар сообщил о дублировании блока для методов getCreatedBy()
и setCreatedBy()
. Когда я нажимаю для подробностей, он показывает мне, что он дублирован другим классом, а именно ReservedToken.java
.
Следующее является частью моего ReservedToken. java code:
@Entity
@Table(name = "ReservedTokens")
@NamedQueries({
@NamedQuery(name = "reservedToken.updateHoldFromReleaseFlag", query = "UPDATE ReservedToken SET holdFromRelease = ? WHERE tokenSerialNo = ? and companyId = ? ") })
public class ReservedToken implements Serializable {
private static final long serialVersionUID = 1L;
private Long createdBy;
@CurrentUser(type = PersistenceType.CREATE)
@Column(nullable = false, updatable = false)
public Long getCreatedBy() {
return this.createdBy;
}
public void setCreatedBy(Long createdBy) {
this.createdBy = createdBy;
}
}
Оба class не имеет никакого отношения, мне любопытно, почему он все еще будет сообщать о дублировании в ReservedToken. java. Это ложное срабатывание? Или это из-за Serializable
? BaseModel также реализует BaseModel.