Skip to content

Commit c134dc2

Browse files
committed
Merge pull request #142 from jakewins/1.0-summarize
Polish from user testing for summary
2 parents b0b69ab + d8b1d8e commit c134dc2

File tree

14 files changed

+71
-82
lines changed

14 files changed

+71
-82
lines changed

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

+13-19
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
import org.neo4j.driver.v1.summary.ProfiledPlan;
3939
import org.neo4j.driver.v1.summary.ResultSummary;
4040
import org.neo4j.driver.v1.summary.StatementType;
41-
import org.neo4j.driver.v1.summary.UpdateStatistics;
41+
import org.neo4j.driver.v1.summary.SummaryCounters;
4242
import org.neo4j.driver.v1.util.Function;
4343
import org.neo4j.driver.v1.util.Functions;
4444

@@ -83,7 +83,7 @@ public void record( Value[] fields ) {}
8383
public void statementType( StatementType type ) {}
8484

8585
@Override
86-
public void statementStatistics( UpdateStatistics statistics ) {}
86+
public void statementStatistics( SummaryCounters statistics ) {}
8787

8888
@Override
8989
public void plan( Plan plan ) {}
@@ -126,7 +126,7 @@ public void statementType( StatementType type )
126126
}
127127

128128
@Override
129-
public void statementStatistics( UpdateStatistics statistics )
129+
public void statementStatistics( SummaryCounters statistics )
130130
{
131131
summaryBuilder.statementStatistics( statistics );
132132
}
@@ -288,7 +288,7 @@ else if ( position == -1 && hasNext() )
288288
}
289289
while ( hasNext() );
290290

291-
discard();
291+
consume();
292292
return result;
293293
}
294294
else
@@ -301,24 +301,11 @@ else if ( position == -1 && hasNext() )
301301

302302
@SuppressWarnings("StatementWithEmptyBody")
303303
@Override
304-
public ResultSummary summarize()
305-
{
306-
discard();
307-
return summary;
308-
}
309-
310-
@Override
311-
public void remove()
312-
{
313-
throw new ClientException( "Removing records from a result is not supported." );
314-
}
315-
316-
@Override
317-
public void discard()
304+
public ResultSummary consume()
318305
{
319306
if(!open)
320307
{
321-
return;
308+
return summary;
322309
}
323310

324311
while ( !done )
@@ -327,6 +314,13 @@ public void discard()
327314
}
328315
recordBuffer.clear();
329316
open = false;
317+
return summary;
318+
}
319+
320+
@Override
321+
public void remove()
322+
{
323+
throw new ClientException( "Removing records from a result is not supported." );
330324
}
331325

332326
private void assertOpen()

driver/src/main/java/org/neo4j/driver/internal/connector/socket/SocketResponseHandler.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
import org.neo4j.driver.internal.summary.InternalNotification;
2828
import org.neo4j.driver.internal.summary.InternalPlan;
2929
import org.neo4j.driver.internal.summary.InternalProfiledPlan;
30-
import org.neo4j.driver.internal.summary.InternalUpdateStatistics;
30+
import org.neo4j.driver.internal.summary.InternalSummaryCounters;
3131
import org.neo4j.driver.v1.Value;
3232
import org.neo4j.driver.v1.exceptions.ClientException;
3333
import org.neo4j.driver.v1.exceptions.DatabaseException;
@@ -146,7 +146,7 @@ private void collectStatistics( StreamCollector collector, Value stats )
146146
if ( stats != null )
147147
{
148148
collector.statementStatistics(
149-
new InternalUpdateStatistics(
149+
new InternalSummaryCounters(
150150
statsValue( stats, "nodes-created" ),
151151
statsValue( stats, "nodes-deleted" ),
152152
statsValue( stats, "relationships-created" ),

driver/src/main/java/org/neo4j/driver/internal/spi/StreamCollector.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
import org.neo4j.driver.v1.summary.Plan;
2525
import org.neo4j.driver.v1.summary.ProfiledPlan;
2626
import org.neo4j.driver.v1.summary.StatementType;
27-
import org.neo4j.driver.v1.summary.UpdateStatistics;
27+
import org.neo4j.driver.v1.summary.SummaryCounters;
2828
import org.neo4j.driver.v1.Value;
2929

3030
public interface StreamCollector
@@ -41,7 +41,7 @@ public void record( Value[] fields ) {}
4141
public void statementType( StatementType type ) {}
4242

4343
@Override
44-
public void statementStatistics( UpdateStatistics statistics ) {}
44+
public void statementStatistics( SummaryCounters statistics ) {}
4545

4646
@Override
4747
public void plan( Plan plan ) {}
@@ -64,7 +64,7 @@ public void done() {}
6464

6565
void statementType( StatementType type);
6666

67-
void statementStatistics( UpdateStatistics statistics );
67+
void statementStatistics( SummaryCounters statistics );
6868

6969
void plan( Plan plan );
7070

driver/src/main/java/org/neo4j/driver/internal/summary/InternalUpdateStatistics.java renamed to driver/src/main/java/org/neo4j/driver/internal/summary/InternalSummaryCounters.java

+6-6
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@
1818
*/
1919
package org.neo4j.driver.internal.summary;
2020

21-
import org.neo4j.driver.v1.summary.UpdateStatistics;
21+
import org.neo4j.driver.v1.summary.SummaryCounters;
2222

23-
public class InternalUpdateStatistics implements UpdateStatistics
23+
public class InternalSummaryCounters implements SummaryCounters
2424
{
25-
public static final InternalUpdateStatistics EMPTY_STATS =
26-
new InternalUpdateStatistics( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 );
25+
public static final InternalSummaryCounters EMPTY_STATS =
26+
new InternalSummaryCounters( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 );
2727
private final int nodesCreated;
2828
private final int nodesDeleted;
2929
private final int relationshipsCreated;
@@ -36,7 +36,7 @@ public class InternalUpdateStatistics implements UpdateStatistics
3636
private final int constraintsAdded;
3737
private final int constrainsRemoved;
3838

39-
public InternalUpdateStatistics(
39+
public InternalSummaryCounters(
4040
int nodesCreated, int nodesDeleted,
4141
int relationshipsCreated, int relationshipsDeleted,
4242
int propertiesSet,
@@ -152,7 +152,7 @@ public boolean equals( Object o )
152152
return false;
153153
}
154154

155-
InternalUpdateStatistics that = (InternalUpdateStatistics) o;
155+
InternalSummaryCounters that = (InternalSummaryCounters) o;
156156

157157
return nodesCreated == that.nodesCreated
158158
&& nodesDeleted == that.nodesDeleted

driver/src/main/java/org/neo4j/driver/internal/summary/SummaryBuilder.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
import org.neo4j.driver.v1.summary.ResultSummary;
2929
import org.neo4j.driver.v1.Statement;
3030
import org.neo4j.driver.v1.summary.StatementType;
31-
import org.neo4j.driver.v1.summary.UpdateStatistics;
31+
import org.neo4j.driver.v1.summary.SummaryCounters;
3232
import org.neo4j.driver.v1.Value;
3333
import org.neo4j.driver.v1.exceptions.ClientException;
3434

@@ -37,7 +37,7 @@ public class SummaryBuilder implements StreamCollector
3737
private final Statement statement;
3838

3939
private StatementType type = null;
40-
private UpdateStatistics statistics = null;
40+
private SummaryCounters statistics = null;
4141
private Plan plan = null;
4242
private ProfiledPlan profile;
4343
private List<Notification> notifications = null;
@@ -71,7 +71,7 @@ public void statementType( StatementType type )
7171
}
7272
}
7373

74-
public void statementStatistics( UpdateStatistics statistics )
74+
public void statementStatistics( SummaryCounters statistics )
7575
{
7676
if ( this.statistics == null )
7777
{
@@ -139,9 +139,9 @@ public Statement statement()
139139
}
140140

141141
@Override
142-
public UpdateStatistics updateStatistics()
142+
public SummaryCounters counters()
143143
{
144-
return statistics == null ? InternalUpdateStatistics.EMPTY_STATS : statistics;
144+
return statistics == null ? InternalSummaryCounters.EMPTY_STATS : statistics;
145145
}
146146

147147
@Override

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

+1-1
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
* @see Session
3535
* @see Transaction
3636
* @see StatementResult
37-
* @see StatementResult#summarize()
37+
* @see StatementResult#consume()
3838
* @see ResultSummary
3939
* @since 1.0
4040
*/

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

+3-8
Original file line numberDiff line numberDiff line change
@@ -128,22 +128,17 @@ public interface StatementResult extends Iterator<Record>
128128
<T> List<T> list( Function<Record, T> mapFunction );
129129

130130
/**
131-
* Summarize the result.
131+
* Consume the entire result, yielding a summary of it.
132132
*
133133
* Calling this method exhausts the result.
134134
*
135135
* <pre class="doctest:ResultDocIT#summarizeUsage">
136136
* {@code
137-
* ResultSummary summary = session.run( "PROFILE MATCH (n:User {id: 12345}) RETURN n" ).summarize();
137+
* ResultSummary summary = session.run( "PROFILE MATCH (n:User {id: 12345}) RETURN n" ).consume();
138138
* }
139139
* </pre>
140140
*
141141
* @return a summary for the whole query
142142
*/
143-
ResultSummary summarize();
144-
145-
/**
146-
* Discard this result, freeing up any associated resources.
147-
*/
148-
void discard();
143+
ResultSummary consume();
149144
}

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

+1-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@
4444
*
4545
* <ul>
4646
* <li>Read from or discard a result, for instance via {@link StatementResult#next()},
47-
* {@link StatementResult#summarize()}, {@link StatementResult#discard()}.</li>
47+
* {@link StatementResult#consume()}, {@link StatementResult#discard()}.</li>
4848
* <li>Explicitly commit a transaction using {@link Transaction#close()}</li>
4949
* <li>Return a session to the pool using {@link Session#close()}</li>
5050
* </ul>

driver/src/main/java/org/neo4j/driver/v1/summary/ResultSummary.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,9 @@ public interface ResultSummary
4242
Statement statement();
4343

4444
/**
45-
* @return update statistics for the statement
45+
* @return counters for operations the statement triggered
4646
*/
47-
UpdateStatistics updateStatistics();
47+
SummaryCounters counters();
4848

4949
/**
5050
* @return type of statement that has been executed

driver/src/main/java/org/neo4j/driver/v1/summary/UpdateStatistics.java renamed to driver/src/main/java/org/neo4j/driver/v1/summary/SummaryCounters.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,11 @@
2121
import org.neo4j.driver.v1.util.Immutable;
2222

2323
/**
24-
* Contains counters for the number of update operations performed by a statement.
24+
* Contains counters for various operations that a statement triggered.
2525
* @since 1.0
2626
*/
2727
@Immutable
28-
public interface UpdateStatistics
28+
public interface SummaryCounters
2929
{
3030
/**
3131
* Whether there were any updates at all, eg. any of the counters are greater than 0.

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

+4-4
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,11 @@
2020

2121
import org.junit.Test;
2222

23-
import org.neo4j.driver.internal.summary.InternalUpdateStatistics;
23+
import org.neo4j.driver.internal.summary.InternalSummaryCounters;
2424
import org.neo4j.driver.internal.summary.SummaryBuilder;
2525
import org.neo4j.driver.v1.summary.ResultSummary;
2626
import org.neo4j.driver.v1.Statement;
27-
import org.neo4j.driver.v1.summary.UpdateStatistics;
27+
import org.neo4j.driver.v1.summary.SummaryCounters;
2828

2929
import static org.hamcrest.CoreMatchers.equalTo;
3030
import static org.hamcrest.MatcherAssert.assertThat;
@@ -42,10 +42,10 @@ public void shouldReturnEmptyStatisticsIfNotProvided() throws Throwable
4242

4343
// When
4444
ResultSummary summary = builder.build();
45-
UpdateStatistics stats = summary.updateStatistics();
45+
SummaryCounters stats = summary.counters();
4646

4747
// Then
48-
assertEquals( stats, new InternalUpdateStatistics( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ) );
48+
assertEquals( stats, new InternalSummaryCounters( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ) );
4949
}
5050

5151

driver/src/test/java/org/neo4j/driver/internal/connector/socket/SocketResponseHandlerTest.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,11 @@
2525
import java.util.Map;
2626

2727
import org.neo4j.driver.internal.spi.StreamCollector;
28-
import org.neo4j.driver.internal.summary.InternalUpdateStatistics;
28+
import org.neo4j.driver.internal.summary.InternalSummaryCounters;
2929
import org.neo4j.driver.v1.Value;
3030
import org.neo4j.driver.v1.summary.Plan;
3131
import org.neo4j.driver.v1.summary.StatementType;
32-
import org.neo4j.driver.v1.summary.UpdateStatistics;
32+
import org.neo4j.driver.v1.summary.SummaryCounters;
3333

3434
import static java.util.Collections.emptyList;
3535
import static java.util.Collections.singletonList;
@@ -91,7 +91,7 @@ public void shouldCollectBasicMetadata() throws Throwable
9191
"properties-set", 12
9292
)
9393
).asMap( ofValue());
94-
UpdateStatistics stats = new InternalUpdateStatistics( 1, 0, 0, 0, 12, 0, 0, 0, 0, 0, 0);
94+
SummaryCounters stats = new InternalSummaryCounters( 1, 0, 0, 0, 12, 0, 0, 0, 0, 0, 0);
9595

9696
// When
9797
handler.handleSuccessMessage( data );
@@ -126,7 +126,7 @@ public void shouldCollectPlan() throws Throwable
126126
)
127127
).asMap( ofValue());
128128

129-
UpdateStatistics stats = new InternalUpdateStatistics( 1, 0, 0, 0, 12, 0, 0, 0, 0, 0, 0 );
129+
SummaryCounters stats = new InternalSummaryCounters( 1, 0, 0, 0, 12, 0, 0, 0, 0, 0, 0 );
130130
Plan plan = plan(
131131
"ProduceResults",
132132
parameters( "KeyNames", "num", "EstimatedRows", 1.0 ).asMap( ofValue()), singletonList( "num" ),

0 commit comments

Comments
 (0)