edu.internet2.middleware.grouperClient.jdbc
Annotation Type GcPersistableField


@Retention(value=RUNTIME)
@Target(value=FIELD)
public @interface GcPersistableField

Metadata about fields that can be stored to the database.

Author:
harveycg

Optional Element Summary
 java.lang.String columnName
          The name of the column that this field matches in the database.
 boolean compoundPrimaryKey
          Whether this field is part of a compound primary key or not.
 GcPersist persist
          Whether this field can be persisted to the database or not, if not set explicitly, defaults to checking for the defaultFieldPersist setting of the class level annotation PersistableClass, which must exist in that case.
 boolean primaryKey
          Whether this field is the primary key or not.
 boolean primaryKeyManuallyAssigned
          If this is a primary key, whether it is manually assigned, in which case we need to check the database every time to see if we should insert or update.
 java.lang.String primaryKeySequenceName
          The sequence name to populate the primary key with.
 

persist

public abstract GcPersist persist
Whether this field can be persisted to the database or not, if not set explicitly, 
 defaults to checking for the defaultFieldPersist setting of the class level annotation PersistableClass, which must exist in that case.

Returns:
whether to persist or not.
Default:
edu.internet2.middleware.grouperClient.jdbc.GcPersist.defaultToPersistableClassDefaultFieldPersist

columnName

public abstract java.lang.String columnName
The name of the column that this field matches in the database.

Returns:
the name.
Default:
""

primaryKeySequenceName

public abstract java.lang.String primaryKeySequenceName
The sequence name to populate the primary key with.

Returns:
true if so.
Default:
""

primaryKey

public abstract boolean primaryKey
Whether this field is the primary key or not. If it is, it must be numeric 
 unless primaryKeyManuallyAssigned is set to true, in which case it can be any type.

Returns:
true if so.
Default:
false

compoundPrimaryKey

public abstract boolean compoundPrimaryKey
Whether this field is part of a compound primary key or not.

Returns:
true if so.
Default:
false

primaryKeyManuallyAssigned

public abstract boolean primaryKeyManuallyAssigned
If this is a primary key, whether it is manually assigned, in which case we need to check the database every time to see if we should insert or update.

Default:
false