You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-dev@db.apache.org by Armin Waibel <ar...@apache.org> on 2004/08/11 18:29:56 UTC

[OJB 1.1] MetadataManager issue

Hi all,

as I said in my initial 1.1 post there are some issues in code:

======================
MetadataManager use
======================
Some classes still use MetadataManager.getInstance() and lookup object 
metadata or connection metadata information. But in 1.1 you only can 
lookup metadata of the current used PC when the PBKey/PCKey or a PB 
instance was used.


- DatabaseHandlingTask
should be easy to fix when an OJB instance was used or when the 
MetadataManager will be usable in standalone mode for tool support.


- QueryByCriteria#buildCriteria(Object anExample)
here the MM was used to lookup the ClassDescriptor of the given object. 
QueryByCriteria has public constructor and can currently be reused by PB 
instances of different PC, thus we can't bind a PB, PC or PCKey to this 
class. But reuse of Query objects could be problematic when using 
different model for the same class (one model supports all fields, the 
other model only PK + name).
Should we use an Query service bind to a PB instance. In that case we 
can set a PCKey/PBkey in the query object and can lookup current PC to 
lookup metadata information and the PB instance can check the PCKey 
before perform a getCollectionByQuery(...) or similar???


- OQLParser#selectQuery
again MM was used to lookup classDescriptor of query object on parsing.


- jdoql.QueryTreeResolver
again used for parsing


- graph.ObjectWrapper
???

A hard nut to crack ;-)

regards,
Armin


---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-dev-help@db.apache.org


Re: [OJB 1.1] MetadataManager issue

Posted by Jakob Braeuchi <jb...@gmx.ch>.
hi armin,

QueryByCriteria#setObjectProjectionAttribute also uses MM directly.

jakob

Armin Waibel schrieb:

> Hi all,
> 
> as I said in my initial 1.1 post there are some issues in code:
> 
> ======================
> MetadataManager use
> ======================
> Some classes still use MetadataManager.getInstance() and lookup object 
> metadata or connection metadata information. But in 1.1 you only can 
> lookup metadata of the current used PC when the PBKey/PCKey or a PB 
> instance was used.
> 
> 
> - DatabaseHandlingTask
> should be easy to fix when an OJB instance was used or when the 
> MetadataManager will be usable in standalone mode for tool support.
> 
> 
> - QueryByCriteria#buildCriteria(Object anExample)
> here the MM was used to lookup the ClassDescriptor of the given object. 
> QueryByCriteria has public constructor and can currently be reused by PB 
> instances of different PC, thus we can't bind a PB, PC or PCKey to this 
> class. But reuse of Query objects could be problematic when using 
> different model for the same class (one model supports all fields, the 
> other model only PK + name).
> Should we use an Query service bind to a PB instance. In that case we 
> can set a PCKey/PBkey in the query object and can lookup current PC to 
> lookup metadata information and the PB instance can check the PCKey 
> before perform a getCollectionByQuery(...) or similar???
> 
> 
> - OQLParser#selectQuery
> again MM was used to lookup classDescriptor of query object on parsing.
> 
> 
> - jdoql.QueryTreeResolver
> again used for parsing
> 
> 
> - graph.ObjectWrapper
> ???
> 
> A hard nut to crack ;-)
> 
> regards,
> Armin
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-dev-help@db.apache.org
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-dev-help@db.apache.org


Re: [OJB 1.1] MetadataManager issue

Posted by Jakob Braeuchi <jb...@gmx.ch>.
hi armin,

i fixed the issue in queryByExample.

jakob

Armin Waibel schrieb:

> Hi all,
> 
> as I said in my initial 1.1 post there are some issues in code:
> 
> ======================
> MetadataManager use
> ======================
> Some classes still use MetadataManager.getInstance() and lookup object 
> metadata or connection metadata information. But in 1.1 you only can 
> lookup metadata of the current used PC when the PBKey/PCKey or a PB 
> instance was used.
> 
> 
> - DatabaseHandlingTask
> should be easy to fix when an OJB instance was used or when the 
> MetadataManager will be usable in standalone mode for tool support.
> 
> 
> - QueryByCriteria#buildCriteria(Object anExample)
> here the MM was used to lookup the ClassDescriptor of the given object. 
> QueryByCriteria has public constructor and can currently be reused by PB 
> instances of different PC, thus we can't bind a PB, PC or PCKey to this 
> class. But reuse of Query objects could be problematic when using 
> different model for the same class (one model supports all fields, the 
> other model only PK + name).
> Should we use an Query service bind to a PB instance. In that case we 
> can set a PCKey/PBkey in the query object and can lookup current PC to 
> lookup metadata information and the PB instance can check the PCKey 
> before perform a getCollectionByQuery(...) or similar???
> 
> 
> - OQLParser#selectQuery
> again MM was used to lookup classDescriptor of query object on parsing.
> 
> 
> - jdoql.QueryTreeResolver
> again used for parsing
> 
> 
> - graph.ObjectWrapper
> ???
> 
> A hard nut to crack ;-)
> 
> regards,
> Armin
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-dev-help@db.apache.org
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-dev-help@db.apache.org