Skip to content

Commit 661a4f5

Browse files
committed
Reconstruct lost commit: Rename retain to list and add @experimental to type system
1 parent 2a591d5 commit 661a4f5

File tree

13 files changed

+80
-40
lines changed

13 files changed

+80
-40
lines changed

driver/src/main/java/org/neo4j/driver/internal/InternalResultCursor.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -204,13 +204,13 @@ public RecordAccessor peek()
204204
}
205205

206206
@Override
207-
public List<Record> retain()
207+
public List<Record> list()
208208
{
209-
return retain( recordAsIs() );
209+
return list( recordAsIs() );
210210
}
211211

212212
@Override
213-
public <T> List<T> retain( Function<RecordAccessor, T> mapFunction )
213+
public <T> List<T> list( Function<RecordAccessor, T> mapFunction )
214214
{
215215
if ( isEmpty() )
216216
{
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
/**
2+
* Copyright (c) 2002-2015 "Neo Technology,"
3+
* Network Engine for Objects in Lund AB [http://neotechnology.com]
4+
*
5+
* This file is part of Neo4j.
6+
*
7+
* Licensed under the Apache License, Version 2.0 (the "License");
8+
* you may not use this file except in compliance with the License.
9+
* You may obtain a copy of the License at
10+
*
11+
* http://www.apache.org/licenses/LICENSE-2.0
12+
*
13+
* Unless required by applicable law or agreed to in writing, software
14+
* distributed under the License is distributed on an "AS IS" BASIS,
15+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16+
* See the License for the specific language governing permissions and
17+
* limitations under the License.
18+
*/
19+
package org.neo4j.driver.v1;
20+
21+
import java.lang.annotation.Documented;
22+
import java.lang.annotation.ElementType;
23+
import java.lang.annotation.Inherited;
24+
import java.lang.annotation.Retention;
25+
import java.lang.annotation.RetentionPolicy;
26+
import java.lang.annotation.Target;
27+
28+
/**
29+
* Annotated elements are experimental and may change without deprecation across driver releases
30+
*/
31+
@Inherited
32+
@Retention(RetentionPolicy.RUNTIME)
33+
@Documented
34+
@Target( { ElementType.TYPE, ElementType.METHOD } )
35+
public @interface Experimental
36+
{
37+
}

driver/src/main/java/org/neo4j/driver/v1/Record.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
* A record is an immutable copy of an ordered map
2525
*
2626
* @see ResultCursor#record()
27-
* @see ResultCursor#retain()
27+
* @see ResultCursor#list()
2828
*/
2929
@Immutable
3030
public interface Record extends RecordAccessor

driver/src/main/java/org/neo4j/driver/v1/Records.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
/**
2222
* Static utility methods for retaining records
2323
*
24-
* @see ResultCursor#retain()
24+
* @see ResultCursor#list()
2525
*/
2626
public abstract class Records
2727
{

driver/src/main/java/org/neo4j/driver/v1/ResultCursor.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
* Initially, before {@link #next()} has been called at least once, all field values are null.
3636
*
3737
* To keep a result around while further statements are run, or to use a result outside the scope
38-
* of the current transaction, see {@link #retain()}.
38+
* of the current transaction, see {@link #list()}.
3939
*/
4040
public interface ResultCursor extends RecordAccessor, Resource
4141
{
@@ -122,7 +122,7 @@ public interface ResultCursor extends RecordAccessor, Resource
122122
* @throws ClientException if the cursor can't be positioned at the first record
123123
* @return list of all immutable records
124124
*/
125-
List<Record> retain();
125+
List<Record> list();
126126

127127
/**
128128
* Retrieve and store a projection of the entire result stream.
@@ -136,7 +136,7 @@ public interface ResultCursor extends RecordAccessor, Resource
136136
* @param <T> the type of result list elements
137137
* @return list of all mapped immutable records
138138
*/
139-
<T> List<T> retain( Function<RecordAccessor, T> mapFunction );
139+
<T> List<T> list( Function<RecordAccessor, T> mapFunction );
140140

141141
/**
142142
* Summarize the result.

driver/src/main/java/org/neo4j/driver/v1/StatementRunner.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,5 +76,6 @@ public interface StatementRunner
7676
/**
7777
* @return type system used by this statement runner for classifying values
7878
*/
79+
@Experimental
7980
TypeSystem typeSystem();
8081
}

driver/src/main/java/org/neo4j/driver/v1/Type.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
/**
2222
* The type of a {@link Value} as defined by the Cypher language
2323
*/
24-
@Immutable
24+
@Immutable @Experimental
2525
public interface Type
2626
{
2727
/**

driver/src/main/java/org/neo4j/driver/v1/TypeSystem.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
*/
1919
package org.neo4j.driver.v1;
2020

21-
@Immutable
21+
@Immutable @Experimental
2222
public interface TypeSystem
2323
{
2424
Type ANY();

driver/src/main/java/org/neo4j/driver/v1/Value.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,7 @@ public interface Value extends MapAccessor, ListAccessor
110110
Iterable<String> keys();
111111

112112
/** @return The type of this value as defined in the Neo4j type system */
113+
@Experimental
113114
Type type();
114115

115116
/**
@@ -118,6 +119,7 @@ public interface Value extends MapAccessor, ListAccessor
118119
* @param type the given type
119120
* @return type.isTypeOf( this )
120121
*/
122+
@Experimental
121123
boolean hasType( Type type );
122124

123125
/**

driver/src/test/java/org/neo4j/driver/internal/InternalResultCursorTest.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ public void limitShouldWorkAsExpected()
155155
result.limit( 10 );
156156

157157
// THEN
158-
assertThat( result.retain().size(), equalTo( 10 ) );
158+
assertThat( result.list().size(), equalTo( 10 ) );
159159
}
160160

161161
@Test
@@ -166,7 +166,7 @@ public void limitZeroShouldWorkAsExpected1()
166166
result.limit( 0 );
167167

168168
// THEN
169-
assertThat( result.retain().size(), equalTo( 0 ) );
169+
assertThat( result.list().size(), equalTo( 0 ) );
170170
}
171171

172172
@Test
@@ -190,7 +190,7 @@ public void limitOnEmptyResultShouldWorkAsExpected()
190190
result.limit( 10 );
191191

192192
// THEN
193-
assertThat( result.retain().size(), equalTo( 0 ) );
193+
assertThat( result.list().size(), equalTo( 0 ) );
194194
}
195195

196196
@Test
@@ -202,7 +202,7 @@ public void changingLimitShouldWorkAsExpected()
202202
result.limit( 60 );
203203

204204
// THEN
205-
assertThat( result.retain().size(), equalTo( 6 ) );
205+
assertThat( result.list().size(), equalTo( 6 ) );
206206
}
207207

208208
@Test
@@ -212,7 +212,7 @@ public void retainShouldWorkAsExpected()
212212
ResultCursor result = createResult( 3 );
213213

214214
// WHEN
215-
List<Record> records = result.retain();
215+
List<Record> records = result.list();
216216

217217
// THEN
218218
assertTrue(result.atEnd());
@@ -226,7 +226,7 @@ public void retainAndMapByKeyShouldWorkAsExpected()
226226
ResultCursor result = createResult( 3 );
227227

228228
// WHEN
229-
List<Value> records = result.retain( Records.columnAsIs( "k1" ) );
229+
List<Value> records = result.list( Records.columnAsIs( "k1" ) );
230230

231231
// THEN
232232
assertTrue(result.atEnd());
@@ -240,7 +240,7 @@ public void retainAndMapByIndexShouldWorkAsExpected()
240240
ResultCursor result = createResult( 3 );
241241

242242
// WHEN
243-
List<Value> records = result.retain( Records.columnAsIs( 0 ) );
243+
List<Value> records = result.list( Records.columnAsIs( 0 ) );
244244

245245
// THEN
246246
assertTrue(result.atEnd());
@@ -254,7 +254,7 @@ public void retainFailsIfItCannotRetainEntireResult()
254254
result.skip( 5 );
255255

256256
expectedException.expect( ClientException.class );
257-
result.retain();
257+
result.list();
258258
}
259259

260260
@Test

driver/src/test/java/org/neo4j/driver/internal/summary/ResultCursorBuilderTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ public void shouldBuildHappyPathResult()
4747
builder.record( new Value[]{value( "Admin" )} );
4848

4949
// When
50-
List<Record> result = builder.build().retain();
50+
List<Record> result = builder.build().list();
5151

5252
// Then
5353
assertThat( result.size(), equalTo( 1 ) );
@@ -63,7 +63,7 @@ public void shouldHandleEmptyTable()
6363
ResultBuilder builder = createResultBuilder();
6464

6565
// When
66-
List<Record> result = builder.build().retain();
66+
List<Record> result = builder.build().list();
6767

6868
// Then
6969
assertThat( result.size(), equalTo( 0 ) );

driver/src/test/java/org/neo4j/driver/v1/integration/ParametersIT.java

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public void shouldBeAbleToSetAndReturnBooleanProperty()
4949
"CREATE (a {value:{value}}) RETURN a.value", parameters( "value", true ) );
5050

5151
// Then
52-
for ( Record record : result.retain() )
52+
for ( Record record : result.list() )
5353
{
5454
Value value = record.value( "a.value" );
5555
assertThat( value.hasType( session.typeSystem().BOOLEAN() ), equalTo( true ) );
@@ -65,7 +65,7 @@ public void shouldBeAbleToSetAndReturnByteProperty()
6565
"CREATE (a {value:{value}}) RETURN a.value", parameters( "value", (byte) 1 ) );
6666

6767
// Then
68-
for ( Record record : result.retain() )
68+
for ( Record record : result.list() )
6969
{
7070
Value value = record.value( "a.value" );
7171
assertThat( value.hasType( session.typeSystem().INTEGER() ), equalTo( true ) );
@@ -81,7 +81,7 @@ public void shouldBeAbleToSetAndReturnShortProperty()
8181
"CREATE (a {value:{value}}) RETURN a.value", parameters( "value", (short) 1 ) );
8282

8383
// Then
84-
for ( Record record : result.retain() )
84+
for ( Record record : result.list() )
8585
{
8686
Value value = record.value( "a.value" );
8787
assertThat( value.hasType( session.typeSystem().INTEGER() ), equalTo( true ) );
@@ -97,7 +97,7 @@ public void shouldBeAbleToSetAndReturnIntegerProperty()
9797
"CREATE (a {value:{value}}) RETURN a.value", parameters( "value", 1 ) );
9898

9999
// Then
100-
for ( Record record : result.retain() )
100+
for ( Record record : result.list() )
101101
{
102102
Value value = record.value( "a.value" );
103103
assertThat( value.hasType( session.typeSystem().INTEGER() ), equalTo( true ) );
@@ -114,7 +114,7 @@ public void shouldBeAbleToSetAndReturnLongProperty()
114114
"CREATE (a {value:{value}}) RETURN a.value", parameters( "value", 1L ) );
115115

116116
// Then
117-
for ( Record record : result.retain() )
117+
for ( Record record : result.list() )
118118
{
119119
Value value = record.value( "a.value" );
120120
assertThat( value.hasType( session.typeSystem().INTEGER() ), equalTo( true ) );
@@ -131,7 +131,7 @@ public void shouldBeAbleToSetAndReturnDoubleProperty()
131131
"CREATE (a {value:{value}}) RETURN a.value", parameters( "value", 6.28 ) );
132132

133133
// Then
134-
for ( Record record : result.retain() )
134+
for ( Record record : result.list() )
135135
{
136136
Value value = record.value( "a.value" );
137137
assertThat( value.hasType( session.typeSystem().FLOAT() ), equalTo( true ) );
@@ -148,7 +148,7 @@ public void shouldBeAbleToSetAndReturnCharacterProperty()
148148
"CREATE (a {value:{value}}) RETURN a.value", parameters( "value", 'ö' ) );
149149

150150
// Then
151-
for ( Record record : result.retain() )
151+
for ( Record record : result.list() )
152152
{
153153
Value value = record.value( "a.value" );
154154
assertThat( value.hasType( session.typeSystem().STRING() ), equalTo( true ) );
@@ -166,7 +166,7 @@ public void shouldBeAbleToSetAndReturnCharacterArrayProperty()
166166
"CREATE (a {value:{value}}) RETURN a.value", parameters( "value", arrayValue ) );
167167

168168
// Then
169-
for ( Record record : result.retain() )
169+
for ( Record record : result.list() )
170170
{
171171
Value value = record.value( "a.value" );
172172
assertThat( value.hasType( session.typeSystem().STRING() ), equalTo( true ) );
@@ -183,7 +183,7 @@ public void shouldBeAbleToSetAndReturnStringProperty()
183183
"CREATE (a {value:{value}}) RETURN a.value", parameters( "value", "Mjölnir" ) );
184184

185185
// Then
186-
for ( Record record : result.retain() )
186+
for ( Record record : result.list() )
187187
{
188188
Value value = record.value( "a.value" );
189189
assertThat( value.hasType( session.typeSystem().STRING() ), equalTo( true ) );
@@ -201,7 +201,7 @@ public void shouldBeAbleToSetAndReturnBooleanArrayProperty()
201201
"CREATE (a {value:{value}}) RETURN a.value", parameters( "value", arrayValue ) );
202202

203203
// Then
204-
for ( Record record : result.retain() )
204+
for ( Record record : result.list() )
205205
{
206206
Value value = record.value( "a.value" );
207207
assertThat( value.hasType( session.typeSystem().LIST() ), equalTo( true ) );
@@ -224,7 +224,7 @@ public void shouldBeAbleToSetAndReturnIntegerArrayProperty()
224224
"CREATE (a {value:{value}}) RETURN a.value", parameters( "value", arrayValue ) );
225225

226226
// Then
227-
for ( Record record : result.retain() )
227+
for ( Record record : result.list() )
228228
{
229229
Value value = record.value( "a.value" );
230230
assertThat( value.hasType( session.typeSystem().LIST() ), equalTo( true ) );
@@ -247,7 +247,7 @@ public void shouldBeAbleToSetAndReturnDoubleArrayProperty()
247247
"CREATE (a {value:{value}}) RETURN a.value", parameters( "value", arrayValue ) );
248248

249249
// Then
250-
for ( Record record : result.retain() )
250+
for ( Record record : result.list() )
251251
{
252252
Value value = record.value( "a.value" );
253253
assertThat( value.hasType( session.typeSystem().LIST() ), equalTo( true ) );
@@ -270,7 +270,7 @@ public void shouldBeAbleToSetAndReturnSpecialStringArrayProperty()
270270
"CREATE (a {value:{value}}) RETURN a.value", parameters( "value", arrayValue ) );
271271

272272
// Then
273-
for ( Record record : result.retain() )
273+
for ( Record record : result.list() )
274274
{
275275
Value value = record.value( "a.value" );
276276
assertThat( value.hasType( session.typeSystem().LIST() ), equalTo( true ) );
@@ -292,7 +292,7 @@ public void shouldBeAbleToSetAndReturnStringArrayProperty()
292292
"CREATE (a {value:{value}}) RETURN a.value", parameters( "value", arrayValue ) );
293293

294294
// Then
295-
for ( Record record : result.retain() )
295+
for ( Record record : result.list() )
296296
{
297297
Value value = record.value( "a.value" );
298298
assertThat( value.hasType( session.typeSystem().LIST() ), equalTo( true ) );
@@ -315,7 +315,7 @@ public void shouldBeAbleToSetAndReturnBooleanPropertyWithinMap()
315315
parameters( "value", parameters( "v", true ) ) );
316316

317317
// Then
318-
for ( Record record : result.retain() )
318+
for ( Record record : result.list() )
319319
{
320320
Value value = record.value( "a.value" );
321321
assertThat( value.hasType( session.typeSystem().BOOLEAN() ), equalTo( true ) );
@@ -333,7 +333,7 @@ public void shouldBeAbleToSetAndReturnIntegerPropertyWithinMap()
333333
parameters( "value", parameters( "v", 42 ) ) );
334334

335335
// Then
336-
for ( Record record : result.retain() )
336+
for ( Record record : result.list() )
337337
{
338338
Value value = record.value( "a.value" );
339339
assertThat( value.hasType( session.typeSystem().INTEGER() ), equalTo( true ) );
@@ -351,7 +351,7 @@ public void shouldBeAbleToSetAndReturnDoublePropertyWithinMap()
351351
parameters( "value", parameters( "v", 6.28 ) ) );
352352

353353
// Then
354-
for ( Record record : result.retain() )
354+
for ( Record record : result.list() )
355355
{
356356
Value value = record.value( "a.value" );
357357
assertThat( value.hasType( session.typeSystem().FLOAT() ), equalTo( true ) );
@@ -369,7 +369,7 @@ public void shouldBeAbleToSetAndReturnStringPropertyWithinMap()
369369
parameters( "value", parameters( "v", "Mjölnir" ) ) );
370370

371371
// Then
372-
for ( Record record : result.retain() )
372+
for ( Record record : result.list() )
373373
{
374374
Value value = record.value( "a.value" );
375375
assertThat( value.hasType( session.typeSystem().STRING() ), equalTo( true ) );

0 commit comments

Comments
 (0)