File:  [NeXTSTEP 3.3 examples] / Examples / EnterpriseObjects / MasteringDetails / people_Oracle.eomodel
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 17:48:56 2018 UTC (8 years, 1 month ago) by root
Branches: NeXT, MAIN
CVS tags: NeXTSTEP33, HEAD
Sample Programs from NeXSTEP 3.3

{
    EOModelVersion = 1; 
    adaptorName = Oracle7; 
    connectionDictionary = {hostMachine = browndwarf; password = sqa; serverId = test; userName = sqa; }; 
    entities = (
	{
	    attributes = (
		{
		    columnName = DEPARTMENT_NAME; 
		    externalType = CHAR; 
		    name = department_name; 
		    valueClassName = NSString; 
		}, 
		{
		    columnName = DEPT_ID; 
		    externalType = NUMBER; 
		    name = dept_id; 
		    valueClassName = NSNumber; 
		    valueType = i; 
		}, 
		{
		    columnName = LOCATION_ID; 
		    externalType = NUMBER; 
		    name = location_id; 
		    valueClassName = NSNumber; 
		    valueType = i; 
		}
	    ); 
	    attributesUsedForLocking = (department_name, dept_id, location_id); 
	    classProperties = (department_name, dept_id, location_id); 
	    externalName = DEPARTMENT; 
	    name = department; 
	    primaryKeyAttributes = (dept_id); 
	}, 
	{
	    attributes = (
		{
		    columnName = ADDRESS; 
		    externalType = CHAR; 
		    name = address; 
		    valueClassName = NSString; 
		}, 
		{
		    columnName = CITY; 
		    externalType = CHAR; 
		    name = city; 
		    valueClassName = NSString; 
		}, 
		{
		    columnName = DEPT_ID; 
		    externalType = NUMBER; 
		    name = dept_id; 
		    valueClassName = NSNumber; 
		    valueType = i; 
		}, 
		{
		    columnName = EMP_ID; 
		    externalType = NUMBER; 
		    name = emp_id; 
		    valueClassName = NSNumber; 
		    valueType = i; 
		}, 
		{
		    columnName = FIRST_NAME; 
		    externalType = CHAR; 
		    name = first_name; 
		    valueClassName = NSString; 
		}, 
		{
		    calendarFormat = "%b %d %Y %H:%M"; 
		    columnName = HIRE_DATE; 
		    externalType = DATE; 
		    name = hire_date; 
		    valueClassName = NSCalendarDate; 
		}, 
		{
		    columnName = LAST_NAME; 
		    externalType = CHAR; 
		    name = last_name; 
		    valueClassName = NSString; 
		}, 
		{
		    columnName = MANAGER; 
		    externalType = NUMBER; 
		    name = manager; 
		    valueClassName = NSNumber; 
		    valueType = i; 
		}, 
		{
		    columnName = PHONE; 
		    externalType = CHAR; 
		    name = phone; 
		    valueClassName = NSString; 
		}, 
		{
		    columnName = SALARY; 
		    externalType = NUMBER; 
		    name = salary; 
		    valueClassName = NSNumber; 
		    valueType = d; 
		}, 
		{
		    columnName = STATE; 
		    externalType = CHAR; 
		    name = state; 
		    valueClassName = NSString; 
		}, 
		{
		    columnName = TITLE_ID; 
		    externalType = NUMBER; 
		    name = title_id; 
		    valueClassName = NSNumber; 
		    valueType = i; 
		}, 
		{
		    columnName = ZIP; 
		    externalType = CHAR; 
		    name = zip; 
		    valueClassName = NSString; 
		}
	    ); 
	    attributesUsedForLocking = (
		address, 
		city, 
		dept_id, 
		emp_id, 
		first_name, 
		hire_date, 
		last_name, 
		manager, 
		phone, 
		salary, 
		state, 
		title_id, 
		zip
	    ); 
	    className = Employee; 
	    classProperties = (
		address, 
		city, 
		dept_id, 
		emp_id, 
		first_name, 
		hire_date, 
		last_name, 
		manager, 
		phone, 
		salary, 
		state, 
		title_id, 
		zip, 
		toDepartment, 
		toEmp_Photo, 
		toEmp_Quote, 
		toProjects
	    ); 
	    externalName = EMPLOYEE; 
	    name = employee; 
	    primaryKeyAttributes = (emp_id); 
	    relationships = (
		{
		    destination = department; 
		    isToMany = N; 
		    joins = (
			{
			    destinationAttribute = dept_id; 
			    joinOperator = EOJoinEqualTo; 
			    joinSemantic = EOInnerJoin; 
			    sourceAttribute = dept_id; 
			}
		    ); 
		    name = toDepartment; 
		}, 
		{
		    destination = emp_photo; 
		    isToMany = N; 
		    joins = (
			{
			    destinationAttribute = emp_id; 
			    joinOperator = EOJoinEqualTo; 
			    joinSemantic = EOInnerJoin; 
			    sourceAttribute = emp_id; 
			}
		    ); 
		    name = toEmp_Photo; 
		}, 
		{
		    destination = emp_project; 
		    isToMany = Y; 
		    joins = (
			{
			    destinationAttribute = emp_id; 
			    joinOperator = EOJoinEqualTo; 
			    joinSemantic = EOInnerJoin; 
			    sourceAttribute = emp_id; 
			}
		    ); 
		    name = toEmp_Project; 
		}, 
		{
		    destination = emp_quote; 
		    isToMany = N; 
		    joins = (
			{
			    destinationAttribute = emp_id; 
			    joinOperator = EOJoinEqualTo; 
			    joinSemantic = EOInnerJoin; 
			    sourceAttribute = emp_id; 
			}
		    ); 
		    name = toEmp_Quote; 
		}, 
		{definition = toEmp_Project.toProject; name = toProjects; }
	    ); 
	}, 
	{
	    attributes = (
		{
		    columnName = EMP_ID; 
		    externalType = NUMBER; 
		    name = emp_id; 
		    valueClassName = NSNumber; 
		    valueType = i; 
		}, 
		{
		    columnName = PHOTO; 
		    externalType = "LONG RAW"; 
		    name = photo; 
		    valueClassName = NXImage; 
		}
	    ); 
	    attributesUsedForLocking = (emp_id, photo); 
	    classProperties = (emp_id, photo); 
	    externalName = EMP_PHOTO; 
	    name = emp_photo; 
	    primaryKeyAttributes = (emp_id); 
	}, 
	{
	    attributes = (
		{
		    columnName = EMP_ID; 
		    externalType = NUMBER; 
		    name = emp_id; 
		    valueClassName = NSNumber; 
		    valueType = i; 
		}, 
		{
		    columnName = PROJECT_ID; 
		    externalType = NUMBER; 
		    name = project_id; 
		    valueClassName = NSNumber; 
		    valueType = i; 
		}
	    ); 
	    attributesUsedForLocking = (emp_id, project_id); 
	    classProperties = (emp_id, project_id, toProject, toEmployee); 
	    externalName = EMP_PROJECT; 
	    name = emp_project; 
	    primaryKeyAttributes = (emp_id, project_id); 
	    relationships = (
		{
		    destination = employee; 
		    isToMany = N; 
		    joins = (
			{
			    destinationAttribute = emp_id; 
			    joinOperator = EOJoinEqualTo; 
			    joinSemantic = EOInnerJoin; 
			    sourceAttribute = emp_id; 
			}
		    ); 
		    name = toEmployee; 
		}, 
		{
		    destination = project; 
		    isToMany = N; 
		    joins = (
			{
			    destinationAttribute = project_id; 
			    joinOperator = EOJoinEqualTo; 
			    joinSemantic = EOInnerJoin; 
			    sourceAttribute = project_id; 
			}
		    ); 
		    name = toProject; 
		}
	    ); 
	}, 
	{
	    attributes = (
		{
		    columnName = EMP_ID; 
		    externalType = NUMBER; 
		    name = emp_id; 
		    valueClassName = NSNumber; 
		    valueType = i; 
		}, 
		{
		    columnName = QUOTE; 
		    externalType = "LONG RAW"; 
		    name = quote; 
		    valueClassName = NSData; 
		}
	    ); 
	    attributesUsedForLocking = (emp_id, quote); 
	    classProperties = (emp_id, quote); 
	    externalName = EMP_QUOTE; 
	    name = emp_quote; 
	    primaryKeyAttributes = (emp_id); 
	}, 
	{
	    attributes = (
		{
		    columnName = PROJECT_ID; 
		    externalType = NUMBER; 
		    name = project_id; 
		    valueClassName = NSNumber; 
		    valueType = i; 
		}, 
		{
		    columnName = PROJECT_NAME; 
		    externalType = CHAR; 
		    name = project_name; 
		    valueClassName = NSString; 
		}, 
		{
		    columnName = SUMMARYIMAGE; 
		    externalType = "LONG RAW"; 
		    name = summaryimage; 
		    valueClassName = NSData; 
		}
	    ); 
	    attributesUsedForLocking = (project_id, project_name, summaryimage); 
	    classProperties = (project_id, project_name, summaryimage); 
	    externalName = PROJECT; 
	    name = project; 
	    primaryKeyAttributes = (project_id); 
	}, 
	{
	    attributes = (
		{
		    columnName = ENTITY_NAME; 
		    externalType = CHAR; 
		    name = entity_name; 
		    valueClassName = NSString; 
		}, 
		{
		    columnName = MAX_KEY; 
		    externalType = NUMBER; 
		    name = max_key; 
		    valueClassName = NSNumber; 
		    valueType = i; 
		}
	    ); 
	    attributesUsedForLocking = (entity_name, max_key); 
	    classProperties = (entity_name, max_key); 
	    externalName = UNIQUE_KEY; 
	    name = unique_key; 
	    primaryKeyAttributes = (entity_name); 
	}
    ); 
}

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.