org.kuali.rice.krad.bo
Interface BusinessObject

All Superinterfaces:
ModelObjectBasic, Serializable
All Known Subinterfaces:
CampusEbo, CampusTypeEbo, ComponentEbo, CountryEbo, CountyEbo, Document, DocumentSearchCriteriaEbo, DocumentTypeEBO, EntityAddressTypeEbo, EntityAffiliationTypeEbo, EntityCitizenshipStatusEbo, EntityEmailTypeEbo, EntityEmploymentStatusEbo, EntityEmploymentTypeEbo, EntityExternalIdentifierTypeEbo, EntityNameTypeEbo, EntityPhoneTypeEbo, EntityTypeEbo, ExternalizableBusinessObject, GroupEbo, MaintenanceDocument, MaintenanceDocument, NamespaceEbo, ParameterEbo, ParameterTypeEbo, PersistableBusinessObject, PersistableBusinessObjectExtension, Person, PostalCodeEbo, RoleEbo, StateEbo, TransactionalDocument, WorkflowLookupableResult
All Known Implementing Classes:
Account, Address, AdHocRoutePerson, AdHocRouteRecipient, AdHocRouteWorkgroup, AgendaEditor, AgendaItemBo, ApplicationDocumentStatus, Attachment, AttachmentSample, AttributeReferenceDummy, AttributeReferenceElements, Author, Book, BookOrder, BookOrderDocument, BookstoreKimAttributes, BookType, BranchState, BSAddressType, BusinessObjectAttributeEntry, BusinessObjectBase, DocumentAttachment, DocumentBase, DocumentHeader, DocumentRouteHeaderValue, DocumentRouteHeaderValueActionListExtension, DocumentStatusTransition, DocumentType, DocumentTypePolicy, EDocLiteAssociation, EDocLiteDefinition, FiscalOfficer, GenericPermissionBo, GlobalBusinessObjectDetailBase, GroupDocumentMember, GroupDocumentQualifier, GroupRuleResponsibility, IdentityManagementGroupDocument, IdentityManagementKimDocument, IdentityManagementPersonDocument, IdentityManagementRoleDocument, IdentityManagementTypeAttributeTransactionalDocument, InactivatableFromToImpl, KimAttributeDataBo, KimAttributes, KimDocumentAttributeDataBusinessObjectBase, KimDocumentBoActivatableBase, KimDocumentBoActivatableEditableBase, KimDocumentBoActivatableToFromBase, KimDocumentBoActivatableToFromEditableBase, KimDocumentBoActiveToFromBase, KimDocumentBoBase, KimDocumentBoEditableBase, KimDocumentRoleMember, KimDocumentRolePermission, KimDocumentRoleQualifier, KimDocumentRoleResponsibility, KimDocumentRoleResponsibilityAction, KualiCodeBase, LookupResults, MaintenanceDocumentBase, MaintenanceDocumentBase, MaintenanceLock, Message, MultiAttachmentSample, MultiDocumentAttachment, MultipleValueLookupMetadata, NodeState, Note, NoteType, NotificationBo, NotificationChannelBo, NotificationChannelReviewerBo, NotificationContentTypeBo, NotificationMessageDelivery, NotificationPriorityBo, NotificationProducerBo, NotificationRecipientBo, NotificationRecipientListBo, NotificationSenderBo, ParameterBo, PermissionAttributeBo, PermissionBo, PermissionTemplateBo, PersistableAttachmentBase, PersistableBusinessObjectBase, PersistableBusinessObjectExtensionBase, PersonDocumentAddress, PersonDocumentAffiliation, PersonDocumentBoDefaultBase, PersonDocumentCitizenship, PersonDocumentEmail, PersonDocumentEmploymentInfo, PersonDocumentExternalId, PersonDocumentGroup, PersonDocumentName, PersonDocumentPhone, PersonDocumentPrivacy, PersonDocumentRole, PersonImpl, PersonRuleResponsibility, PessimisticLock, RoleDocumentBoBase, RoleDocumentBoDefaultBase, RoleDocumentDelegation, RoleDocumentDelegationMember, RoleDocumentDelegationMemberQualifier, RoleRuleResponsibility, RouteNodeConfigParam, RuleAttribute, RuleBaseValues, RuleDelegationBo, RuleDocument, RuleExpressionDef, RuleResponsibilityBo, RuleTemplateAttributeBo, RuleTemplateBo, RuleTemplateOptionBo, SelectedObjectIds, SessionDocument, State, TemplateBo, TransactionalDocumentBase, TransientBusinessObjectBase, TravelAccount, TravelAccountExtension, TravelAccountType, TravelAccountUseRate, TravelDocument2, UberPermissionBo, UserChannelSubscriptionBo, WebRuleBaseValues, WebRuleResponsibility

public interface BusinessObject
extends ModelObjectBasic

Interface for classes that act as a business object within the framework

Business objects are special objects to the Rice framework that indicate an object has certain features (like refresh). Most business objects are persistable, see @{link PersistableBusinessObject}, which means Rice can provide handle the CRUD operations performed on the object. In addition, metadata from the ORM layer will be available on these objects that is consumed by the framework to enable features.

Business objects are a special kind of data object within the system. A data object is just a general object that provides data within the system and can be used to back the user interfaces. In general, how the system doesn't know anything about how data objects are built (for example they could come from services or some other mechanism). Make a data object implement BusinessObject causes the system to make assumptions regarding the handling of that object.

Author:
Kuali Rice Team (rice.collab@kuali.org)

Method Summary
 void refresh()
          Invoked to refresh business objects related to the parent based on their key field values
 
Methods inherited from interface org.kuali.rice.core.api.mo.ModelObjectBasic
toString
 

Method Detail

refresh

void refresh()
Invoked to refresh business objects related to the parent based on their key field values

During processing (for example accepting user input) the field values that participate in relationships can become out of sync with the related business objects (for example: suppose our business object has a property name bookId with a related object of type Book that contains the id property. If the user changes the value for the bookId property, our id property on the related book and the associated information is still pointing to the previous book id). This method is invoked to indicate the related objects should be refreshed based on their related keys. For @{link PersistableBusinessObject} implementations, most refreshes can be handled by the ORM tool



Copyright © 2005-2012 The Kuali Foundation. All Rights Reserved.