All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.venky.swf.db.model.reflection.uniquekey.UniqueKeyFieldDescriptor Maven / Gradle / Ivy

The newest version!
package com.venky.swf.db.model.reflection.uniquekey;

import java.lang.reflect.Method;

import com.venky.swf.db.model.Model;
import com.venky.swf.db.model.reflection.ModelReflector;

public class UniqueKeyFieldDescriptor {
	private final String fieldName ;
	
	public String getFieldName() {
		return this.fieldName;
	}

	private final ModelReflector referredModelReflector; 
	public ModelReflector getReferredModelReflector() {
		return this.referredModelReflector;
	}
	
	public UniqueKeyFieldDescriptor(UniqueKey key,String fieldName){
		this.fieldName = fieldName;
		
		Method fieldGetter = key.getReflector().getFieldGetter(fieldName);
		Method referredModelGetter = key.getReflector().getReferredModelGetterFor(fieldGetter);

		if (referredModelGetter != null){
			Class referredModelClass = key.getReflector().getReferredModelClass(referredModelGetter);
			referredModelReflector = ModelReflector.instance(referredModelClass) ;
		}else {
			referredModelReflector = null;
		}
	}

	private boolean multipleRecordsWithNullAllowed = true;
	public void setMultipleRecordsWithNullAllowed(
			boolean allowMultipleRecordsWithNull) {
		this.multipleRecordsWithNullAllowed = allowMultipleRecordsWithNull;
	}
	
	public boolean isMultipleRecordsWithNullAllowed(){
		return this.multipleRecordsWithNullAllowed;
	}
	
	private boolean exportable = true; 
	public boolean isExportable(){
		return exportable;
	}
	
	public void setExportable(boolean exportable){
		this.exportable = exportable;
	}
	
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy