Audit and Prop table enhancements

- alf_prop_xxx tables
   - Added alf_prop_root table
   - alf_prop_value_xxx tables enforce uniqueness
   - Better splitting up of Collections and Maps (attempt to use exact storage type)
   - Moved some indexes around to reduce size but maintain index data lookups
   - Allow updates and deletes of properties via alf_prop_root (entry-point table)
 - Audit Application
   - Unique by name
   - Add 'disabled paths' to control audit behaviour (not wired into services)
   - Added concurrency checks for updates to the Audit Application (model change, etc)


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16217 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Derek Hulley
2009-09-11 13:59:45 +00:00
parent de1e940d73
commit 29b94cf0d7
23 changed files with 1496 additions and 653 deletions

View File

@@ -32,93 +32,77 @@ package org.alfresco.repo.domain.propval;
*/
public class PropertyLinkEntity
{
private long rootPropId;
private long currentPropId;
private long valuePropId;
private long keyPropId;
private Long rootPropId;
private Long propIndex;
private Long containedIn;
private Long keyPropId;
private Long valuePropId;
public PropertyLinkEntity()
{
}
@Override
public int hashCode()
{
return (int) rootPropId + (int) valuePropId;
}
@Override
public boolean equals(Object obj)
{
if (this == obj)
{
return true;
}
else if (obj instanceof PropertyLinkEntity)
{
PropertyLinkEntity that = (PropertyLinkEntity) obj;
return
this.rootPropId == that.rootPropId &&
this.currentPropId == that.currentPropId &&
this.valuePropId == that.valuePropId &&
this.keyPropId == that.keyPropId;
}
else
{
return false;
}
}
@Override
public String toString()
{
StringBuilder sb = new StringBuilder(512);
sb.append("PropertyLinkEntity")
.append("[ rootPropId=").append(rootPropId)
.append(", currentPropId=").append(currentPropId)
.append(", valuePropId=").append(valuePropId)
.append(", propIndex=").append(propIndex)
.append(", containedIn=").append(containedIn)
.append(", keyPropId=").append(keyPropId)
.append(", valuePropId=").append(valuePropId)
.append("]");
return sb.toString();
}
public long getRootPropId()
public Long getRootPropId()
{
return rootPropId;
}
public void setRootPropId(long rootPropId)
public void setRootPropId(Long rootPropId)
{
this.rootPropId = rootPropId;
}
public long getCurrentPropId()
public Long getPropIndex()
{
return currentPropId;
return propIndex;
}
public void setCurrentPropId(long currentPropId)
public void setPropIndex(Long propIndex)
{
this.currentPropId = currentPropId;
this.propIndex = propIndex;
}
public long getValuePropId()
public Long getContainedIn()
{
return valuePropId;
return containedIn;
}
public void setValuePropId(long valuePropId)
public void setContainedIn(Long containedIn)
{
this.valuePropId = valuePropId;
this.containedIn = containedIn;
}
public long getKeyPropId()
public Long getKeyPropId()
{
return keyPropId;
}
public void setKeyPropId(long keyPropId)
public void setKeyPropId(Long keyPropId)
{
this.keyPropId = keyPropId;
}
public Long getValuePropId()
{
return valuePropId;
}
public void setValuePropId(Long valuePropId)
{
this.valuePropId = valuePropId;
}
}