01 //
02 // This file is generated by MetaBoss Ver 1.4.0001 at Thu Dec 15 22:36:23 EST 2005
03 // MetaBoss is Copyright 2000-2005 © Softaris Pty.Ltd. All Rights Reserved.
04 // Content of this file is Copyright 2000-2005 © Softaris Pty. Ltd. All Rights Reserved.
05 // This content is licensed under Open Source Gnu Public License (GPL)
06 // Full terms and conditions of GPL can be found found at www.gnu.org
07 //
08 package com.almamater.crs.domains.courses.storage;
09
10 import com.metaboss.enterprise.ps.PSObject;
11 import com.metaboss.enterprise.ps.PSException;
12 import com.metaboss.enterprise.ps.STCollectionDetails;
13
14 public interface PSStudent extends PSObject
15 {
16 /** Naming URL of the instances of this component. Used to access it via JNDI */
17 public static final String COMPONENT_URL = "component:/com.almamater.crs.domains.courses.storage.PSStudent";
18
19 /** Returns next avaialble unique instance id for the new Student record */
20 public com.almamater.crs.types.system.courses.StudentInstanceId getNextAvailableInstanceId() throws PSException;
21
22 /** Inserts one or more new Student records into the database */
23 public void insert( com.almamater.crs.domains.courses.storage.STStudentRecord[] pNewRecords) throws PSException;
24
25 /** Updates one or more existing Student records in the database */
26 public void update( com.almamater.crs.domains.courses.storage.STStudentRecord[] pModifiedRecords) throws PSException;
27
28 /** Deletes one or more existing Student records from the database */
29 public void delete( com.almamater.crs.types.system.courses.StudentInstanceId[] pInstanceIdsToDelete) throws PSException;
30
31 /** Returns count of entities matching supplied collection search path.
32 * @param pCollectionDetails the collection search path to filter records with.
33 * null or zero-length array indicates that all records must be included in counting.
34 * @return not negative number indicating a number of records matching the collection search path */
35 public com.almamater.types.core.CollectionSize getRecordsCollectionSize( STCollectionDetails[] pCollectionDetails) throws PSException;
36
37 /** Returns all entities matching supplied collection search path.
38 * This method is slower than <A HREF="#getAllInstanceIds(com.metaboss.enterprise.ps.STCollectionDetails[])">getAllInstanceIds()</A>,
39 * but it retrieves fully populated records. It is typically used in cases where retrieval
40 * of the full record can not be deferred.
41 * @param pCollectionDetails the collection search path to filter records with.
42 * null or zero-length array indicates that all records must be included.
43 * @return array of records matching the collection search path. May have zero-length if no match found */
44 public com.almamater.crs.domains.courses.storage.STStudentRecord[] getAllRecords( STCollectionDetails[] pCollectionDetails) throws PSException;
45
46 /** Returns instance ids of all entities matching supplied collection search path.
47 * This method is faster than <A HREF="#getAllRecords(com.metaboss.enterprise.ps.STCollectionDetails[])">getAllRecords()</A>,
48 * but it does not retrieve fully populated records. It is typically used in cases where retrieval
49 * of the full record can be deferred.
50 * @param pCollectionDetails the collection search path to filter records with.
51 * null or zero-length array indicates that all records must be included.
52 * @return array of instance ids of entities matching the collection search path. May have zero-length if no match found */
53 public com.almamater.crs.types.system.courses.StudentInstanceId[] getAllInstanceIds(STCollectionDetails[] pCollectionDetails) throws PSException;
54
55 /** Retrieves Student record by its system id
56 * @param pInstanceId the instance id of the required record.
57 * @param pCollectionDetails the collection search path to filter records with.
58 * null or zero-length array indicates that all records must be included.
59 * @return the retrieved record, which has given instance id and matches the collection search path.
60 * May return null if no match found */
61 public com.almamater.crs.domains.courses.storage.STStudentRecord getByInstanceId( com.almamater.crs.types.system.courses.StudentInstanceId pInstanceId, STCollectionDetails[] pCollectionDetails) throws PSException;
62
63 /** Retrieves Student record by primary key
64 * @param pCollectionDetails the collection search path to filter records with.
65 * null or zero-length array indicates that all records must be included.
66 * @return the retrieved record, which has given primary key values and matches the collection search path.
67 * May return null if no match found */
68 public com.almamater.crs.domains.courses.storage.STStudentRecord getByPrimaryKey( com.almamater.types.core.StudentNumber pStudentStudentNo, STCollectionDetails[] pCollectionDetails) throws PSException;
69
70 /** Inserts one or more new StudentEnrollsIntoCourse association records into the database */
71 public void insertCourses( com.almamater.crs.domains.courses.storage.STStudentEnrollsIntoCourseAssociation[] pNewCourses) throws PSException;
72
73 /** Removes one or more existing StudentEnrollsIntoCourse association records from the database */
74 public void removeCourses( com.almamater.crs.domains.courses.storage.STStudentEnrollsIntoCourseAssociation[] pOldCourses) throws PSException;
75 }
|