+ All Categories
Home > Documents > Intershop bo

Intershop bo

Date post: 11-Jul-2015
Category:
Upload: pradeep-j-v
View: 437 times
Download: 3 times
Share this document with a friend
Popular Tags:
23
Presented by : Pradeep J V
Transcript
Page 1: Intershop bo

Presented by : Pradeep J V

Page 2: Intershop bo

Business Objects

Business Object Framework

Persistent Objects

Transient Objects

EDL Modeling

Implementations of Business objects

Page 3: Intershop bo

Start Node

Pipeline Dictionary

Pipeline ProcessorISML-TemplatePipelet Pipelet

Request

Handler

Servlet

ISML

Template

Processor

Java

Server

Page

*.jsp

*_jsp.java

Servlet

Engine

(Tomcat)

*_jsp.class

Java

Compiler

(javac)

*_jsp.class

Se

rvle

t

En

gin

e

(To

mcat)

Webadapter

WebserverPO

PO PO

Persistent Object

Layer

Persistent Object Cache

Business Object

LayerBO

Page 4: Intershop bo

Introduce a new layer above the persistence layer

ORM Layer State

BO Layer Behavior

Make domain-concepts explicit in the API

Provide concepts for customization and extension

Support multi-application and multi-tenancy nature of Intershop 7

Encapsulate everything important for a certain business domain

Page 5: Intershop bo
Page 6: Intershop bo
Page 7: Intershop bo

Represents a certain business functionality that "belongs together".

Consists of entities, value objects, repositories, extensions and context objects

Page 8: Intershop bo

Represent business objects that have an identity

Provide methods that have a meaningful business function to modify internal state

Root entity as single entry point into an aggregate

All other entities reachable by navigation from root entity only

Page 9: Intershop bo

Value objects are defined by the values of their attributes

Page 10: Intershop bo

Manages the lifecycle of the root entity

Creation

Retrieval

Deletion

Only one repository per aggregate

Page 11: Intershop bo

Provide additional methods that operate on a business object

Are attached to the host object

Are created by an Extension Factory

Can be restricted to some business objects only

Page 12: Intershop bo

Every Business Object lives in a Context

Created by someone who wants to use the Business Object Layer (App layer)

Holds the extension factories that can be used

Typically: lifespan of one request

(Also holds the cache for Business Objects)

Page 13: Intershop bo

One specific Implementation type of Business Objects (BO)

Mapping to Database Structures by ORM Engine

Represent just Data, no Business Logic

Examples: ProductPO, CatalogPO

Page 14: Intershop bo
Page 15: Intershop bo

Intershop 7 provides two different ways of Java object implementations:

Persistent Objects (PO), encapsulated by business interfaces, access via corresponding manager classes

This is the Enfinity Suite 6 approach, currently still used in most of the backoffice parts

Business Objects (BO) which are business interfaces and can be wired to different implementations, access via corresponding repository classes

This is the genuine IS 7 approach, currently mainly used in storefront

Page 16: Intershop bo

In the context of POs, a relationship between two classes indicates a link between the database tables underlying the POs.

Intershop 7 is uses mostly two basic relationship types:

Association relationships

Weak relations

Page 17: Intershop bo

Association relationships express

a unidirectional or

bidirectional

semantic connection between classes.

Page 18: Intershop bo

Weak relations express a unidirectional relationship between classes

"Unidirectional" in this context means that the relationship is only navigable in one direction

The weak relation connecting WarehousePOand Address expresses that we only navigate the relationship from WarehousePOto Address, never the other way around

Page 19: Intershop bo

EDL

Is a textual domain-specific language (DSL) for modeling business objects for Intershop 7

An EDL file typically consists of:

imports for other EDL files that contain referenced types

primitive type declarations

external type declarations

namespace declarations

complex type declarations

Recommendations:

Just 1 EDL file per object (no technical limit)

Use the non-graphical EDL Model Editor (performance)

Page 20: Intershop bo

Imports

Namespace

Object Definition

Object Attributes

Modifier

ORM Relation

Page 21: Intershop bo

«interface»

BusinessObjectRepository

«interface»

BusinessObject

«interface»

WarehouseBO

«interface»

StockBO

<<class>>

ORMWarehouseBOImpl

<<class>>

ORMStockBOImpl

<<class>>

WarehousePO

<<class>>

StockPO

<<class>>

ORMWarehouseBORepositoryImpl

<<class>>

WarehouseBORepository

<<class>>

AbstractDomainRepositoryBOExtension

<<class>>

AbstractBusinessObject

<<class>>

AbstractExtensibleObjectBO

Page 22: Intershop bo
Page 23: Intershop bo

Recommended