100% found this document useful (3 votes)
292 views

Buy ebook (Ebook) Reactive Patterns with RxJS for Angular: A practical guide to managing your Angular application's data reactively and efficiently using RxJS 7 by Lamis Chebbi ISBN 9781801811514, 1801811512 cheap price

The document promotes various ebooks focused on reactive programming with Angular and RxJS, including titles like 'Reactive Patterns with RxJS for Angular' by Lamis Chebbi. It provides links to download these ebooks in multiple formats and highlights the importance of reactive programming in managing application data efficiently. The content is aimed at Angular developers seeking to enhance their skills in reactive programming.

Uploaded by

denniguedegy
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (3 votes)
292 views

Buy ebook (Ebook) Reactive Patterns with RxJS for Angular: A practical guide to managing your Angular application's data reactively and efficiently using RxJS 7 by Lamis Chebbi ISBN 9781801811514, 1801811512 cheap price

The document promotes various ebooks focused on reactive programming with Angular and RxJS, including titles like 'Reactive Patterns with RxJS for Angular' by Lamis Chebbi. It provides links to download these ebooks in multiple formats and highlights the importance of reactive programming in managing application data efficiently. The content is aimed at Angular developers seeking to enhance their skills in reactive programming.

Uploaded by

denniguedegy
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 65

Download the Full Ebook and Access More Features - ebooknice.

com

(Ebook) Reactive Patterns with RxJS for Angular: A


practical guide to managing your Angular
application's data reactively and efficiently
using RxJS 7 by Lamis Chebbi ISBN 9781801811514,
1801811512
https://ebooknice.com/product/reactive-patterns-with-rxjs-
for-angular-a-practical-guide-to-managing-your-angular-
application-s-data-reactively-and-efficiently-using-
rxjs-7-56374544

OR CLICK HERE

DOWLOAD EBOOK

Download more ebook instantly today at https://ebooknice.com


Instant digital products (PDF, ePub, MOBI) ready for you
Download now and discover formats that fit your needs...

Start reading on any device today!

(Ebook) Reactive Programming with Angular and ngrx: Learn to Harness the Power of
Reactive Programming with RxJS and ngrx Extensions by Oren Farhi (auth.) ISBN
9781484226193, 9781484226209, 1484226194, 1484226208

https://ebooknice.com/product/reactive-programming-with-angular-and-ngrx-learn-
to-harness-the-power-of-reactive-programming-with-rxjs-and-ngrx-
extensions-5880848

ebooknice.com

(Ebook) Reactive Programming with RxJS: Untangle Your Asynchronous JavaScript Code
by Sergi Mansilla ISBN 9781680501292, 1680501291

https://ebooknice.com/product/reactive-programming-with-rxjs-untangle-your-
asynchronous-javascript-code-5436056

ebooknice.com

(Ebook) Reactive Programming with RxJS 5: Untangle your asynchronous Javascript code
by Sergi Mansilla ISBN 9781680502473, 1680502476

https://ebooknice.com/product/reactive-programming-with-rxjs-5-untangle-your-
asynchronous-javascript-code-11056580

ebooknice.com

(Ebook) Essential Angular for ASP.NET Core MVC 3: A Practical Guide to Successfully
Using Both in Your Projects by Adam Freeman ISBN 9781484252840, 1484252845

https://ebooknice.com/product/essential-angular-for-asp-net-core-
mvc-3-a-practical-guide-to-successfully-using-both-in-your-projects-12113178

ebooknice.com
(Ebook) Build Reactive Websites with RxJS: Master Observables and Wrangle Events by
Randall Koutnik ISBN 9781680502954, 1680502956

https://ebooknice.com/product/build-reactive-websites-with-rxjs-master-
observables-and-wrangle-events-37324060

ebooknice.com

(Ebook) Practical Highcharts with Angular: Your Essential Guide to Creating Real-
time Dashboards by Sourabh Mishra ISBN 9781484291801, 1484291808

https://ebooknice.com/product/practical-highcharts-with-angular-your-essential-
guide-to-creating-real-time-dashboards-49162796

ebooknice.com

(Ebook) Practical Highcharts with Angular: Your Essential Guide to Creating Real-
time Dashboards, 2nd Edition by Sourabh Mishra ISBN 9781484291818, 1484291816

https://ebooknice.com/product/practical-highcharts-with-angular-your-essential-
guide-to-creating-real-time-dashboards-2nd-edition-47899344

ebooknice.com

(Ebook) Progressive Web Apps with Angular: Create Responsive, Fast and Reliable PWAs
Using Angular by Majid Hajian ISBN 9781484244470, 1484244478

https://ebooknice.com/product/progressive-web-apps-with-angular-create-
responsive-fast-and-reliable-pwas-using-angular-34622900

ebooknice.com

(Ebook) Learn With: Angular 4: Collected Essays: Angular CLI, Unit Testing,
Debugging TypeScript, and Angular Build Processes by Jeffry Houser

https://ebooknice.com/product/learn-with-angular-4-collected-essays-angular-cli-
unit-testing-debugging-typescript-and-angular-build-processes-6856786

ebooknice.com
Reactive Patterns
with RxJS
for Angular

A practical guide to managing your Angular


application's data reactively and efficiently
using RxJS 7

Lamis Chebbi

BIRMINGHAM—MUMBAI
Reactive Patterns with RxJS for Angular
Copyright © 2022 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or
transmitted in any form or by any means, without the prior written permission of the publisher,
except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the
information presented. However, the information contained in this book is sold without warranty,
either express or implied. Neither the author, nor Packt Publishing or its dealers and distributors,
will be held liable for any damages caused or alleged to have been caused directly or indirectly by
this book.
Packt Publishing has endeavored to provide trademark information about all of the companies
and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing
cannot guarantee the accuracy of this information.
Associate Group Product Manager: Pavan Ramchandani
Publishing Product Manager: Ashitosh Gupta
Senior Editor: Mark Dsouza
Content Development Editor: Divya Vijayan
Technical Editor: Shubham Sharma
Copy Editor: Safis Editing
Project Coordinator: Ajesh Devavaram
Proofreader: Safis Editing
Indexer: Rekha Nair
Production Designer: Alishon Mendonca
Marketing Coordinator: Elizabeth Varghese

First published: April 2022

Production reference: 2210422

Published by Packt Publishing Ltd.


Livery Place
35 Livery Street
Birmingham
B3 2PB, UK.

ISBN 978-1-80181-151-4

www.packt.com
To my father, who taught me diligence, perseverance, and work ethic. Thank
you for always being there to support me and lift me up.
To my mother, who taught me selflessness and doing things with love.
Thank you for your enduring encouragement during the writing of this
book.

To my brother and my sisters, for their continuous support.


-Lamis Chebbi
Contributors
About the author
Lamis Chebbi is a Google Developer Expert for Angular and an Auth0 ambassador.
She is an enthusiastic software engineer with a strong passion for the modern web. She's
the founder of Angular Tunisia, a member of the WWCode community, a speaker, a
content creator, and a trainer. She has been into Angular for the past few years and loves
to share her knowledge about Angular through participating in workshops and organizing
training sessions. ng-girls is one of the communities she supports. Empowering women
and students is one of her highest priorities. Besides Angular and the web, Lamis loves
music, traveling, chromotherapy, and volunteering. Last but not least, she's a forever
student.
I want to thank all the people that believed in me and supported me.
I am thankful for the people who helped me in the journey.
I am thankful for the people who inspired me in the journey.
About the reviewer
Dave Muellerchen is a freelancer. He loves sharing his self-taught knowledge of JavaScript
at meetups and conferences.
His passion for communities shows in his commitment to them. He is the organizer of
the Angular Hamburg Meetup and Tech Meetup Hamburg. He is also a team member
at the Angular conference in Germany (ng-de) and a Google Developer Expert for web
technologies. He streams developer content on Twitch.
Thanks to my wife, who has my back to do what I do. Thank you my sons, for the fun and the
distraction. And of course, thank you Lamis for your trust.
Anu Nagan G has worked in various corporate organizations starting from SaaS startup
[GenDeep], midsize [GAVS], Fortune 500 companies [DXC] playing various roles there
such as Technical Product Manager, Full Stack Product Lead [Angular, Java, Python,
AWS], Delivery Lead respectively in his 8 years of tenure. Currently, he is with Bounteous,
leading parallel projects such as Clinical mobile app development, Fintech marketing data
migration. Contributed to various AIOps products ZIF, Gcare in the past. He is an avid
reader, cinephile, who loves to play Guitar, makes short films with his friends.
I would like to dedicate this to my grandparents who are celebrating their 82nd anniversary,
to my wife and we are expecting. Happy birthday Hema.
Table of Contents

Preface

Part 1 – Introduction
1
The Power of the Reactive Paradigm
Technical requirements 4 The HTTP client module 7
Exploring the pillars of reactive The router module 8
programming  4 Reactive forms 13
Data streams 4 The event emitter  14
Observer patterns 5 The async pipe 15

Using RxJS in Angular and its Learning about the marble


advantages7 diagram – our secret weapon 15
Summary18

2
RxJS 7 – The Major Features
Technical requirements 20 The firstValueFrom() method 25
Exploring the bundle size The lastValueFrom() method 26
improvements  20 Empty errors 26

Reviewing the TypeScript typing Highlighting API consistency


improvements22 improvements27
Understanding the toPromise() Summary29
deprecation23
viii Table of Contents

3
A Walkthrough of the Application
Technical requirements 32 View five – the modify recipe interface 36
Our app's user stories 32 View six – the recipe details interface 37

View one – the landing page  32 Our app's architecture 38


View two – the new recipe interface 34
The components overview 38
View three – the My Recipes interface 35
View four – the My Favourites interface 36
Summary39

Part 2 – A Trip into Reactive Patterns


4
Fetching Data as Streams
Technical requirements 44 Exploring the reactive pattern
Defining the requirement  45 for fetching data 52
Exploring the classic pattern for Retrieving data as streams 53
fetching data 45 Defining the stream in your component 53
Using the async pipe in your template 54
Defining the structure of your data 45
Creating an Angular service 46 Highlighting the advantages of
Retrieving the data through a method 47 the reactive pattern 55
Injecting and subscribing to the service Using the declarative approach 55
in your component 47
Using the change detection strategy of
Displaying the data in the template 48 OnPush 56
Managing unsubscriptions 49 Wrapping up 58

Summary59

5
Error Handling
Technical requirements 62 Exploring error handling
Understanding the anatomy of patterns and strategies 63
an Observable 62 Handling error operators 64
Table of Contents ix

The catchError operator  64 Error handling in action  75


The delayWhen operator 72 Summary77

6
Combining Streams
Technical requirements 80 Exploring the declarative
Defining the requirement 80 pattern for filtering data 85
Exploring the imperative The combineLatest operator 86
pattern for filtering data 81 The declarative pattern pillars 87
Emitting a value when an action occurs 90
A look at the filter component 81
A look at the recipes list component 82 Summary94

7
Transforming Streams
Technical requirements 96 Learning about other useful
Defining the requirement 96 higher-order mapping
operators107
Exploring the imperative
pattern for autosave 97 The mergeMap operator  107
The switchMap operator  108
Exploring the reactive pattern
The exhaustMap operator  109
for autosave 100
Higher-order observables 101 Summary110
Higher-order mapping operators 101
The concatMap operator 102

Part 3 – Multicasting Takes You to


New Places
8
Multicasting Essentials
Technical requirements 114 Producer  114
Explaining Multicasting A cold observable  114
versus Unicasting 114 A hot observable  116
x Table of Contents

Exploring Subjects 118 Highlighting Multicasting


A plain Subject 119 operators123
ReplaySubject120 Summary123
BehaviorSubject  121

9
Caching Streams
Technical requirements 126 Exploring the RxJS 7
Defining the requirement 126 recommended pattern to
cache streams 133
Learning about using
the reactive pattern to Highlighting the use cases of
cache streams 127 caching streams 134
Summary135

10
Sharing Data between Components
Technical requirements 138 Step two – updating the last-selected
recipe140
Defining the requirement 138
Step three – consuming the
Exploring the reactive pattern last-selected recipe 142
to share data 139
Step one – creating a shared service 139 Highlighting other ways for
sharing data 144
Summary145

11
Bulk Operations
Technical requirements 147 The pattern in action 151
Defining the requirement 148 Learning about the reactive
Learning about the reactive pattern for tracking progress 156
pattern for bulk operations 149 Summary157
The forkJoin operator 150
Table of Contents xi

12
Processing Real-Time Updates
Technical requirements 160 Connection management 164
Defining the requirement 160 Putting the pattern into action 166

Learning the reactive pattern Learning the reactive pattern


for consuming real-time for handling reconnection 170
messages 161 Retrying the reconnection 172
The WebSocketSubject behavior 161
Summary173

Part 4 – Final Touch


13
Testing RxJS Observables
Technical requirements 178 Understanding the syntax 182
Learning about the subscribe Implementing marble tests 184
and assert pattern 178 Highlighting testing streams
Learning about the marble using HttpClientTestingModule 190
testing pattern 182 Summary192

Index
Other Books You May Enjoy
Preface
Switching to a reactive mindset is one of the biggest challenges when you start learning
Reactive programming using RxJS. I believe that the reactive mindset is gradually
achieved by learning reactive patterns and comparing the reactive way with the imperative
one to distinguish the difference and the benefits.
That's why I wrote this book, which gathers a set of reactive patterns applied in an
Angular application. Learning reactive patterns helps with managing your application's
data efficiently, writing clean and maintainable code, reacting to user changes faster, and
consequently, enhancing the user experience.
So, all that you have to do is get started!

Who this book is for


The book is for Angular developers who want to use RxJS to build reactive web
applications. This book assumes beginner-level knowledge of and experience with
Angular, RxJS, TypeScript, and functional programming concepts.

What this book covers


Chapter 1, The Power of the Reactive Paradigm, explains the fundamentals of Reactive
programming.
Chapter 2, RxJS 7 – The Major Features, focuses on the main improvements of RxJS 7.
Chapter 3, A Walkthrough of the Application, highlights the architecture and requirements
of the application that we will be building gradually.
Chapter 4, Fetching Data as Streams, explains the first reactive pattern for fetching data.
Chapter 5, Error Handling, details the error handling strategies and the reactive patterns
for handling errors.
Chapter 6, Combining Streams, explains the reactive pattern for combining streams.
Chapter 7, Transforming Streams, explains the reactive pattern for transforming streams.
xiv Preface

Chapter 8, Multicasting Essentials, focuses on the multicasting approach essentials.


Chapter 9, Caching Streams, explains the reactive pattern for caching streams.
Chapter 10, Sharing Data between Components, explains the reactive patterns for sharing
data between components.
Chapter 11, Bulk Operations, explores the reactive pattern for performing bulk actions.
Chapter 12, Processing Real-Time Updates, explores the reactive pattern for consuming
real-time updates.
Chapter 13, Testing RxJS Observables, explains the different strategies for testing reactive
patterns.

To get the most out of this book


All code examples have been tested using Angular 12 on a Windows operating system.
However, it should work with future releases too.

Please make sure you follow the prerequisites at https://angular.io/guide/


setup-local. The prerequisites include the environment setup and the technologies
needed in order to install and use Angular.
We also used the Bootstrap library to manage the application responsiveness. We used
primeng as a library of rich components and RxJS 7 as the reactive library, of course.
If you are using the digital version of this book, we advise you to type the code yourself or
access the code from the book's GitHub repository (a link is available in the next section).
Doing so will help you avoid any potential errors related to the copying and pasting of
code.
Preface xv

Download the example code files


You can download the example code files for this book from GitHub at https://
github.com/PacktPublishing/Reactive-Patterns-with-RxJS-for-
Angular. If there's an update to the code, it will be updated in the GitHub repository.
We also have other code bundles from our rich catalog of books and videos available at
https://github.com/PacktPublishing/. Check them out!

Download the color images


We also provide a PDF file that has color images of the screenshots and diagrams used
in this book. You can download it here: https://static.packt-cdn.com/
downloads/9781801811514_ColorImages.pdf.

Conventions used
There are a number of text conventions used throughout this book.
Code in text: Indicates code words in text, database table names, folder names,
filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles.
Here is an example: "In the try block, you place your risky statements, and inside catch,
you handle the possible exceptions."
A block of code is set as follows:

behaviourSubject$.subscribe({
next: (message) => console.log(message),
error: (error) => console.log(error),
complete: () => console.log('Stream Completed'),
});

When we wish to draw your attention to a particular part of a code block, the relevant
lines or items are set in bold:

behaviourSubject$.subscribe({
next: (message) => console.log(message),
error: (error) => console.log(error),
complete: () => console.log('Stream Completed'),
});
xvi Preface

Any command-line input or output is written as follows:

$ mkdir css
$ cd css

Bold: Indicates a new term, an important word, or words that you see onscreen. For
instance, words in menus or dialog boxes appear in bold. Here is an example: "Select
System info from the Administration panel."

Tips or Important Notes


Appear like this.

Get in touch
Feedback from our readers is always welcome.
General feedback: If you have questions about any aspect of this book, email us at
[email protected] and mention the book title in the subject of your message.
Errata: Although we have taken every care to ensure the accuracy of our content, mistakes
do happen. If you have found a mistake in this book, we would be grateful if you would
report this to us. Please visit www.packtpub.com/support/errata and fill in the
form.
Piracy: If you come across any illegal copies of our works in any form on the internet,
we would be grateful if you would provide us with the location address or website name.
Please contact us at [email protected] with a link to the material.
If you are interested in becoming an author: If there is a topic that you have expertise in
and you are interested in either writing or contributing to a book, please visit authors.
packtpub.com.
Preface xvii

Share Your Thoughts


Once you've read Reactive Patterns with RxJS for Angular, we'd love to hear your thoughts!
Please click here to go straight to the Amazon review page for this
book and share your feedback.
Your review is important to us and the tech community and will help us make sure we're
delivering excellent quality content.
Part 1 –
Introduction

In this section, you will understand the importance of using the reactive paradigm in
an Angular application, as well as the new features of RxJS 7. In the third chapter, we
will introduce the application that we are going to progressively build as we go through
the book.
This part comprises the following chapters:

• Chapter 1, The Power of the Reactive Paradigm


• Chapter 2, RxJS 7 – The Major Features
• Chapter 3, A Walkthrough of the Application
1
The Power of the
Reactive Paradigm
This book is based entirely on useful reactive patterns in Angular applications. Reactive
patterns are reusable solutions to a commonly occurring problem using reactive
programming. Behind all of these patterns, there is a new way of thinking, new
architecture, new coding styles, and new tools.
I know you are impatient to write your first reactive pattern in Angular, but before doing
that, and to help you take full advantage of all the RxJS patterns and leverage the reactive
paradigm, we will start by explaining, in detail, all the fundamentals. Additionally, we
will prepare the groundwork for the following chapters. First, let's start with a basic
understanding of the reactive paradigm, its advantages, and the problems it solves. And
best of all, let's get into the reactive mindset and start thinking reactively.
We will begin by highlighting the pillars and the advantages of the reactive paradigm.
Then, we will describe the relationship between Angular and RxJS. Finally, we will explain
the Marble diagram and why it is useful.
Giving an insight into the fundamentals of the reactive paradigm is incredibly important.
This will ensure you get the basics right, help you understand the usefulness of the reactive
approach, and consequently, help you determine which situation it is best to use it in.
4 The Power of the Reactive Paradigm

In this chapter, we're going to cover the following topics:

• Exploring the pillars of reactive programming


• Using RxJS in Angular and its advantages
• Learning about the marble diagram – our secret weapon

Technical requirements
This chapter does not require an environment setup or installation steps. All the code
snippets here are just examples to illustrate the concepts. This book assumes that you have
a basic understanding of Angular and RxJS.

Exploring the pillars of reactive programming


Let's begin with a little bit of background!
Reactive programming is among the major programming paradigms used by developers
worldwide. Every programming paradigm solves some problems and has its own
advantages. By definition, reactive programming is programming with asynchronous
data streams and is based on observer patterns. So, let's talk about these pillars of reactive
programming!

Data streams
Data streams are the spine of reactive programming. Everything that might change or
happen over time (you don't know when exactly) is represented as a stream, such as data,
events, notifications, and messages. Reactive programming is about reacting to changes as
soon as they are emitted!
An excellent example of data streams is UI events. Let's suppose that we have an HTML
button, and we want to execute an action whenever a user clicks on it. Here, we can think
of the click event as a stream:

//HTML code
<button id='save'>Save</button>

//TS code
const saveElement = document.getElementById('save');
saveElement.addEventListener('click', processClick);
Exploring the pillars of reactive programming 5

function processClick(event) {
console.log('Hi');
}

As implemented in the preceding code snippet, in order to react to this click event, we
register an EventListener event. Then, every time a click occurs, the processClick
method is called to execute a side effect. In our case, we are just logging Hi in the console.
As you might have gathered, to be able to react when something happens and execute
a side effect, you should listen to the streams to become notified. We can say listen or
observe to get closer to the reactive terminology. And this leads us to the observer design
pattern, which is at the heart of reactive programming.

Observer patterns
The observer pattern is based on two main roles: a publisher and a subscriber.
A publisher maintains a list of subscribers and notifies them or propagates a change every
time there is an update. On the other hand, a subscriber performs an update or executes a
side effect every time they receive a notification from the publisher:

Figure 1.1 – The observer pattern


So, to get notified about any updates, you need to subscribe to the publisher. A real-world
analogy would be a newsletter; you don't get any emails if you don't subscribe
to a newsletter.
6 The Power of the Reactive Paradigm

This leads us to the building blocks of RxJS. They include the following:

• Observables: These are a representation of the data streams that notify the
observers of any change.
• Observers: These are the consumers of the data streams emitted by observables.

RxJS combines the observer pattern with the iterator pattern and functional programming
to process and handle asynchronous events.
This was a reminder of the fundamentals of reactive programming. Remember, it is
crucial to understand when to put a reactive implementation in place and when to
avoid it.
In general, whenever you have to handle asynchronous tasks in your Angular application,
always think of RxJS. The main advantages of RxJS over other asynchronous APIs are
listed as follows:

• RxJS makes dealing with event-based programs, asynchronous data calls, and
callbacks an easy task.
• Observables guarantee consistency. They emit multiple values over time so that you
can consume continuous data streams.
• Observables are lazy; they are not executed until you subscribe to them. This helps
with writing declarative code that is clean, efficient, and easy to understand and
maintain.
• Observables can be canceled, completed, and retrieved at any moment. This makes
a lot of sense in many real-world scenarios.
• RxJS provides many operators with a functional style to manipulate collections and
optimize side effects.
• Observables push errors to the subscribers and provide a clean way to handle errors.
• RxJS allows you to write clean and efficient code to handle asynchronous data in
your application.

Now that we have given some insight into the reactive programming pillars and detailed
the major advantages of RxJS, let's shed some light on the relationship between Angular
and RxJS.
Using RxJS in Angular and its advantages 7

Using RxJS in Angular and its advantages


RxJS is a first-class citizen in Angular. It is part of the Angular ecosystem and is used in
many features to handle asynchronous operations. Primarily, this includes the following:

• HTTP client module


• Router module
• Reactive forms
• Event emitter
• Async pipe

We will discuss each of the following concepts in the subsequent subsections.

Note
We recommend taking a quick look at https://angular.io/docs.
Here, you can find further details about the features mentioned earlier.

The HTTP client module


You might be familiar with the HTTP client API provided by Angular in order to
communicate with your server over the HTTP protocol. The HttpClient service is
based on observables to manage all transactions. This means that the result of calling the
API methods (such as GET, PATCH, POST, or PUT) is an observable.
In the following code snippet, we have an example of an Angular service that injects
the HttpClient service and fetches data from the server using the HttpClient.
get() method:

Import { Injectable } from '@angular/core';


import { HttpClient } from '@angular/common/http';
import { Observable} from 'rxjs';
import { environment } from '@env/environment';
const BASE_PATH = environment.basePath;

@Injectable()
export class RecipesService {
constructor(private http: HttpClient) { }
getRecipes(): Observable<Recipe[]> {
return this.http.get<Recipe[]>(`${BASE_PATH}/recipes/search/
8 The Power of the Reactive Paradigm

all`);
}

The following is the content of the environment.ts file where we define the
basePath property of our backend:

export const environment = {


basePath: '/app/rest',
production: false
};

The getRecipes() method or, to be more accurate, the call to this.http.


get<Recipe>(`${BASE_PATH}/recipes/search`) returns an observable that
you should subscribe to in order to issue the GET request to the server. Please note that
this is an example of an HTTP transaction, and it is the same for all of the other HTTP
methods available in the API (such as POST, PUT, and PATCH)
For those familiar with promise-based HTTP APIs, you might be wondering, in this case,
what the advantages of using observables are.
Well, there are a lot of advantages but the most important ones are listed as follows:

• Observables are cancellable, so you can cancel the HTTP request whenever you
want by calling the unsubscribe method.
• Also, you can retry HTTP requests when an error occurs or an exception is thrown.
• The server's response cannot be mutated by observables, although this can be the
case when chaining then() to promises.

The router module


The router module, which is available in the @angular/router package, uses
observables in router events and activated routes.

Router events
The router exposes events as observables. The router events allow you to intercept the
navigation life cycle. The following list shows the sequence of router events:
• NavigationStart
• RouteConfigLoadStart
• RouteConfigLoadEnd
Using RxJS in Angular and its advantages 9

• RoutesRecognized
• GuardsCheckStart
• ChildActivationStart
• ActivationStart
• GuardsCheckEnd
• ResolveStart
• ResolveEnd
• ActivationEnd
• ChildActivationEnd
• NavigationEnd
• NavigationCancel
• NavigationError
• Scroll

Note
We recommend that you take a quick look at https://angular.io/
api/router/Event. Here, you can find further details about the events
and their order.

To intercept all the events that the router goes through, first, you should inject the
Router service, which provides navigation and URL manipulation capabilities. Then,
subscribe to the events observable available in the Router object, and filter the events
of the RouterEvent type using the rxjs filter operator.
This is an example of an Angular service that injects the Router object in the
constructor, subscribes to the router events, and just traces the event ID and path in the
console. However, note that you can also introduce pretty much any specific behavior:

import { Injectable } from '@angular/core';


import { Router, RouterEvent } from '@angular/router';
import { filter } from 'rxjs/operators';
@Injectable()
export class CustomRouteService {
constructor(public router: Router) {
this.router.events.pipe(
10 The Power of the Reactive Paradigm

filter(event => event instanceof RouterEvent)


).subscribe((event: RouterEvent) => {
console.log(`The current event is : ${event.id} |
event.url`);
});
}
}

You can filter any specific event by putting the target type. The following code example
only filters the NavigationStart event and traces the event ID and path inside the
console. However, you can also introduce pretty much any specific behavior:

import { Injectable } from '@angular/core';


import { NavigationStart, Router } from '@angular/router';
import { filter } from 'rxjs/operators';

@Injectable()
export class CustomRouteService {
constructor(public router: Router) {
this.router.events.pipe(
filter(event => event instanceof NavigationStart)
).subscribe((event: NavigationStart) => {
console.log(`The current event is : ${event.id} |
event.url`);
});

}
}

The majority of Angular applications have a routing mechanism. The router events change
frequently over time, and it makes sense to listen to changes to execute the side effects.
That's why observables are a flexible way in which to handle those streams.
Exploring the Variety of Random
Documents with Different Content
Eleinte zöld mezőn jártam, a hol fehér tojásokból pici libácskák,
kacsák ugrottak ki és mohón enni kezdték a zöld füvet.
A felhők nagyon fehérek voltak és egészen közel ereszkedtek a
fákhoz, a melyek lilásszirü virágok terhe alatt reszkettek.
Mentem, mendegéltem a mezőn.
A libuskák száma mindig több lett, a felhők mind közelebb jöttek,
– és én nagyon könnyünek, fiatalnak éreztem magam.
Még daloltam is álmomban egy régi dalt, a melyhez, sajnos,
hiányzott a hárfakiséret.
IX. FEJEZET.

Merre jár Riminszky?


Ancsurka naplóját Riminszky Kázmér találta meg a nizsderi
várban, akkor, a midőn Ancsurka már régen nem volt ott.
Egyszerre eltünt Ancsurka a várból.
Hová lett, merre ment – senki sem tudta.
A várkisasszony vállat vont, a mikor Riminszky Ancsurkáról
tudakozódott.
– Megszökött a kis pesztra, mert unatkozott. Itt nem igen voltak
mulatságok.
Riminszky csóválta a fejét.
– Ejnye, ejnye, a macska rugja meg, – mormogta magában. –
Nem is hittem, hogy valamikor meg fogom kérdezni, hová lett
Ancsurka?
Wart Erzsébet figyelmesen nézett Riminszky arcába.
– Bolond dolog volna, Riminszky, ha magában mást gondolna,
mint a mit hangosan mond.
A szemével hunyoritott és szürke szemét Riminszky arcába
kapcsolta, mintha mindent egyszerre ki akart volna olvasni a férfi
lelkéből.
– Igen bolond dolog volna, – mormogta, – ha egy szolgáló
leányka olyan nagyon érdekelné.
Riminszky magasszáru csizmájára nézett és keservesen
fölsóhajtott:
– Kutya mája! Szerettem a macskáját.
Erzsébet elnevette magát.
– Hiszen ha csak macskája lett volna! Igen kedves arcocskája
volt… De hát unta magát. Hiába, elunta magát és bucsut mondott a
várnak.
Riminszky egy darabig hallgatott és magában gondolkozott. A
manó tudja, igen rossz kedve volt, de maga sem tudta, hogy miért.
Nem is nagyon sokáig időzött Nizsderen. Hamarosan bucsuzott és
gyorsan sietett le a várból. A hó már elolvadt és a hegyek között
langyos tavaszi szelek bujkáltak. A hegyoldalak világoszöld ruhába
öltözködtek és a fenyőfák kemény burkolata alatt megmozdultak a
rügyek.
Riminszky csöndesen ügetett zsufa-lován a hegyek között. Addig
soha sem vette észre az évszakok változását. Télen rövid
macskabundát hordott, nyáron szalmakalapot tett a fejére. Hogy a
hegyoldalakban a fű kiüti fejecskéjét, az véleménye szerint a
birkáknak volt jó. De Riminszky hust evett és hozzá bort ivott.
Most mégis meghatotta a langyos szél, a mely arcába fujt és a kis
bokrok szines rügyeikkel a legkülönösebb gondolatokat ébresztették
lelkében. Igy például arra gondolt, hogy halottak feküsznek a föld
alatt, a kik már nem látják az évszak változását. Odalenn feküsznek,
mélyen a füvek alatt és kezük összefonva. A szél elsuhan fölöttük és
talán azt sem tudják, hogy fölöttük a földön gyermekek, nők és
férfiak járnak. Odalenn a nagy csöndességben nem járnak az álmok,
nem járnak a sóhajtások; se az örömök, se a bánatok. Kavaczky se
iszik már bort és Pogrányi valahol messze, egy német temetőben
csöndesen fekszik. Csupán az élőket érdekli az, hogy ők már
meghaltak s innen elmentek.
Riminszky ur nem igen volt filozófus és a gondolatai, zsufa-lova
hátán, addig kalandoztak a földalatti állapotokon, a mig mélységesen
elszomorodott. A halált csak annyiban ismerte, mint a legtöbb ember
ismeri: meghaltak szomszédjai, ismerősei és többé nem mozogtak.
Még csak a korcsmába se ment el senki, miután a lábát kinyujtotta
és a föld alól semmi hir nem érkezett azokról, a kik ottan
bekvártélyozták magukat.
Riminszky urat is csupán annyiban érdekelte a halál, hogy juh-
nyájait nem viheti magával.
Hogy lesz-e szolgája, háza és gazdaasszonya a másik világon,
erre nem gondolt; csak az fájt neki, hogy az árva tótleánykáról nem
fog tudni semmit.
Utközben érte a lipovnicai barát-kolostort.
A régi kolostor körülbelül négyszáz esztendeje őrizte a hegyek
között kanyargó országutat széles bástyáival és mogorva tornyaival.
A barátok, a kik itt laktak, éppen ugy tudták forgatni a kardot, mint
az olvasót. Egyszer a magyar hazáért verekedtek, másszor a lengyel
királyok szolgálatába szegődtek, majd, – ha nagyon fölhalmozódott a
puskaporuk, – a saját szakállukra kezdtek valami háborut a szepesi
gróffal, vagy valamelyik lengyel vajdával. A kolostorban csak akkor
kezdtek unatkozni, a mióta a pápa külön brévében megtiltotta, hogy
fegyvert tartogassanak a lipovnicai klastromban.
A pápa még Lipovnicán is pápa. A fegyveres kamarák kiürültek és
a puskaporos hordók helyén más hordók foglaltak helyet. Ezekben a
hordókban is puskapor volt, csakhogy folyékony alakban. A lengyel
és a magyar uraságok, a kik még kétszáz esztendő előtt is hadaikkal
támadtak a barátokra, ha kincseik megszaporodtak, most sem
kerülték el a zord falakat. A kapu száz esztendő óta nyitva volt
állandóan és csupán a hagyományok iránt való kegyeletes szokásból
silbakolt a kapualjban két lipovnicai tót, hosszu lándzsájára
támaszkodva. A kapu alatt a kis fülkében a legvénebb barát olvasta a
breviárumot, – mert a legvénebb barát ismerte már mindazokat, a
kik a kolostort meg szokták látogatni.
A kapufülkéből egy csengetyü drótja vezetett a pincemester
szobájába.
Ez a csengetyüdrőt jelezte, hogy milyen kaliberü vendég érkezett
a kolostorba.
Egyszeri csöngetés amolyan szegény vándorlólegény érkezését
jelentette, a ki hálás köszönettel öblitette le torkán az ut porát
csigerrel. A dupla csengetés már urakat jelentett, a kiknek ebédet
vagy vacsorát szoktak főzni a vendégszerető barátok. Háromszor
csak a püspöknek – ha éppen erre járt – csengetett a kapus;
azonkivül Riminszky urnak, a ki ezen a környéken a legelső
földesuraság volt. Talán még az országut is Riminszky uré volt. A
barátok megbecsülték az uraságot, de tisztelték Riminszkyben azt is,
hogy a borokat szakértelemmel kezelte.
Háromszor csenditettek most is, a mikor Riminszky ur lován
bekanyarodott a kolostor kapuján és az álmos páterek
megdörzsölték a szemüket.
– Azt hittük, hogy már sohase jön hozzánk nagyságod, – mondta
a kapus fráter alázatosan.
A silbakok tisztelegtek – hosszu dárdájukat kétszer a kövezethez
koppantották – fönn pedig a pincemester a legrozsdásabb
lakatkulcsokat kereste elő.
Azokat a rozsdás kulcsokat, a melyeket csupán nagy ünnepeken
szoktak használatba venni; a mely lakatok mögött olyan borok
voltak, a mely borokat még Mária Terézia ajándékozott a hazafias és
jómagaviseletű kolostornak.
Tehát háromszor csengettek és a barátok erre a jelre
valamennyien fölébredtek.
Mindössze öten lakták az óriási épületet, a hol egy ezred
katonaság is bátran elfért volna. Öt nagyszakállu, szótalan és komoly
férfiu gyülekezett össze az ebédlőteremben, – mert éppen délre járt
az idő.
De ha nem lett volna dél, akkor is összegyülekeztek volna, mivel
sohasem lustálkodtak akkor, ha a kolostorban háromszor csöngettek.
A pincemester egy kis hordót guritott a bolthajtásos szobába és
tiszteletteljesen mormogta:
– Istenben boldogult páter Szuhaj följegyzése szerint ezt a bort
Tokajban szüretelték az 1822-ik esztendőben.
A nagyszakállu fejek erre mind bólintottak, Riminszky pedig
kigombolta macskabőr bekecsét.
– Tokajban, – mondták csendesen.
A sarokban egy kerekeken mozgó állvány állott – kovácsolt vasból
– a mely állvány már igen sok hordó bort tartott vaslábain. Ezen az
állványon végezték ki a hordókat a kolostor lakói már sok
százesztendő óta és ez állványról még sohasem került le addig
hordó, a mig benne egy csöppecske folyadék vala.
A pincemester – bizonyos Hubennai volt éppen a pincemester –
hatalmas karjaival fölemelte a hordócskát és az állványra tette.
A falon különböző csapok függtek egymás mellett. Volt ott
félméteres csap is, a melyet tizakós hordókhoz használtak, de volt
olyan kicsinyke csap is, a mely éppen csak egy kis pálinkás
hordócskába illett.
A pincemester egy ezüstcsapot vett le a szögről és hamarosan a
hordóba illesztette.
A pincemester megeresztette a csapot és aranyszinü nedv
csurgott a hordócskából a kristálypohárba.
A poharat áhitattal vitte az asztalfőn ülő páter Timoteuszhoz, a ki
ez idő szerint perjele volt a kolostornak.
Nagy, mély ember volt Timoteusz atya, a szakállát, haját
behavazta az idő, de arca rózsaszinü volt, mert mindig bort ivott és
nem vizet.
A perjel kezébe vette a poharat, a világosság felé tartotta és
szakértő szemmel vizsgálta.
A pincemester a hordóra vert ezüstlapról kibetüzte ezalatt a
fölirást:
– A Kállay-donációból…
A perjel ajkához emelte a poharat és csendesen hörpintett belőle.
Megforgatta szájában a bort és aztán csettintett nyelvével:
– Ez a bor az aranykorból való. A mikor kétszer szüreteltek a
hegyalján, – mondta.
És az atyák áhitatosan néztek a hordócska felé.
Riminszky helyeslőleg bólintott a fejével.
– Holnap a lipovnicai tanyámról tizenkét juhot hajt be a
juhászgazdám a kolostor udvarára.
Az atyák ismét bólintottak.
Áhitatos csend volt, a pincemester a csöndben megtöltötte a
poharakat.
– Georgius atya, üsd föl az Aranykönyvet, a melyben boraink
története foglaltatik. Halljuk e hordócska történetét.
Georgius atya álmatag, szőke férfiu volt, fölállt az asztaltól és
midőn visszatért, egy nagy, rézkapcsos könyvet hozott magával.
Lapozgatott a könyvben és mialatt az atyák a bort megizlelték,
csendes, imádkozó hangon olvasni kezdte a következőket:
– Kállay donáció. Tizenkét hordócska dupla hegyaljai asszú.
Hajdani jó Rákóczi Ferenc idejében kuruc kapitány volt Kállay
János.
Mikor megszólalt a tárogató, menyecskefelesége nem hogy
tartóztatta, de küldte:
– Eredj, apámuram, aztán kerülj haza épen, egészségesen.
Mentek, mentek a magyar urak a Rákóczi táborába, mintha
valami mulatságba mennének. A legjobb ruhájukat vették föl, a
legszebb kucsmájukat nyomták a fejükbe.
Kállay János uram gyönyörü szál legény volt. A kasmirvörös ruha
megfeszült rajta, mintha szobor volna. A fejedelem nem is engedte
el maga mellől, ott tartotta udvari vitéznek. Hogy pedig el ne unja
magát Kállay uram az udvari életben, elhozatta Tiszahátról az
agarait. A menyecske nem tudta mire vélni, hogy mit akar az ura az
agarakkal.
– Tán csak nem agárral kergeti a labancot, apámuram? – kérdé
levelében az urától.
De hát Kállay János uram erre a levélre már nem küldött
feleletet. Nem azért, mintha nem lett volna érkezése a levéliráshoz.
Csak azért nem, mert röstelte bevallani a felesége előtt, hogy a
zajgó tábori élet helyett a vig, tétlen udvari életet választotta.
Hónap hónap után mulott. A menyecske odalenn Tiszaháton már
el sem tudta gondolni, hogy mi történt az ő drága urával, mikor
végre levelet hozott egy vén huszár Kállay Jánostól. A levélben
érzékeny bucsut vett a kapitány Erzsikétől és megirta, hogy a
fejedelem parancsára Párisba utazik. Ki tudja, mikor kerül onnan
vissza?…
A menyecske megcsóválta a fejét:
– Ha a fejedelem parancsolta, akkor jól parancsolta, – gondolta
magában, de azért a szive összeszorult a fájdalomtól, szomoruságtól.
Most már nemcsak a hónapok multak, hanem az évek is. A
tiszaháti vén udvarház jegenyefái háromszor is uj ruhába
öltözködtek, tél jött őszre, tavaszra nyár. A szép Kállayné egyszer
reggel a tükör előtt állva azon vette magát észre, hogy hollóhajába
ezüstszálakat rakosgatott titkon az idő. És Jánosról most már hir sem
érkezett.
– Könnyü a nagyságos fejedelemnek türelemmel várni az uramra,
– gondolta sokszor szomoruan az árva menyecske, – de vajjon hol
találjam én föl a türelemnek a forrását?
Az atyafiak ellátogattak hozzá és fejcsóválva vigasztalták:
– Ha élne, már régen itthon volna… Elpusztult János valahol a
nagy idegenben. Busulhatunk érte!
A menyecske hallgatta egy darabig az atyafiakat, de utóljára
megunta őket.
– Busuljon az ördög! – pattant föl végül. – Elmegyek az után a
pernahajder után és hazahozom a fülénél fogva.
Könnyü volt azt mondani, de nehezebb keresztülvinni. Páris
akkortájt se volt egy macskaugrás ide, de még két macskaugrás
sem. Ha a véletlen nem jő Kállayné segélyére, tán még ma is csak a
cipellője sarkát kopogtatja a fel s alá való sétálgatásban a kuriában.
De a véletlen jó barát. Egy vén kuruc barát került a környékre, a ki
anekdotával és imádsággal tartotta a kedvet a kuruc seregben.
Elvitte a jobb karját valami bolond golyó. Ott kellett hagynia a
sereget. Hivták pedig a vén barátot fráter Homolainak.
Homolai fráter ne tudta volna, hol van Páris? A barátok abban az
időben többet tudtak, mint manapság a püspökök. Hisz bejárták az
egész világot hajdanában…
Fráter Homolai odaszegődött a Kállayné szolgálatába.
Csavargatta rőfös szakállát:
– Csak bizza rám, nemzetes asszony, előkeritjük a kapitány urat a
föld alól is.
Egy nagy batárt fölpakkoltak. Kállayné elbucsuzott a virágzó
nyárfáktól s elindult ura keresésére. Homolai lóháton ballagott
nyomába.
Messze van Páris Tiszaháttól, de ha még olyan messzire lett
volna, akkor is odaért volna Kállayné. Odaért a nagy, idegen városba
és elkezdte keresni az urát.
A harmadik napon Homolai fráter, mikor a keresésből hazakerült
a szállásra, azt mondta:
– Megvan ám ő kelme!
Kállayné fölugrott:
– Hol van?
A barát csóválta a fejét:
– Egy kis baj van ám!… Ő kelme igen nagy ur lett. A francia király
gárdistája. Már magyarul is elfelejtett félig-meddig.
Kállayné fenyegetőleg vonta össze szemöldökét
– Majd eszébe juttatom én neki a magyar szót! – mormogta.
Homolai csak a fejét rázta:
– Nehéz lesz az!
De másnap reggel elvezette a menyecskét Kállay János
szállására. Aztán hagyta egyedül menni az asszonyt előre, ő maga
szépen hátul maradt.
Hogy történt, miképp esett meg a házaspár találkozója, arról nem
mesél a régi irás, csak annyi bizonyos, hogy Kállay János uram
csakhamar otthagyta a francia király udvarát. Haza költözött
Tiszahátra és késő öregségében derülten mesélte pipaszó mellet:
– Egyszer Párisban igy szólt hozzám Lajos király: Komám, jó
volna holnap vadászni menni…
A mult – a huncutkodó mult – igy oszolt szét köddé az ő
szemében is.
És Kállay Jánosné sem feledkezett meg a barátról. Tizenkét hordó
asszubort küldött a lipovnicai kolostornak, ahová Homolai fráter
öregségében elvonult…
Eddig tartott a történet.
Georgius atya becsapta a könyvet és a pohár után nyult.
A perjel igy szólt ünnepélyes hangon:
– Fráter Homolai emlékezetére!
Ivott és az atyák vele ittak. A nagy félhomályos ebédlőben halk
csengéssel szálltak vissza a poharak a diófaasztalra.
Riminszkynek kipirosodott az arca a pompás italtól.
– Tiz öl fát hoznak holnap az erdőmből a kolostor udvarába –
mondta.
Az aranykorból való asszu, a mely szinte csengve ereszkedett
belé a finom kristálypoharakba, mintha folyékony érc lenne,
hamarosan megtette hatását. Az álmos, mozdulatlan atyák lassan
kihuzogatták mind a két kezüket a bő szőrcsuhából, sőt egyik-másik
mezitelen karjával az asztalra könyökölt.
Riminszky nagy fejét lehajtotta és komor arccal nézte a bort.
Igen rossz gondolatok kergetőztek a fejében. Mindenféle asszonyok
árnyékai szálltak keresztül kristálytiszta boron. Mindig más és más
figurák.
És akkor, a midőn páter Georgius, az ábrándos, egy sötét
diófaszekrényből karhosszuságu fuvó hangszert vett elő, a melybe
csendesen belefujt, Riminszky az asztalra hajtotta a fejét.
De az atyák többsége sem igen maradt nyugodtan, a midőn ez a
hangszer megszólalt. A nagy, kemény koponyák koppantak a diófán,
a kezek ökölbe szorultak és a pincemester fráter olyan mélyen
nyomta a csapot a hordócskába, hogy ez szinte feljajdult belé.
Georgius egy Rákóczi-korból itt maradott tárogatót fuvott. És a
falak visszhangozták a tárogató hangját.
– Rákóczi járt erre, – mondotta egy nagyszakállu vén barát.
A hangszer még azon időkből való volt, a mely időben Rákóczi
Ferenc járt erre.
Erre járt volt és a hangszert itt felejtette.
Egy zivataros téli éjjelen történt, hogy Rákóczi Ferenc,
Magyarország és Erdély nagyfejedelme kopogtatott a határszéli
kolostor kapuján.
A vándorlónak a vendégszerető barátok kaput nyitottak és midőn
a vándorló sarkantyus csizmáit elnyujtotta a tüz mellett, a barátok
ilyen kérdéssel fordultak hozzá:
– Mondd, vándor, merről jösz? Lengyelországból vagy
Magyarországból?
– Magyarföldről, – felelt a vándor.
– Mi hir magyarföldön? Lesz-e szabadság, él-e még Rákóczi?
– A szabadság meghalt és vele hal Rákóczi! – felelt a vándorló.
A barátok megcsóválták a fejüket.
– Ugyan honnan tudnád te azt, szegény vándorló? A szabadság él
és Rákóczi Ferenc még mindig uralkodik Magyar- és
Erdélyországokban.
A vándorló erre elnevette magát.
– A bujdosó, a ki itt előttetek ül, senki más, mint Rákóczi Ferenc.
A derék barátok persze nem nagyon adtak hitelt ennek a
beszédnek.
Igen csóválgatták a fejüket, a mig az éjjel folyamán megérkezett
a fejedelem kisérete, néhány válogatott kuruc vitéz, a kik
menekülésközben valahol Késmárk táján verekedtek labanc-
katonákkal.
Csupa párducbőrkacagányos, sárgacsizmás vitéz, a kiknek vékony
kis bajuszuk hetykén fel volt pederve és a szemük sötéten lobogott.
A vitézek között volt egy olyan is, a melyik a fuvószerszámot
kezelte.
Ez keresztbevetett lábbal a földre ült a medvebőr-kanapé mellett,
a melyen a fejedelem hevert és halkan fujdogálni kezdte…
Valami véletlen folytán a fuvó-hangszer ott maradott a
kolostorban, a mikor az éji vendégek hajnalhasadáskor tovább
mentek.
Rákóczi Ferenc hálából évek mulva egy szekér bort küldött a
vendégszerető barátoknak hegyaljai pincéjéből, a mely bort a
barátok békésen elfogyasztottak.
Azonkivül mindig akadt valaki, a ki a régi szerszámot meg tudta
szólaltatni, hol egy fráter, hol egy páter, – a tárogatón kivül másféle
zenét nem igen hallottak a lipovnicai kolostorban.
Most is azt fujta a szőke szakállu barát és már mint ilyenkor
szokás, a kezek ökölbe szorultak, az arcok kipirultak és a szemek
felragyogtak.
– Más világ van, – sóhajtott a perjel. – Hagyj föl a muzsikával.
Riminszky, a ki eddig nem igen avatkozott a dologba, most
öklével az asztalra csapott:
– Tiz akó bort küldök a kolostornak, mert, becsületemre,
megérdemlitek.
A legöregebb fráter – volt valami kilencvenesztendős – ilyen
alkalmakkor el szokta hagyni a kapufülkét. Ugyan, csak nem jut
eszébe a szepesi püspöknek éppen erre járni?
Ott ült az öreg és reszkető fejjel bólongatott a melódiákra, a
melyek az ölesvastagságu falak között felhangzottak. A poharat sem
vetette meg ezenközben s egyszer Riminszky ur füléig hajolva igy
talált szólani:
– Mi ugyan csupán Istennek egyszerü szolgái vagyunk itt
Lipovnicán, de az országut erre elviszen és mindent tudunk, a mi a
környéken történik.
– Mi történik, tisztelendő testvér? – kérdezte Riminszky.
A vén fráter öreg szemével hamiskásan hunyoritott.
– No, a nizsderi várban is történik néha valami! Ha nem csal
horoszkópom, lovad éppen a nizsderi magaslatokról érkezett ide
veled…
Riminszky ur, – mert hiszen nem tagadhatta, – beleegyezőleg
bólintott.
– A napokban, – folytatta a vén barát, – a régi kalitkából egy
madárka röppent ki. Erre járt Lipovnica felé, a midőn a kolostorban
éppen Ave Máriát harangoztak. Egy kis madárka jött Nizsder felől és
az országut néptelen és elhagyott volt.
Riminszky visszafojtott lélekzettel hallgatott.
A vén barát megnedvesitette öreg ajkát. A bornak egy részét
bizony már csupán nyelvével kellett összeszedegetni ajkai körül, a
hová az kifolyt.
Csettintett a nyelvével s igy folytatta:
– A kapu alatt éppen Fintor a podolini susztermester melegitette
belső részeit, mert megfázott a hosszu utban. Ott kocintgattam vele
e szent kolostor nevében, a mikor a madárka az országuton
közeledett. Sárga vászonruha volt rajta és uszályát fölemelte
kezével, a mint sietve lépegetett.
– Nos? – kérdezte Riminszky és eltolta a poharát.
– Erre jött és megállott a kolostor előtt. Mint mikor a lengyel urak
hushagyó keddjén bolondos ruhákba öltözködve szánkáznak vagy
lovagolnak errefelé, olyanféle maskurája volt a leányzónak, még
mondtam is neki: hushagyó messze van, galambom.
Riminszky türelmetlenül intett:
– Mindegy az.
– Fehér, lisztes paróka a fején, a lábán aranysarku cipő.
Szuhinka, a lőcsei gyolcsos, a ki éppen itt etetett a kolostor előtt,
ugy rámeresztette a szemét, hogy szinte kipottyant a szeme. Mert
különben igen takaros fehércseléd volt.
– Mindegy az, – türelmetlenkedett Riminszky.
De észrevette, hogy bolondot mondott, azért hozzátette:
– Azaz, hogy nem egészen mindegy. Meséld tovább, fráter, merre
ment az aranycipős kisasszony?
– Bizony az nem messzire ment, csak a kőpadig, a mely a
kolostor előtt van, ott fáradtan leroskadt, mintha messzi utról jött
volna. Szuhinka uram nyomban beszélgetésbe eredt vele, magam is
oda-odafigyeltem, mert más gondom nem igen volt akkor.
– Honnan jösz? – kérdezte Szuhinka uram a maskarás
kisasszonytól.
– Szolgálatban voltam idáig, de az urnőm elkergetett.
Szuhinka uram csóválta a fejét.
– Ejnye, ejnye, hát aztán ebben a ruhában szolgáltál?
– Ebben, – felelt a kisasszonyka. – Mert az urnőm igy szerette.
– Hát mostan hová mégy? – kérdezte Szuhinka.
– Toporcra mennék, mert ott van egy öreg néném.
– Hát akkor ülj föl a szekeremre, éppen arra megyek.
– Nem sokára el is indultak. Szuhinka uram a kisasszonykára
teritett egy vastag pokrócot, aztán elmentek. Sokáig nevettem
magamban, hogy aranysarku cipőben volt szolgálatban a kisasszony.
Riminszky elgondolkozott.
– Ismerem azt a fránya Szuhinkát, – mormogta, – szép leánynak,
menyecskének mindig szivesen ad helyet a szekerén.
Nem igen izlett neki a bor többé, a tárogatót se hallgatta már
szivesen, csakhamar elbucsuzott a vendégszerető kolostortól és
lovára ült.
Lipovnicáról Cservenka felé vette az utját.
Ott a falusi csárdában hallotta, hogy a Szuhinka vásáros szekere
erre járt és a szekeren ott ült a pokrócba burkolt leány. Szuhinka
szokás szerint megpihent a korcsmában és vöröshagymát evett,
hozzá pálinkát ivott.
Mizsonyai Pál, a korcsmáros észrevette a leányt a szekéren.
– Szép portékát árulnak a krakkói vásáron, – mondta évődve. –
Nagyon ügyes emberek az ottani mézeskalácsosok, hogy ilyen helyre
babákat csinálnak.
Szuhinka uram vállat vont és nem igen felelt.
Mizsonyai tovább évődött.
– Csak arra vagyok kiváncsi, hogy kinek vette Szuhinka uram ezt
a kékszemü mézesbabát. Magának-e, vagy másnak?
Szuhinka lustán vállat vont.
– Nekem van otthon feleségem. Mit csinálnék a mézesbabával?
Látszott rajta, hogy igen nagyon sajnálja, hogy otthon felesége
van.
Riminszkyt lehangolták a Cservenkán hallott hirek. A macska
tudja, miért, legjoban azt szerette volna hallani, hogy a lőcsei
gyolcsos eltörte közben a lábát.
Estére érkeztek Primókára, a mint Riminszky később megtudta.
Szuhinka mindenáron tovább akart utazni, mert holdvilágos éjszaka
volt, de fölhagyott szándékával, a mikor meghallotta, hogy a
napokban erre felé látták csavarogni Jánosikot, a havasi rablót.
– No, akkor itt maradunk, – dörmögte a leánynak, – mert se a
portékámat, se téged nem szivesen adlak a Jánosik fogára.
A leányka a korcsmáros feleségével aludt, mig Szuhinka uram a
szekerén maradt és szokása szerint egész éjjel fűtyülgetett.
Mondják, hogy álmában éppen ugy fütyült, mint ébren. Igy nem igen
lehetett sohasem tudni, hogy mikor alszik az élelmes kalmár.
Hajnalban már utra keltek. A nagy szekér tovagurult a primókai
mély hegyi uton.
A vizsnyai vendégfogadóban, a mely körül három országut
keresztezi egymást, délfelé érkezett Szuhinka uram a szekerével.
Éppen egy csomó lengyel és szepesi gyolcsos tanyázott az ivóban.
Vásárokról jöttek, vásárokra mentek: nagy volt a kedvük, a pohár
feneke sürün kopogott az ivó asztalán.
Szuhinkának nagyon megörültek.
A lőcsei gyolcsosnak mindig volt valami vidám tréfa, pajkos
bolondság a tüszőjében. Ancsurkát a szekéren hagyta a nagy
vasládák között és meghagyta neki, ha egy tejszemü embert lát a
szekér körül ólálkodni, akkor lármát csapjon, mert a tejszemü ember
senki más, mint a hires Jánosik, vásárosok fosztogatója.
Mi történt, mi nem történt az ivóban, azt nem igen kell
hosszadalmasan elmondani. A lengyel és szepesi gyolcsosok nagyon
megörültek egymásnak. Ölelkeztek, csókolóztak és iddogáltak.
Özvegy Susákné, a fogadó tulajdonosa egy öles termetü asszonyság,
egymásután hordta ki az ivóból a végképpen elázott vendégeket. A
szinben szalma volt a földre szórva, odafektette az ital legyőzöttjeit.
A legutolsók között volt Szuhinka uram is.
Midőn egy-két óra mulva magához tért, a szekerét megtalálta, de
a szekérről hiányzott az aranycipős kisasszonyka.
Riminszky izgatottan hallgatta a történetet:
– Nos, elment magától, vagy elvitte valaki? Mit gondolsz
Susákné?
Susákné a Riminszky arcába nézett:
– Én eddig nem gondoltam semmit. De most már azt gondolom,
hogy a ki után ilyen nagyságos ur tudakozódik, mint te vagy
Riminszky ur, annak bizvást lehet aranyból a cipellője sarka.
– Ne bolondozz – felelt csendesen Riminszky. – Öreg legény
vagyok már. Tisztára annyi az egész, hogy megigértem valakinek,
hogy nem hagyom el ezt az árva gyereket… Gondolkozz, Susákné,
nem bánod meg, hogy hová lehetett az a kisasszonyka?
A termetes asszonyság összeráncolta a homlokát.
– Sok ember megfordult itt. Honnan a manóból tudnám én
valamennyinek a szándékát? Egyik jó szándékkal van, a másik rossz
szándékkal. Még az is meglehet, hogy valaki ellopta a kisasszonyt.
Igen értékes kék szeme volt, a mint egy pillanatra láttam. Legalább
is annyit ér a szeme, mintha rubintból lett volna.
Riminszky rosszkedvüen hallgatta ezt a beszédet.
Estére, a mikor Podolinba ért, már olyan haragos volt, hogy
kezében maradt a szobájának a kilincse, a midőn oda benyitott.
Az öreg Mik, a ki gazdája körül forgolódott, felemelte a földről az
eltört kilincset és megnyugtatólag mondta:
– Nem baj az, nemzetes uram. Reggelre ujra a helyén lesz a
kilincs. Még pedig olyanformán lesz a helyén, hogy onnan többé le
nem törheted.
Riminszky a medvebőrre dobta magát és valami különös
ellágyulással nézte az öreg szolgát, a ki csizmájába kapaszkodott.
– Tudod-e, mi történt, öreg Mik? Nyisd ki a füled, öreg! Ellopták a
kis Ancsurkát.
Mik eleresztette a csizmát és a szája tátva maradt.
– Kinek kellett a mi Ancsurkánk? – kérdezte nagy megilletődéssel.
– Ugyan kinek fájt rá a foga?
– Mit tudom én, – dörmögte Riminszky. – Csak annyi bizonyos,
hogy nyoma veszett… Öreg Mik, kedves szolgám, tudnál-e lóra ülni,
mint hajdanában?
– Hogyne, uram, hogyne.
– Ülj hát lóra. Az éjjel holdvilágos, el nem tévesztheted az utat.
Nyargalj Toporcra és keresd fel az öreg Marczinkánét. Ha nála
nincsen Ancsurka, akkor már sehol sincs. Akkor már elveszett.
Örökre. Elvitte magával valamely lengyel gyolcsos, vagy ellopták a
vándorlók. Valaki magával hurcolta, mert hisz szép volt a szeme.
Az öreg Mik mély felindulással bólongatott fejével:
– Hallottam magam is valamikor, hogy szép leányokat szokásos
ellopni, elhurcolni idegen országokba, a hol eladják őket.
Némelyikért annyi kiló aranyat adnak, a mennyit nyom. Vajjon ez
történt volna a mi Ancsurkánkkal is?
– Ülj lóra, Mik, és járj gyorsan. Köss sarkantyut a csizmádra,
hever elég rozsdás sarkantyu a kamarában.
Az öreg Miknek már nem kellett ismételni a parancsot…
*
Hajnalodott, a mikor lódobogás hallatszott lenn a piacon.
Riminszky ur nem igen aludt, gyorsan az ablakhoz lépett és
felnyitotta azt. A holdvilágos térségen nyargalva jött a fehérszakállu
Mik és mögötte a nyeregben ott ült Ancsurka. Hosszu uszályos
ruhája lobogott utána és aranyos cipőjén megreszketett a holdsugár.
Riminszky ur a következő percben odalenn volt az utcán. Két
karjával leemelte Ancsurkát a nyeregből. Szólni nem igen tudott
mindjárt. Csak nézte a leány fehér arcát, tündöklő szemét.
Az öreg Mik a földre zörrent és nagy komolysággal jelentette:
– A kisasszonyt Toporcon megtaláltam és legjobbnak tartottam
mindjárt magammal hozni.
Riminszky ur hálásan veregette meg az öreg Mik hátát.
– Derék ember vagy Mik. Mondd, mivel jutalmazzam meg
hüségedet? – kérdezte Riminszky ur.
Mik a csizmája orrára nézett, mintha attól kérne tanácsot. Aztán
csendesen mondotta:
– A zárak és lakatok a házban mind a régiek. Ideje volna már
ujakkal felcserélni a régi holmikat.
– Cseréld fel, öreg Mik, annyiszor cseréld, a hányszor akarod.
– Köszönöm uram, – felelt a vén szolga.
– Jer, Ancsurka, jer, – szólt Riminszky a leányhoz. – Többé soha
sem engedlek el magamtól.
Felvitte az emeletre és ott a legnagyobb székbe leültette, a mely
széknek piros bársonyból volt az ülése és a lábai aranyozott
oroszlánkarmokban végződtek s a legenda szerint eddig benne
csupán lengyel vojvodák ültek, nem pedig elveszett és megtalált tót
leánykák.
– Ülj itt Ancsurka és ha kedved tartja, soha se is kelj föl innen.
Annyi szolgálóleányod lesz, a hány ujjad van és mindnek te
parancsolhatsz.
Ancsurka tágranyitott szemmel hallgatott.
– Selyemből, bársonyból lesz a ruhád és szinaranyból a
papucsod. Mindent megkapsz, a mit szád, szemed kiván. Csak itt kell
maradnod mindig.
Ancsurka azt hitte, hogy álmodik. Lehajtotta a fejét és titkon
megcsipte a karját. Ébren volt, valóság mindaz, a mit hallott…
Későbben Riminszky ur még azt is megkérdezte, hogy hová lett
Ancsurka a gyolcsos szekérről.
– Eluntam várni a gazdát, – felelt egyszerüen Ancsurka – és
gyalog folytattam utamat Toporc felé.
– És nem bántott senki utközben?
– Bántani nem bántottak. Csak az emberek olyan furcsán néztek
reám, mint egy kisértetre. A falusi gyerekek utánam szaladtak, a
kutyák megugattak. Marczinkáné egy darabig nem akart beengedni a
házába. Be furcsa maskara vagy, – mondogatta mindig. Pedig nekem
nagyon tetszett a ruhám.
Még mindig az a sárga bársony lovaglóruha volt rajta, a melyet a
nizsderi várban viselt. Riminszky ur hallgatva nézte és nagyon
kimelegedett. A következő percben lehajolt és megcsókolta az
Ancsurka kezét.
A mire Ancsurkának vérvörös lett az arca.
X. FEJEZET.

A kisértet megjelen.
A ki Podolinban azelőtt ismerte a Riminszky-házat, ugyancsak
elbámulhatott, ha utja véletlenül rövid időn belül arra vitte és az
ódon háznak nyomát kereste.
Mintha mindenestül elnyelte volna a föld a vén portát, a hol
hajdanában a „vajdák“ laktak, ivással és egyéb nemes időtöltéssel
várakozván az időre, a mig vagy itt e földön, vagy a másik világon
visszanyerik vajdai méltóságukat. Mert a vajdaság bizonyos volt. Az
egyik Riminszky – valamikor – sok pénzt költött arra, hogy valami
lázadás-félét csináljon odaát Lengyelországban. A lázadást vérbe
fojtották, némely békétlenkedőket fölakasztottak… Riminszky
állitólag igy szólott volna akkor:
– Nem baj, barátaim. A másvilágon folytatjuk a háborut. Odaát
talán győzedelmeskedik az igazság.
Megnyugodtak-e ebben azok, a kik nyakukban hurokkal lépték át
a másvilági ösvényt, – nem tudatik. A legendák rendesen
elhanyagolják az efféle részlet-dolgokat.
Tehát a vajdák régi tanyáját elnyelte a föld és helyébe egy
mosolygó, vidám házikót épitettek szorgalmas kezek. Azaz talán a
falak megmaradtak, csak a régi szinüket váltották föl mással. Azelőtt
komor zöldek voltak, most rózsaszinüek lettek. A tetőről leverték a
mohos zsindelyt és helyébe tarka, sokszinü zsindelyt raktak. Az uj
kapun rézkilincs ragyogott, a melyet egy görbelábu öreg ember
É
sürün fényesitett. És az ablakokból a zordon vasrácsok helyett
vidámságot jelentő világos függönyök nevettek ki.
A mig az ódon ház igy megifjodott, Riminszky ur se maradt
tétlenül.
Elutazott Podolinból és mikor visszajött, a szomszédjai is alig
ismerték meg. A haja megfeketedett, a bajusza gácsérformáju lett és
az arca piros, mint a rózsa.
– Ördöngős Riminszkyje – mondogatták a podoliniak. – Néhány
esztendőt eltett annak idején az ifjuságából, hogy elővehesse, ha
szüksége lesz rá.
Hová tette Riminszky az ifju esztendőket és honnan vette olyan
hirtelen elő, arra talán a naiv podoliniakon kivül mindenki tudott
volna felelni. Valamely ügyes borbély officinájából vette elő a
megtakaritott ifjuságot.
Midőn Ancsurka látogatására ment Lőcsére, a hol egy egész
házat bérelt ki a leánynak és öreg nénikéjének, a honnan majd
illendő módon elhozhassa feleségének, négy fehér lovat fogatott a
kocsijába és a bakra zsinóros, kardos huszár ült.
– A püspök se járhat másképpen, pedig a püspöknek talán még
Riminszkynél is több báránya van – mondták a podoliniak.
Mire Fintor uram, a sánta suszter nyomban megfelelt:
– A püspöknek lehet több báránya, de nem mindegyik báránynak
van gyapja.
A mi bizony igaz lehet, tekintve a szegény szepesi egyházmegyét.
Riminszky szakitott az európai viselettel. Szárnyas kabátban,
kürtőkalapban, lakktopánkában mindenkit láthat Ancsurka. De ugyan
van-e Lőcsén olyan valaki, a ki zöld szattyáncsizmát hord a lábán és
minden lépésénél finoman muzsikál az ezüstsarkantyu? De még zöld
mentét, aranynyal gazdagon kihányva, kócsagtollas föveget se hord
minden ember.
A mikor üveges hintóján végigrobogott a kis falukon, a tótok
lekapták a kalapjukat. Azt hitték, hogy maga a király jár közöttük,
vagy legalább is annak a helytartója.
A kik ismerősebbek voltak a dolgokkal, szájukkal csettintve
magyarázták:
– Nem született még olyan tót leány a világon, mint Prihoda
Anna. A Szüz Mária vigyázott reá a bölcsőjében, az vezette a kezénél
fogva későbben is. Azért nem volt szüksége Prihoda Annának az
édesanyjára. Mária azt mondta neki: „Eregy pihenni te szegény
tótasszony, eleget dolgoztál, kapáltál már; majd én vigyázok az
árvádra.“ És a kire Mária vigyáz, Riminszkyhez adja feleségül.
Mások nem ebből a szempontból fogták fel a dolgot.
– Bolond ez a Riminszky, az Isten elvette az eszét. Minek neki
Prihoda Anna? Egy egész vármegye minden szép leánya a felesége
lehetett volna, ő pedig kiválaszt magának egyet. Majd megunja,
majd eldobja… A legszebb bocskorból is rongy lesz valamikor.
Hogyan vesz akkor Riminszky uj bocskort?
De hát ezek a beszédek nem jutottak a Riminszky fülébe. Járta
üveges hintóján Lőcse és Podolin között az országutat. A mezőkön
mindenütt sárga virág nyilott, a réteken sárgaszoknyás tót leányok
dolgoztak. Össze lehetett téveszteni a tót leányokat a virágokkal.
A lőcseiek is nagyon büszkék voltak, hogy olyan igen nagy ur
éppen az ő városukat választja ki, hogy onnan asszonyt vigyen.
Hiába, jó izlése van annak a Riminszkynek. Tudja, hogy a lőcsei
leányok mind szépek, dolgosak, erkölcsösek. Hogyha a három
tulajdonság közül csak egyik is ráragad a kis menyasszonyra, – már
pedig valamelyik csak ráragad, hisz az odavaló levegőt szivja, meg a
vizet issza – Riminszky akkor is boldog ember lehet.
Az üveges batár soha sem jött üresen. A hintó mögé terjedelmes
láda volt csatolva és a ládában mindig akadt valami ajándék
Ancsurkának meg Marczinkánénak. A legszebb ruhákat Ancsurka
viselte Lőcsén, a legdrágább kalapjai neki voltak, selyem, bársony,
brokát annyi hevert a szobájában, hogy akár boltot rendezhetett
volna be belőle. De több esze volt, hogy boltot rendezett be volna,
egész nap azon töprengett Marczinkánéval, hogy mit varrjanak ők
abból a sok drága kelméből? Később erről is gondoskodott Riminszky
ur – mintha csak az Ancsurka gondolatát találta volna ki – három
varrónőt beállitott a lőcsei házba, azok aztán reggeltől estig egyebet
sem tettek, mint varrták, varrták a sok drága kelmét. A varrónők
nem fáradtak el, de a kelme sem fogyott el soha. Még az öreg
Marczinkánénak is olyan ruhát varrtak a varrónők, hogy a mikor a jó
asszony először felvette, meg se mert benne mozdulni. Egész nap a
karosszékben ült – ülhetett, mert egyéb dolga nem volt – és
nagyokat sóhajtott:
– Istenkém, Istenkém, ki hitte volna? Az egyik Riminszky
bocskorokat vett, a másik selyemruhákat. Hát olyan szép vagyok én?
Hittem volna valaha, hogy olyan szép vagyok?
Riminszky – nagyon megszelidült ez a haragos, komor férfiu –
megsimogatta a vénasszonyka kezét:
– Nagyon szép vagy, nénike! Meglátod, még férjhez is adlak.
Csak várj sorodra, egyszer majd férjhez adlak.
Marczinkáné nevetett:
– Lehet, lehetséges… Hiszen ha Toporcon ebben a selyemben,
bársonyban meglátnának, mindjárt akadna három kérőm is.
Majd elgondolkozva tette hozzá:
– De lehet, hogy négy is akadna…
Ancsurka megsimogatta a néni arcát:
– Talán öt kérőd is akadna nénike. De azért már ne menj férjhez.
Riminszky ur a diványon ülve, igen nagyokat nevetett ezeken a
bolondságokon. Szivből, igazán nevetett, mintha csiklandozta volna
az Ancsurka hangja.
Történt, hogy Riminszky Lőcséről jövet, késő éjszaka érkezett a
podolini határba. A négy fehér ló vigan szántotta az országutat; a
huszár a bakon, Riminszky a hintóban csendesen bóbiskolt.
A mikor a város széléhez értek, a hol hajdanában kapu volt, most
pedig rombadőlt bástyák álltak nagy szomoruságban, a lovak
hirtelen meghőköltek, a vén kocsis káromkodva rántotta vissza a
gyeplőt.
Riminszky megdörzsölte a szemét.
A mezőn – a Poprád irányába – fehér árnyék imbolygott tova.
– Mi az? – kiáltott nyugtalankodva Riminszky.
A kocsis – régifajt ember volt – megsodorta a bajuszát és
kedvetlenül dörmögött:
– Valami lelket láttak a lovak.
Az ostorával a mezők felé mutatott:
– Ahun megy ni. A füzesek alatt.
Ekkor Riminszky is látta a fehér, imbolygó árnyékot a folyó felé
haladni, mintha hosszu köntösü szellemalak lett volna – a köntös
ködből és felhőből – és öleseket lépett.
– A macskába! – dörmögött Riminszky. – Hát ez megint miféle
babonaság?
Nem igen volt ideje feleletet adni a kérdésre. A négy ló
tovaragadta és csakhamar hazáig vitte.
A rózsaszinü vidám házikó előtt félig öltözötten, nagy felidulás
közepette állott az öreg Mik és a városi bakteroknak magyarázott
éppen valamit, a kik lámpásaikat lóbálták.
Riminszky kiugrott a hintóból.
– Kezét csókolom, nemes nagy uram, – kiáltott az öreg Mik
lelkendezve. – Csak egy perccel előbb kellett volna jönni…
Riminszkynek megborzongott a háta.
– Nos? – kérdezte tétovázva.
– Alig egy perccel előbb, – folytatta az öreg szolga, – a kapun
bejött valaki, bár a lakat és a zár érintetlen volt. Bejárta a házat,
végigment a szobákon. Csupán arra ébredtem fel, hogy lépések
kopognak az emeleten, a mely lépések senkié. Kapom a lámpást és
egy vasrudat, – no mert zsiványokra gyanakodtam, – s a lépcsőn
megtántorodtam, mert egy fehérruhás nőszemély a mellembe
vágott. Kiáltásomra ide gyültek ezek a jó emberek.
Klein Márton éjjeli őr megerősítette az öreg Mik szavait.
– Éppen a piacon álldogáltunk, az óra egyet ütött, a kapu
csendesen felnyilt és fehér árnyék suhant ki a házból. Társammal,
Gavra Pállal, az árnyék után siettünk, de miután lépése nem
kopogott a kövezeten, jobbnak véltük visszamaradni.
Riminszky – nem igen volt valami félős ember – nyugtalanul
nézett körül:
– Részegek vagytok, emberek? – kérdezte, de csupán a maga
megnyugtatására.
Az öreg Mik némán csóválta a fejét, a mig Klein Pál éjjeli őr
butykosa nyakát megcsavarva, azt a föld felé forditotta.
– Száraz, uram, mint a „Jánosik kutja“!
– Mert benned van, huncut, – szólt Riminszky.
Az éjjeli őr tisztelgett alabárdjával:
– Bennem sincs, jó uram. Szagold meg, légy szives.
Kinyitotta a száját, Riminszky odadugta az orrát. Majd
megcsóválta a fejét:
– Hm, – dünnyögte, – ugy vélem, még ma nem ittál pálinkát.
Riminszky fölment a szobájába. A sötétes folyosón fázósan nézett
körül.
– Vajjon mit akart itt? – dünnyögte magában.
Alig hogy elaludt, nyomban felköltötte az öreg Mik.
Lovas ember hozott sürgős levelet Riminszkynek. Riminszky
felnyitotta a levelet, aztán hátrahőkölt. Megdörzsölte a szemét és
ujra a levélbe nézett.
Azt a levelet Komárominé, a nizsderi „várnagy“ irta. Röviden
tudósitotta benne Riminszkyt, hogy a nizsderi várur meghalt. Ha a
temetésén ott akar lenni, akkor jöjjön nyomban.
– Tehát ő volt a kisértet! – kiáltotta Riminszky. – Még ki sem hült,
már elindult kóborló utjára!
Nyomban felöltözött és elindult Nizsderre.
Bezzeg máskor vidáman, jókedvüen szokta megtenni ezt az utat,
most a hideg lelte egész uton. Az üveges hintó vitte a kis tót faluba
és a lakosok lekapták a kalapjukat a megye legelső földesurasága
előtt.
A lipovnicai kolostornak valamennyi harangja szólott, a mikor
Riminszky éppen elhaladt a kolostor előtt.
– Ez már a nizsderi halottnak szól, – gondolta magában
Riminszky.
Megállitotta a kocsit és a hintóhoz intette a kapuban gunnyasztó
vén frátert.
– Nos, mit mondanak? Mi baja volt a halottnak? – kérdezte.
A kapusfráter vállat vont.
– Még eddig a kivel beszéltem, mind azt mondta, hogy beteg
sem volt és a koporsót máris elhozatta Krakkóból. Nagy
márványkoporsót hozatott, a melyet tizenkét ló vonszolt ide. A
képfaragók három hétig kalapáltak a várudvarban, bevésték a
szokásos betüket, figurákat, képeket. Ő meg hallgatta azt a
kalapálást. Mikor mindennel elkészültek, elküldött a várból
mindenkit, csupán csak Pétert, a vak zenészt türte meg maga
mellett.
Péter három nap mulva megkonditotta a lélekharangot a
toronyban, ekkor már mindnyájan tudtuk, hogy halott van a nizsderi
várban.
Riminszkynek valami viz nedvesitette meg a szemét.
– Szegény! Tehát önkezével vetett véget életének?
A fráter a vállát vonogatta:
– Ki tudná azt bizonyosan? Hiszen ismered uram a dörgést: nem
igen eresztenek senkit sem a várba. Rocskay Teofil doktor járt ott
csupán. Az a hóbortos se mondott többet:
– Örökké nem élhet senki.
Hát már most hogyan lehet ebből kiokosodni?
– Hát te mit gondolsz magadban, tisztelendő testvér?
– Én azt gondolom, hogy délután nagy temetésünk lesz, persze a
kolostor rendezi a temetést és utána nagy tort rendelt a halott.
Riminszky a várnak kanyarodott. A vár épen olyannak látszott a
völgyből, mint máskor. A bástyákon sohasem mutatkozott senki
akkoriban sem. A nagy kapu kinyilott és Riminszky hintaja döngve
gördült be az udvarra.
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebooknice.com

You might also like