How to read each new line from file after 10 second delay with Akka?
I am trying to read from file line by line with some delay.
For example:
- read and print 1st line of the file
- wait 10 seconds
- read and print 2nd line of the file
- etc
So far I have tried something like this:
final Path filePath = Paths.get('path/to/file');
final ActorSystem system = ActorSystem.create();
final Materializer materializer = ActorMaterializer.create(system);
Sink<ByteString, CompletionStage<Done>> printlnSink =
Sink.<ByteString>foreach(chunk -> System.out.println(chunk.utf8String()));
final CompletionStage<IOResult> result =
FileIO.fromPath(filePath)
.throttle(1, Duration.create(10, TimeUnit.SECONDS), 1, ThrottleMode.shaping())
.to(printlnSink)
.run(materializer);
But the this outbursts too many lines at a time and not one line at a time.
Any ideas how to fix it?
java akka akka-stream
add a comment |
I am trying to read from file line by line with some delay.
For example:
- read and print 1st line of the file
- wait 10 seconds
- read and print 2nd line of the file
- etc
So far I have tried something like this:
final Path filePath = Paths.get('path/to/file');
final ActorSystem system = ActorSystem.create();
final Materializer materializer = ActorMaterializer.create(system);
Sink<ByteString, CompletionStage<Done>> printlnSink =
Sink.<ByteString>foreach(chunk -> System.out.println(chunk.utf8String()));
final CompletionStage<IOResult> result =
FileIO.fromPath(filePath)
.throttle(1, Duration.create(10, TimeUnit.SECONDS), 1, ThrottleMode.shaping())
.to(printlnSink)
.run(materializer);
But the this outbursts too many lines at a time and not one line at a time.
Any ideas how to fix it?
java akka akka-stream
add a comment |
I am trying to read from file line by line with some delay.
For example:
- read and print 1st line of the file
- wait 10 seconds
- read and print 2nd line of the file
- etc
So far I have tried something like this:
final Path filePath = Paths.get('path/to/file');
final ActorSystem system = ActorSystem.create();
final Materializer materializer = ActorMaterializer.create(system);
Sink<ByteString, CompletionStage<Done>> printlnSink =
Sink.<ByteString>foreach(chunk -> System.out.println(chunk.utf8String()));
final CompletionStage<IOResult> result =
FileIO.fromPath(filePath)
.throttle(1, Duration.create(10, TimeUnit.SECONDS), 1, ThrottleMode.shaping())
.to(printlnSink)
.run(materializer);
But the this outbursts too many lines at a time and not one line at a time.
Any ideas how to fix it?
java akka akka-stream
I am trying to read from file line by line with some delay.
For example:
- read and print 1st line of the file
- wait 10 seconds
- read and print 2nd line of the file
- etc
So far I have tried something like this:
final Path filePath = Paths.get('path/to/file');
final ActorSystem system = ActorSystem.create();
final Materializer materializer = ActorMaterializer.create(system);
Sink<ByteString, CompletionStage<Done>> printlnSink =
Sink.<ByteString>foreach(chunk -> System.out.println(chunk.utf8String()));
final CompletionStage<IOResult> result =
FileIO.fromPath(filePath)
.throttle(1, Duration.create(10, TimeUnit.SECONDS), 1, ThrottleMode.shaping())
.to(printlnSink)
.run(materializer);
But the this outbursts too many lines at a time and not one line at a time.
Any ideas how to fix it?
java akka akka-stream
java akka akka-stream
asked Jan 2 at 9:10
AverageJoe9000AverageJoe9000
1078
1078
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
final CompletionStage<IOResult> result =
.via(Framing.delimiter(ByteString.fromString(System.lineSeparator()),10000,FramingTruncation.ALLOW))
FileIO.fromPath(filePath)
.throttle(1, Duration.create(10, TimeUnit.SECONDS), 1, ThrottleMode.shaping())
.to(printlnSink)
.run(materializer);
See if that works for you, framing Class documents should clarify
holy cow! thank you!
– AverageJoe9000
Jan 2 at 9:33
No problem! please accept the answer if that worked. happy new year
– Ulug Toprak
Jan 2 at 9:59
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54003712%2fhow-to-read-each-new-line-from-file-after-10-second-delay-with-akka%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
final CompletionStage<IOResult> result =
.via(Framing.delimiter(ByteString.fromString(System.lineSeparator()),10000,FramingTruncation.ALLOW))
FileIO.fromPath(filePath)
.throttle(1, Duration.create(10, TimeUnit.SECONDS), 1, ThrottleMode.shaping())
.to(printlnSink)
.run(materializer);
See if that works for you, framing Class documents should clarify
holy cow! thank you!
– AverageJoe9000
Jan 2 at 9:33
No problem! please accept the answer if that worked. happy new year
– Ulug Toprak
Jan 2 at 9:59
add a comment |
final CompletionStage<IOResult> result =
.via(Framing.delimiter(ByteString.fromString(System.lineSeparator()),10000,FramingTruncation.ALLOW))
FileIO.fromPath(filePath)
.throttle(1, Duration.create(10, TimeUnit.SECONDS), 1, ThrottleMode.shaping())
.to(printlnSink)
.run(materializer);
See if that works for you, framing Class documents should clarify
holy cow! thank you!
– AverageJoe9000
Jan 2 at 9:33
No problem! please accept the answer if that worked. happy new year
– Ulug Toprak
Jan 2 at 9:59
add a comment |
final CompletionStage<IOResult> result =
.via(Framing.delimiter(ByteString.fromString(System.lineSeparator()),10000,FramingTruncation.ALLOW))
FileIO.fromPath(filePath)
.throttle(1, Duration.create(10, TimeUnit.SECONDS), 1, ThrottleMode.shaping())
.to(printlnSink)
.run(materializer);
See if that works for you, framing Class documents should clarify
final CompletionStage<IOResult> result =
.via(Framing.delimiter(ByteString.fromString(System.lineSeparator()),10000,FramingTruncation.ALLOW))
FileIO.fromPath(filePath)
.throttle(1, Duration.create(10, TimeUnit.SECONDS), 1, ThrottleMode.shaping())
.to(printlnSink)
.run(materializer);
See if that works for you, framing Class documents should clarify
answered Jan 2 at 9:26
Ulug ToprakUlug Toprak
7851519
7851519
holy cow! thank you!
– AverageJoe9000
Jan 2 at 9:33
No problem! please accept the answer if that worked. happy new year
– Ulug Toprak
Jan 2 at 9:59
add a comment |
holy cow! thank you!
– AverageJoe9000
Jan 2 at 9:33
No problem! please accept the answer if that worked. happy new year
– Ulug Toprak
Jan 2 at 9:59
holy cow! thank you!
– AverageJoe9000
Jan 2 at 9:33
holy cow! thank you!
– AverageJoe9000
Jan 2 at 9:33
No problem! please accept the answer if that worked. happy new year
– Ulug Toprak
Jan 2 at 9:59
No problem! please accept the answer if that worked. happy new year
– Ulug Toprak
Jan 2 at 9:59
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54003712%2fhow-to-read-each-new-line-from-file-after-10-second-delay-with-akka%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown