Skip to content

Commit 243d2df

Browse files
committed
#27 code optimization
1 parent c1ef039 commit 243d2df

File tree

11 files changed

+89
-96
lines changed

11 files changed

+89
-96
lines changed

jsurfer-all/src/test/java/org/jsfr/json/FastJsonParesrTest.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public void onValue(Object value, ParsingContext context) {
4949
context.pause();
5050
}
5151
}).build();
52-
ResumableParser parser = surfer.getResumableParser(read("sample.json"), config);
52+
ResumableParser parser = surfer.createResumableParser(read("sample.json"), config);
5353
assertFalse(parser.resume());
5454
LOGGER.info("Start parsing");
5555
parser.parse();

jsurfer-all/src/test/java/org/jsfr/json/GsonParserTest.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ public void onValue(Object value, ParsingContext context) {
114114
context.pause();
115115
}
116116
}).build();
117-
ResumableParser parser = surfer.getResumableParser(read("sample.json"), config);
117+
ResumableParser parser = surfer.createResumableParser(read("sample.json"), config);
118118
assertFalse(parser.resume());
119119
LOGGER.info("Start parsing");
120120
parser.parse();

jsurfer-all/src/test/java/org/jsfr/json/JacksonParserTest.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ public void onValue(Object value, ParsingContext context) {
119119
context.pause();
120120
}
121121
}).build();
122-
ResumableParser parser = surfer.getResumableParser(read("sample.json"), config);
122+
ResumableParser parser = surfer.createResumableParser(read("sample.json"), config);
123123
assertFalse(parser.resume());
124124
LOGGER.info("Start parsing");
125125
parser.parse();
@@ -141,7 +141,7 @@ public void testNonBlockingParser() throws Exception {
141141
byte[] part2 = "34, \"bar\": \"ab".getBytes("UTF-8");
142142
byte[] part3 = "cd\"}".getBytes("UTF-8");
143143

144-
NonBlockingParser nonBlockingParser = surfer.getNonBlockingParser(config);
144+
NonBlockingParser nonBlockingParser = surfer.createNonBlockingParser(config);
145145
assertTrue(nonBlockingParser.feed(part1, 0, part1.length));
146146
assertTrue(nonBlockingParser.feed(part2, 0, part2.length));
147147
assertTrue(nonBlockingParser.feed(part3, 0, part3.length));

jsurfer-core/src/main/java/org/jsfr/json/JsonParserAdapter.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ public interface JsonParserAdapter {
5454
* @param context Surfing context
5555
* @return Resumable Parser
5656
*/
57-
ResumableParser createParser(Reader reader, SurfingContext context);
57+
ResumableParser createResumableParser(Reader reader, SurfingContext context);
5858

5959
/**
6060
* Create a resumable parser
@@ -63,7 +63,7 @@ public interface JsonParserAdapter {
6363
* @param context Surfing context
6464
* @return Resumable parser
6565
*/
66-
ResumableParser createParser(String json, SurfingContext context);
66+
ResumableParser createResumableParser(String json, SurfingContext context);
6767

6868
NonBlockingParser createNonBlockingParser(SurfingContext context);
6969

jsurfer-core/src/main/java/org/jsfr/json/JsonSurfer.java

+7-7
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ public SurfingConfiguration.Builder configBuilder() {
8585
*/
8686
public Iterator<Object> iterator(Reader reader, JsonPath jsonPath) {
8787
SurfingContext context = createIteratorContext(jsonPath);
88-
final ResumableParser resumableParser = jsonParserAdapter.createParser(reader, context);
88+
final ResumableParser resumableParser = jsonParserAdapter.createResumableParser(reader, context);
8989
resumableParser.parse();
9090
return createIterator(context, resumableParser);
9191
}
@@ -99,7 +99,7 @@ public Iterator<Object> iterator(Reader reader, JsonPath jsonPath) {
9999
*/
100100
public Iterator<Object> iterator(String json, JsonPath jsonPath) {
101101
SurfingContext context = createIteratorContext(jsonPath);
102-
final ResumableParser resumableParser = jsonParserAdapter.createParser(json, context);
102+
final ResumableParser resumableParser = jsonParserAdapter.createResumableParser(json, context);
103103
resumableParser.parse();
104104
return createIterator(context, resumableParser);
105105
}
@@ -167,17 +167,17 @@ public void surf(Reader json, SurfingConfiguration configuration) {
167167
jsonParserAdapter.parse(json, new SurfingContext(configuration));
168168
}
169169

170-
public ResumableParser getResumableParser(String json, SurfingConfiguration configuration) {
170+
public ResumableParser createResumableParser(String json, SurfingConfiguration configuration) {
171171
ensureSetting(configuration);
172-
return jsonParserAdapter.createParser(json, new SurfingContext(configuration));
172+
return jsonParserAdapter.createResumableParser(json, new SurfingContext(configuration));
173173
}
174174

175-
public ResumableParser getResumableParser(Reader json, SurfingConfiguration configuration) {
175+
public ResumableParser createResumableParser(Reader json, SurfingConfiguration configuration) {
176176
ensureSetting(configuration);
177-
return jsonParserAdapter.createParser(json, new SurfingContext(configuration));
177+
return jsonParserAdapter.createResumableParser(json, new SurfingContext(configuration));
178178
}
179179

180-
public NonBlockingParser getNonBlockingParser(SurfingConfiguration configuration) {
180+
public NonBlockingParser createNonBlockingParser(SurfingConfiguration configuration) {
181181
ensureSetting(configuration);
182182
return jsonParserAdapter.createNonBlockingParser(new SurfingContext(configuration));
183183
}

jsurfer-core/src/main/java/org/jsfr/json/NonBlockingParser.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
/**
44
* Created by Leo on 2017/8/10.
55
*/
6-
public interface NonBlockingParser {
6+
public interface NonBlockingParser extends ResumableParser{
77

88
boolean feed(byte[] bytes, int start, int end);
99

jsurfer-core/src/main/java/org/jsfr/json/SurfingContext.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ public boolean endJSON() {
127127
// clear resources
128128
currentPosition.clear();
129129
currentPosition = null;
130-
this.stopped = true;
130+
this.stop();
131131
return true;
132132
}
133133

@@ -283,6 +283,7 @@ public boolean shouldBreak() {
283283
@Override
284284
public void stop() {
285285
this.stopped = true;
286+
this.paused = false;
286287
}
287288

288289
@Override

jsurfer-fastjson/src/main/java/org/jsfr/json/FastJsonParser.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ public void parse() {
3535
@Override
3636
public boolean resume() {
3737
try {
38-
if (context.isStopped() || !context.isPaused()) {
38+
if (!context.isPaused()) {
3939
return false;
4040
}
4141
context.resume();
@@ -131,21 +131,21 @@ private FastJsonParser() {
131131

132132
@Override
133133
public void parse(Reader reader, SurfingContext context) {
134-
createParser(reader, context).parse();
134+
createResumableParser(reader, context).parse();
135135
}
136136

137137
@Override
138138
public void parse(String json, SurfingContext context) {
139-
createParser(json, context).parse();
139+
createResumableParser(json, context).parse();
140140
}
141141

142142
@Override
143-
public ResumableParser createParser(Reader reader, SurfingContext context) {
143+
public ResumableParser createResumableParser(Reader reader, SurfingContext context) {
144144
return new FastJsonResumableParser(new JSONReaderScanner(reader), context, new StaticPrimitiveHolder());
145145
}
146146

147147
@Override
148-
public ResumableParser createParser(String json, SurfingContext context) {
148+
public ResumableParser createResumableParser(String json, SurfingContext context) {
149149
return new FastJsonResumableParser(new JSONScanner(json), context, new StaticPrimitiveHolder());
150150
}
151151

jsurfer-gson/src/main/java/org/jsfr/json/GsonParser.java

+7-7
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ public void parse() {
6060
@Override
6161
public boolean resume() {
6262
try {
63-
if (context.isStopped() || !context.isPaused()) {
63+
if (!context.isPaused()) {
6464
return false;
6565
}
6666
context.resume();
@@ -119,7 +119,7 @@ private void doParse() {
119119
break;
120120
case END_DOCUMENT:
121121
context.endJSON();
122-
return;
122+
break;
123123
}
124124
}
125125
} catch (Exception e) {
@@ -135,16 +135,16 @@ private GsonParser() {
135135

136136
@Override
137137
public void parse(Reader reader, SurfingContext context) {
138-
createParser(reader, context).parse();
138+
createResumableParser(reader, context).parse();
139139
}
140140

141141
@Override
142142
public void parse(String json, SurfingContext context) {
143-
createParser(json, context).parse();
143+
createResumableParser(json, context).parse();
144144
}
145145

146146
@Override
147-
public ResumableParser createParser(Reader reader, SurfingContext context) {
147+
public ResumableParser createResumableParser(Reader reader, SurfingContext context) {
148148
final JsonReader jsonReader = new JsonReader(reader);
149149
final JsonProvider jsonProvider = context.getConfig().getJsonProvider();
150150

@@ -197,8 +197,8 @@ public void doSkipValue() throws IOException {
197197
}
198198

199199
@Override
200-
public ResumableParser createParser(String json, SurfingContext context) {
201-
return createParser(new StringReader(json), context);
200+
public ResumableParser createResumableParser(String json, SurfingContext context) {
201+
return createResumableParser(new StringReader(json), context);
202202
}
203203

204204
@Override

0 commit comments

Comments
 (0)