Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Thomas Lang
jsonparser
Commits
b8486f1e
Commit
b8486f1e
authored
Jul 09, 2021
by
Thomas Lang
Browse files
updated README.md
parent
1fca4d0a
Changes
2
Hide whitespace changes
Inline
Side-by-side
README.md
View file @
b8486f1e
# jsonparser
## prerequisites:
*
use a proper java IDE - eclipse/intellij/netbeans for example https://www.eclipse.org/downloads/
*
use explicitly plain java or an established java framework (spring, play etc.)
*
use an established json library (for example jackson) - https://github.com/FasterXML/jackson-databind
*
use maven - https://maven.apache.org/
*
use git - https://git-scm.com/
## 1. Task description in short:
*
Parse a given JSON input string
`input.json`
(included in this project) to a object model based on the inputs structure.
*
Print this object model to a console output or a file.
*
Record the process of running your program sufficiently so that third party users may be able to reproduce your program´s output
*
Upload your project with a record of how to use it onto a shared space on the www.
*
Make sure others can download your project properly
*
If you want to protect your link with a password please don´t forget to send this password as well
*
Inform our team when you have finished the task via email to
`andreas.oswald@th-deg.de`
*
Parse a given JSON input string
`input.json`
(included in this project) to a object model based on the inputs
structure.
*
put your libraries needed for the task into your
`pom.xml`
*
make sure all software tests in
`JsonparserApplicationTests`
are green/running
*
make use of the helper class
`JsonparserApplication`
## 2. Task description in detail:
*
Clone this repository
*
Parse the given
`input.json`
file to an object model
*
Therefor (parsing json to objects) use a mainstream technology/framework of your choice
*
Therefor (for the whole project) use a mainstream programming language of your choice
*
Assure that your object container is named
`Project`
## 3. Defining the output:
*
If you have finished parsing the
`input.json`
file you should have an object model in your computer´s memory
*
Please output the container´s
`Project`
`name`
property properly
*
Please output the container´s
`projectCategory`
`name`
property properly
*
Please output a list of
**all**
container´s
`issueTypes`
`name`
properties properly
*
Please output a list of
**all**
container´s
`issueTypes`
`name`
properties where the property
`subtask`
is
`true`
*
The output format shoud be
**console output or a text file**
## 4. Example output:
The following could be an example output:
*
`The name of the container project is "Test 123"`
*
`The name of the container project category is "Business Projekt 123"`
*
`and so on`
Please keep in mind! Others are working on the same repository!
So you have various ways of committing code without conflicting with their work. The best practice here would be a
fork:
See as example:
https://docs.gitlab.com/ee/user/project/repository/forking_workflow.html
**
Important:
Don´t push code to the master branch. Use your own branch or fork!
So we can evaluate all applicants separately.
**
## 3. Tests:
Make sure all maven tests run successfully when doing
`mvn clean test`
for example on a terminal
## 5. Complete your task:
*
Complete your task until
**15.06.2020**
*
Package your project as
*.zip or *
.tar or any other mainstream archive file
*
Upload it to a location where we can download it for reviewing
*
Inform us via
`andreas.oswald@th-deg.de`
about your upload (include your name as well)
*
Give us a record of how to start your program to watch its output
*
Include all source code
*
Complete your task until
**23.07.2021**
*
Use https://mygit.th-deg.de/tlang/jsonparser as project base
## 6. Questions:
Please email me
`thomas.lang@th-deg.de`
if there may be some tasks unclear or if you have any questions on this.
Please email us at
`thomas.lang@th-deg.de`
or
`andreas.heilemann@th-deg.de`
if there may be some tasks unclear or if you
have any questions on this.
## 7. Good luck!!!
pom.xml
View file @
b8486f1e
<?xml version="1.0" encoding="UTF-8"?>
<project
xmlns=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"
>
<modelVersion>
4.0.0
</modelVersion>
<parent>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-parent
</artifactId>
<version>
2.5.2
</version>
<relativePath/>
<!-- lookup parent from repository -->
</parent>
<groupId>
de.thd
</groupId>
<artifactId>
jsonparser
</artifactId>
<version>
1.0.0-SNAPSHOT
</version>
<name>
jsonparser
</name>
<description>
Coding challenge for new hires
</description>
<properties>
<java.version>
11
</java.version>
</properties>
<dependencies>
<!-- TODO Add here dependency to your preferred JSON parser framework -->
<dependency>
<groupId>
org.junit.jupiter
</groupId>
<artifactId>
junit-jupiter
</artifactId>
<version>
5.7.2
</version>
<scope>
test
</scope>
</dependency>
<dependency>
<groupId>
org.assertj
</groupId>
<artifactId>
assertj-core
</artifactId>
<version>
3.19.0
</version>
<scope>
test
</scope>
</dependency>
</dependencies>
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"
>
<modelVersion>
4.0.0
</modelVersion>
<parent>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-parent
</artifactId>
<version>
2.5.2
</version>
<relativePath/>
<!-- lookup parent from repository -->
</parent>
<groupId>
de.thd
</groupId>
<artifactId>
jsonparser
</artifactId>
<version>
1.0.0-SNAPSHOT
</version>
<name>
jsonparser
</name>
<description>
Coding challenge for new hires
</description>
<properties>
<java.version>
11
</java.version>
</properties>
<dependencies>
<!-- TODO Add here dependency to your preferred JSON parser framework -->
<dependency>
<groupId>
org.junit.jupiter
</groupId>
<artifactId>
junit-jupiter
</artifactId>
<version>
5.7.2
</version>
<scope>
test
</scope>
</dependency>
<dependency>
<groupId>
org.assertj
</groupId>
<artifactId>
assertj-core
</artifactId>
<version>
3.19.0
</version>
<scope>
test
</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>
maven-jar-plugin
</artifactId>
<version>
3.2.0
</version>
</plugin>
</plugins>
</build>
<build>
<plugins>
<plugin>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>
maven-jar-plugin
</artifactId>
<version>
3.2.0
</version>
</plugin>
</plugins>
</build>
</project>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment