Skip to content

Commit f5405c5

Browse files
committed
Grammar corrections in README
1 parent e1c2ce0 commit f5405c5

3 files changed

Lines changed: 14 additions & 14 deletions

File tree

README.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ A lightweight Java library that allows cloning entity data from one PostgreSQL d
55
# Features:
66
- **Minimal external dependencies**. Only dependencies are the official PostgreSQL JDBC driver (`org.postgresql:postgresql`) and Apache Commons CSV (`org.apache.commons:commons-csv`)
77
- **Selective cloning**. Clone precisely the rows you want by specifying filters.
8-
- **Repeatable cloning**. The cloning process is repeatable and will ensure only the clone rows exists for the specific entity without affecting other entities.
9-
- **Graph-based configuration builder**. Define root table and their joins recursively with a builder pattern for type safety.
8+
- **Repeatable cloning**. The cloning process is repeatable and will ensure only the cloned rows exist for the specific entity without affecting other entities.
9+
- **Graph-based configuration builder**. Define root tables and their joins recursively with a builder pattern for type safety.
1010
- **Streaming support**. Handle large imports and exports without memory overhead.
1111
- **Minimal privileges**. Requires only SELECT and INSERT privileges on the target tables; no superuser or special permissions are needed.
1212
- **Row Level Security support**. Clone data based on user permissions.
@@ -35,7 +35,7 @@ try (final var out = new ByteArrayOutputStream()) {
3535
zipBytes = out.toByteArray();
3636
}
3737

38-
// Import the data from the ZIP file to another environemnt
38+
// Import the data from the ZIP file to another environment
3939
try (final var in = new ByteArrayInputStream(zipBytes)) {
4040
cloner.importClone(in, importConn, CLONE_CONFIGURATION);
4141
}
@@ -53,9 +53,9 @@ CloneConfiguration CLONE_CONFIGURATION = CloneConfiguration.builder("main_table"
5353
```
5454

5555
Either use:
56-
- Join by join table foreign key: Where the foreign key is on the join table.
57-
- Join by main table foreign key: Where the foreign key is on the main table.
58-
- Join by matching value: Where both tables contain a common value.
56+
- Join by joined table foreign key: where the foreign key is on the joined table.
57+
- Join by main table foreign key: where the foreign key is on the main table.
58+
- Join by matching columns: where both tables contain a common value.
5959

6060
The builder will automatically adjust the ordering of the inserts such that they are inserted in the correct order with the dependent tables being inserted after the table values they point to.
6161
# Verifying the configuration
@@ -105,8 +105,8 @@ The project contains the following main Gradle modules:
105105
- `example` a small example project that demonstrates how to use the library.
106106

107107
# Future work
108-
There is currently no plans for further development.
108+
There are currently no plans for further development.
109109

110110
This is a list of ideas that could be implemented:
111111
- Support for automatic generation of the clone configuration based on the entity structure in Hibernate.
112-
- Hibernate's meta model could be used to generate the configuration.
112+
- Hibernate's meta model could be used to generate the configuration.

example/README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
This is an example project that demonstrates how to use the Cloner library in a Spring application.
44

55
It contains a small application where you can randomly generate data and move it manually through a downloaded ZIP file:
6-
![Image of the example ui](/example-ui.png)
6+
![Image of the example UI](/example-ui.png)
77

8-
Although this example downloads and reuploads a ZIP file, it is recommended that two environment talk directly between each other to prevent data leaks.
8+
Although this example downloads and reuploads a ZIP file, it is recommended that two environments talk directly between each other to prevent data leaks.
99

1010
## Run the example
1111

@@ -15,10 +15,10 @@ Start two databases with docker-compose:
1515
1616
This will host database1 on port 5432 and database2 on port 5434.
1717

18-
Start Example 1 with the built in IntelliJ IDEA run configuration "Example 1" or the following command:
18+
Start Example 1 with the built-in IntelliJ IDEA run configuration "Example 1" or the following command:
1919
> ./gradlew example:bootRun --args='--spring.profiles.active=example1'
2020
21-
Start Example 2 with the built in IntelliJ IDEA run configuration "Example 2" or the following command:
21+
Start Example 2 with the built-in IntelliJ IDEA run configuration "Example 2" or the following command:
2222
> ./gradlew example:bootRun --args='--spring.profiles.active=example2'
2323
2424
Access environments on:

spring/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
This Spring package contains the `SpringCloner`, which setups a cloner to use the Spring `DataSource` wrapped in the current `@Transactional`.
1+
This Spring package contains the `SpringCloner`, which sets up a cloner to use the Spring `DataSource` wrapped in the current `@Transactional`.
22

3-
This is how you use it directly in Spring without having to manage `Connection`s directly.
3+
This is how you use it directly in Spring without having to manage `Connection`s manually.

0 commit comments

Comments
 (0)