Hi Colin,
i'm not casting a Vertex, i suppose the function somewhere do it internally.
I checked the schema and i have only V and E subclasses.
thanks
Il giorno giovedì 7 maggio 2015 23:18:42 UTC+2, Colin ha scritto:
>
> Hi Enrico,
>
> Although an OrientVertex uses an ODocument internally, you cannot cast a
> Vertex to an ODocument.
>
> Are all of your edge classes derived from E and all of your vertex classes
> derived from V?
>
> You might double-check that, just in case.
>
> Best regards,
>
> -Colin
>
> Orient Technologies
>
> The Company behind OrientDB
>
>
> On Thursday, May 7, 2015 at 7:53:28 AM UTC-5, Enrico Di Marco wrote:
>>
>> Hi,
>> i'm trying to implement a time series function in Orient Graph 2.0.8
>> i would like to build a simple series like the following
>>
>> Time --next--> Time --next--> Time --last-->Time
>>
>> where Time is a Vertex with timestamp and next and last are edges defined
>> both as classes at shema level
>> target in the function is attached to the newly created timestamp Vertex
>>
>> my function is as folllow
>>
>> var now = new Date().getTime();
>> var gdb = orient.getGraph();
>> var last;
>> try {
>> //create time vtx
>> last = gdb.addVertex('class:Time');
>> last.setProperty('last_update', now);
>> //create edge target->now
>> var targetV=gdb.getVertex(target);
>> if (targetV!=null){
>>
>> //return newLastE;
>> //se c'era un last aggiorno gli archi
>> var lastsE = gdb.getEdgesOfClass('last');
>> if (lastsE.iterator().hasNext()) {
>> var oldLastE =lastsE.iterator().next();
>> //return oldLastE;
>>
>> var inV=oldLastE.getInVertex();
>> //return inV;
>> var outV=oldLastE.getOutVertex();
>> //return outV;
>>
>> var next=gdb.addEdge(null, outV, inV, "next");
>> //return next;
>> oldLastE.remove();
>> //return oldLastE;
>> gdb.addEdge(null, inV, last, "last");
>> }else{
>> //first time run
>> var root = gdb.addVertex('class:Time');
>> root.setProperty('last_update', 0);
>> gdb.addEdge(null, root, last, "last");
>> }
>> var newLastE=gdb.addEdge(null, targetV, last, "updated");
>> //(id, in, out, class)
>> }
>> gdb.commit();
>> } catch (err) {
>> gdb.rollback();
>> response.send(500, 'error creating time vertex', 'text/plain',
>> err.toString());
>> }
>> return last;
>>
>>
>>
>> the problem arise when i try to build the edge 'next' with an error
>>
>> java.lang.ClassCastException:
>> Cannotcastcom.orientechnologies.orient.core.record.impl.ODocumenttocom.tinkerpop.blueprints.Vertex
>>
>> i can i avoid this Cast and go ahead ?
>>
>> thanks for your time
>>
>
--
---
You received this message because you are subscribed to the Google Groups
"OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.