On Tuesday, October 08, 2013 09:17:55 AM Claude Warren wrote:
> Strangely enough there is a bug if this is correct.

I messed up my previous response, sorry.

Doing a S.change[Literal]Object(O) should remove S from its model and
insert the new S'.

> Assume a Model M containing one Statement S composed of s,p,o.
> Assume M has a listener L
> Assume a Statement S composed of s,p,o that is of Model M but not in Model
> M.
> 
> the expected state is
> M.contains(S) = F
> S.getModel() = M
> s.getModel() = M
> p.getModel() = M
> o.getModel() = M
> 
> assume S2 = S.changeLiteralObject( o2 );
> is the expected state
> M.contains(S) = F
> M.contains(S2)=F

This is the bit that should be T.

> S.getModel()= M
> S2.getModel()=M
> s.getModel() = M
> p.getModel() = M
> o.getModel() = M
> o2.getModel() = M
> L has no notifications

The intention for changeObject is that the old statement is removed
and the new one is added. The notifications generated should be the
ones that that remove-add pair generates.

Chris

-- 
"The wizard seemed quite willing when I talked to him."  /Howl's Moving Castle/

Epimorphics Ltd, http://www.epimorphics.com
Registered address: Court Lodge, 105 High Street, Portishead, Bristol BS20 6PT
Epimorphics Ltd. is a limited company registered in England (number 7016688)

Reply via email to