Changeset 30737 in osm for applications/editors/josm/plugins/imagerycache/src/org/mapdb/Queues.java
- Timestamp:
- 2014-10-18T23:07:52+02:00 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
applications/editors/josm/plugins/imagerycache/src/org/mapdb/Queues.java
r30532 r30737 44 44 public Node<E> deserialize(DataInput in, int available) throws IOException { 45 45 if(available==0)return Node.EMPTY; 46 return new Node< E>(Utils.unpackLong(in), serializer.deserialize(in,-1));46 return new Node<>(Utils.unpackLong(in), serializer.deserialize(in,-1)); 47 47 } 48 48 } … … 56 56 if(headRecid == 0) headRecid = engine.put(0L, Serializer.LONG_SERIALIZER); 57 57 head = new Atomic.Long(engine,headRecid); 58 nodeSerializer = new NodeSerializer< E>(serializer);58 nodeSerializer = new NodeSerializer<>(serializer); 59 59 } 60 60 … … 246 246 public boolean add(E e) { 247 247 long head2 = head.get(); 248 Node<E> n = new Node< E>(head2, e);248 Node<E> n = new Node<>(head2, e); 249 249 long recid = engine.put(n, nodeSerializer); 250 250 while(!head.compareAndSet(head2, recid)){ 251 251 //failed to update head, so read new value and start over 252 252 head2 = head.get(); 253 n = new Node< E>(head2, e);253 n = new Node<>(head2, e); 254 254 engine.update(recid, n, nodeSerializer); 255 255 } … … 307 307 static <E> Stack<E> getStack(Engine engine, Serializer<Serializer> serializerSerializer, long rootRecid){ 308 308 StackRoot root = engine.get(rootRecid, new StackRootSerializer(serializerSerializer)); 309 return new Stack< E>(engine, root.serializer, root.headerRecid, root.useLocks);309 return new Stack<>(engine, root.serializer, root.headerRecid, root.useLocks); 310 310 } 311 311 … … 330 330 public boolean add(E item){ 331 331 final long nextTail = engine.put((Node<E>)Node.EMPTY, nodeSerializer); 332 Node<E> n = new Node< E>(nextTail, item);332 Node<E> n = new Node<>(nextTail, item); 333 333 long tail2 = tail.get(); 334 334 while(!engine.compareAndSwap(tail2, (Node<E>)Node.EMPTY, n, nodeSerializer)){ … … 435 435 static <E> Queue<E> getQueue(Engine engine, Serializer<Serializer> serializerSerializer, long rootRecid){ 436 436 QueueRoot root = engine.get(rootRecid, new QueueRootSerializer(serializerSerializer)); 437 return new Queue< E>(engine, root.serializer, root.headerRecid, root.nextTailRecid,root.sizeRecid);437 return new Queue<>(engine, root.serializer, root.headerRecid, root.nextTailRecid,root.sizeRecid); 438 438 } 439 439 … … 459 459 long nRecid = headInsert.get(); 460 460 Node<E> n = engine.get(nRecid, nodeSerializer); 461 n = new Node< E>(n.next, (E) o);461 n = new Node<>(n.next, (E) o); 462 462 engine.update(nRecid, n, nodeSerializer); 463 463 headInsert.set(n.next); … … 579 579 static <E> CircularQueue<E> getCircularQueue(Engine engine, Serializer<Serializer> serializerSerializer, long rootRecid){ 580 580 CircularQueueRoot root = engine.get(rootRecid, new CircularQueueRootSerializer(serializerSerializer)); 581 return new CircularQueue< E>(engine, root.serializer, root.headerRecid, root.headerInsertRecid,root.sizeRecid);581 return new CircularQueue<>(engine, root.serializer, root.headerRecid, root.headerInsertRecid,root.sizeRecid); 582 582 } 583 583
Note:
See TracChangeset
for help on using the changeset viewer.
