Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Lin Qing] ip #44

Open
wants to merge 124 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
124 commits
Select commit Hold shift + click to select a range
181bb45
Level 0: Greet
linqing42 Aug 18, 2020
ac1c162
Level-1: Greet, Echo, Exit
linqing42 Aug 20, 2020
ecacac8
Level 2. Add, List(Add the ability to store whatever text entered by …
linqing42 Aug 20, 2020
e1cfbf9
case for list is empty
linqing42 Aug 20, 2020
f5608da
mark as done
linqing42 Aug 23, 2020
10381c7
add todo,event and deadline
linqing42 Aug 25, 2020
f1b0775
uing .bat
linqing42 Aug 27, 2020
eb14988
uing .bat
linqing42 Aug 27, 2020
42ac17b
Revert "uing .bat"
linqing42 Aug 27, 2020
6855258
update text-ui-test
linqing42 Aug 27, 2020
d06c11b
coding standard
linqing42 Aug 28, 2020
684ae3a
handle for todo case
linqing42 Aug 30, 2020
fe434fa
handle some error cases
linqing42 Aug 30, 2020
338e312
improve code quality with some handle error edit
linqing42 Sep 3, 2020
6045c17
add empty list and done for handle error
linqing42 Sep 3, 2020
ae94c8e
change task class to abstract class
linqing42 Sep 3, 2020
259f46a
all classes into one package
linqing42 Sep 3, 2020
62cfedc
Merge branch 'master' into branch-Level-5
linqing42 Sep 4, 2020
2fb9520
Merge branch 'master' into branch-A-CodeQuality
linqing42 Sep 4, 2020
cda6cba
add delete
linqing42 Sep 6, 2020
45cdfba
Revert "add delete"
linqing42 Sep 6, 2020
d503a1f
Merge branch 'branch-Level-6' into master
linqing42 Sep 6, 2020
f032bcf
add delete and some error to handle
linqing42 Sep 6, 2020
ae1b097
add delete
linqing42 Sep 6, 2020
4f6b1b2
Merge branch 'branch-Level-6' into master
linqing42 Sep 6, 2020
0600861
store in hard disk
linqing42 Sep 6, 2020
2573786
store in hard disk
linqing42 Sep 6, 2020
924a9f2
Revert "store in hard disk"
linqing42 Sep 7, 2020
0eed44e
add delete with some handle error
linqing42 Sep 7, 2020
03e44e2
Merge pull request #1 from linqing42/branch-Level-6
linqing42 Sep 7, 2020
656ae96
edit the add delete task
linqing42 Sep 7, 2020
d4e6157
Merge pull request #2 from linqing42/branch-Level-6
linqing42 Sep 7, 2020
345c402
add store in hard disk
linqing42 Sep 7, 2020
5176749
more OOP
linqing42 Sep 13, 2020
a80b0d6
Merge branch 'master' into branch-Level-5
linqing42 Sep 13, 2020
f8a2f2a
Merge branch 'branch-Level-7' into master
linqing42 Sep 13, 2020
2aa299e
add javaDoc
linqing42 Sep 13, 2020
538aa5e
Merge branch 'branch-Level-7' into master
linqing42 Sep 13, 2020
7e022f5
edit packages
linqing42 Sep 13, 2020
53914b3
Merge branch 'branch-A-Packages' into master
linqing42 Sep 13, 2020
2b8dde0
update for merge level 5
linqing42 Sep 13, 2020
53adffd
Merge branch 'branch-Level-5' into master
linqing42 Sep 13, 2020
18fda53
include branch for abstractClass
linqing42 Sep 13, 2020
afcf51d
Merge branch 'branch-A-AbstractClass' into master
linqing42 Sep 13, 2020
7710c7d
Merge remote-tracking branch 'origin/Branch-A-JavaDoc' into master
linqing42 Sep 13, 2020
6f056a6
java doc
linqing42 Sep 13, 2020
ea8bd25
Merge branch 'branch-A-JavaDoc' into master
linqing42 Sep 13, 2020
77a5449
exceptions
linqing42 Sep 13, 2020
55df68e
Merge branch 'master' into branch-A-AbstractClasses
linqing42 Sep 14, 2020
543df8f
Merge branch 'master' into branch-Level-5
linqing42 Sep 14, 2020
40e05ab
Merge branch 'branch-A-AbstractClasses' into master
linqing42 Sep 14, 2020
5478a33
Merge remote-tracking branch 'origin/branch-Level-5' into master
linqing42 Sep 14, 2020
c5cf5fb
edit
linqing42 Sep 14, 2020
7527ec0
jar file
linqing42 Sep 14, 2020
a768f3d
Merge branch 'branch-A-AbstractClasses' into master
linqing42 Sep 14, 2020
b803bc5
add duke.txt
linqing42 Sep 14, 2020
7845cda
nothing
linqing42 Sep 14, 2020
2d2c2c0
Merge branch 'branch-Level-5' into master
linqing42 Sep 14, 2020
c33605c
more OOP
linqing42 Sep 14, 2020
97313c2
add time and date for deadline and event
linqing42 Sep 14, 2020
ed3aa0f
handle error for time and date in deadline and event
linqing42 Sep 14, 2020
f9e7d48
handle error for time and date in deadline and event
linqing42 Sep 14, 2020
8fe7093
Merge pull request #3 from linqing42/branch-Level-8
linqing42 Sep 14, 2020
3b3b457
update
linqing42 Sep 18, 2020
9d844cc
Merge branch 'branch-A-AbstractClasses' into master
linqing42 Sep 18, 2020
77022d6
add find task
linqing42 Sep 20, 2020
db9c39a
update
linqing42 Sep 20, 2020
837f4e2
Merge pull request #4 from linqing42/branch-Level-9
linqing42 Sep 20, 2020
12f46fe
add JUnit test
linqing42 Sep 20, 2020
14985ba
add JUnit test
linqing42 Sep 20, 2020
4732d89
latest update
linqing42 Sep 20, 2020
0784601
Merge pull request #5 from linqing42/branch-A-JUnit
linqing42 Sep 20, 2020
25507db
latest update
linqing42 Sep 20, 2020
0afe19a
add readme.md
linqing42 Sep 20, 2020
cb18b93
add readme.md
linqing42 Sep 20, 2020
65cc0fc
Update README.md
linqing42 Sep 20, 2020
5f32a02
Update README.md
linqing42 Sep 20, 2020
6e03d3a
Update README.md
linqing42 Sep 20, 2020
11cd822
Update README.md
linqing42 Sep 20, 2020
fb816b1
Set theme jekyll-theme-time-machine
linqing42 Sep 20, 2020
97adb51
Update README.md
linqing42 Sep 20, 2020
4d9fc8e
Update README.md
linqing42 Sep 20, 2020
54c77c2
Delete _config.yml
linqing42 Sep 20, 2020
9fddacb
Update README.md
linqing42 Sep 20, 2020
53bc3e2
Set theme jekyll-theme-time-machine
linqing42 Sep 20, 2020
2ad403b
Update README.md
linqing42 Sep 20, 2020
6d2e23b
Update README.md
linqing42 Sep 20, 2020
2a67114
Update README.md
linqing42 Sep 20, 2020
f8e0a03
Update README.md
linqing42 Sep 20, 2020
1fb673b
add readme.md
linqing42 Sep 20, 2020
e4b70ea
Update README.md
linqing42 Sep 21, 2020
b5bf37d
Update README.md
linqing42 Sep 21, 2020
a1f90f6
Update README.md
linqing42 Sep 21, 2020
90d36db
Update README.md
linqing42 Sep 21, 2020
f8083a3
Update README.md
linqing42 Sep 21, 2020
c333e8d
Update README.md
linqing42 Sep 21, 2020
774a8d2
add readme.md
linqing42 Sep 21, 2020
1e39510
Merge branch 'master' of https://github.com/linqing42/ip into master
linqing42 Sep 21, 2020
aff0753
update
linqing42 Sep 21, 2020
5919349
final jar
linqing42 Sep 21, 2020
7e66ff5
final jar
linqing42 Sep 21, 2020
eefb89e
final jar
linqing42 Sep 21, 2020
40de1ba
Merge branch 'Final-jar' into master
linqing42 Sep 21, 2020
900dfe9
final jar
linqing42 Sep 21, 2020
9fee6bc
Update README.md
linqing42 Sep 21, 2020
7959f2b
Update Parser.java
linqing42 Sep 21, 2020
6a62f21
Merge pull request #6 from linqing42/Final-Jar
linqing42 Sep 21, 2020
1211537
Update README.md
linqing42 Sep 22, 2020
192ff60
update README.md
linqing42 Sep 22, 2020
cb46c99
Merge branch 'master' of https://github.com/linqing42/ip into master
linqing42 Sep 22, 2020
6f5fe6d
update README.md
linqing42 Sep 22, 2020
6fd7802
update README.md
linqing42 Sep 22, 2020
61340e3
update README.md
linqing42 Sep 22, 2020
89efe92
Update README.md
linqing42 Sep 22, 2020
cedea37
Update and rename README.md to linqing.md
linqing42 Nov 13, 2020
b66dba0
Create linqing.md
linqing42 Nov 13, 2020
74bb16e
Delete linqing.md
linqing42 Nov 13, 2020
21d6ea2
Update and rename linqing.md to ReadMe.md
linqing42 Nov 13, 2020
ea750d9
add a gradle
linqing42 Jan 18, 2021
a7a654b
add-gradle-support
linqing42 Jan 18, 2021
43cd499
add-gradle-support
linqing42 Jan 18, 2021
1482f52
add-gradle-support
linqing42 Jan 18, 2021
37f88f4
Merge branch 'branch-A-Gradle'
linqing42 Jan 18, 2021
565e35e
Merge branch 'master' into branch-A-Gradle
linqing42 Jan 18, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
File renamed without changes.
61 changes: 61 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
plugins {
id 'java'
id 'application'
id 'checkstyle'
id 'com.github.johnrengelman.shadow' version '5.1.0'
}

repositories {
mavenCentral()
jcenter()
}

dependencies {
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: '5.5.0'
testRuntimeOnly group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: '5.5.0'
// https://mvnrepository.com/artifact/com.sun.mail/javax.mail
testCompile 'junit:junit:4.12'
compile 'junit:junit:4.12'

}

test {
useJUnitPlatform()
testLogging {
events "passed", "skipped", "failed"
showExceptions true
exceptionFormat "full"
showCauses true
showStackTraces true
showStandardStreams = false
}
}

jar{
manifest {
attributes(
'Main-Class': 'Dukes.Duke'
)
}
}

run {
enableAssertions = true
}

application {
mainClassName = "Dukes.Duke"
}

shadowJar {
archiveBaseName = "Duke"
archiveClassifier = null
}

checkstyle {
toolVersion = '8.23'
}

run{
standardInput = System.in
}
252 changes: 252 additions & 0 deletions config/checkstyle/checkstyle.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,252 @@
<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
"-//Checkstyle//DTD Checkstyle Configuration 1.3//EN"
"https://checkstyle.org/dtds/configuration_1_3.dtd">

<!--
Checkstyle configuration that checks the Google coding conventions from Google Java Style
that can be found at https://google.github.io/styleguide/javaguide.html
Checkstyle is very configurable. Be sure to read the documentation at
http://checkstyle.sf.net (or in your downloaded distribution).
To completely disable a check, just comment it out or delete it from the file.
Authors: Max Vetrenko, Ruslan Diachenko, Roman Ivanov.
-->

<module name = "Checker">
<property name="charset" value="UTF-8"/>

<property name="severity" value="error"/>

<property name="fileExtensions" value="java, properties, xml"/>
<!-- Excludes all 'module-info.java' files -->
<!-- See https://checkstyle.org/config_filefilters.html -->
<module name="BeforeExecutionExclusionFileFilter">
<property name="fileNamePattern" value="module\-info\.java$"/>
</module>
<!-- Checks for whitespace -->
<!-- See http://checkstyle.sf.net/config_whitespace.html -->
<module name="FileTabCharacter">
<property name="eachLine" value="true"/>
</module>

<module name="TreeWalker">
<module name="OuterTypeFilename"/>
<module name="IllegalTokenText">
<property name="tokens" value="STRING_LITERAL, CHAR_LITERAL"/>
<property name="format"
value="\\u00(09|0(a|A)|0(c|C)|0(d|D)|22|27|5(C|c))|\\(0(10|11|12|14|15|42|47)|134)"/>
<property name="message"
value="Consider using special escape sequence instead of octal value or Unicode escaped value."/>
</module>
<module name="AvoidEscapedUnicodeCharacters">
<property name="allowEscapesForControlCharacters" value="true"/>
<property name="allowByTailComment" value="true"/>
<property name="allowNonPrintableEscapes" value="true"/>
</module>
<module name="LineLength">
<property name="max" value="120"/>
<property name="ignorePattern" value="^package.*|^import.*|a href|href|http://|https://|ftp://"/>
</module>
<module name="AvoidStarImport"/>
<module name="OneTopLevelClass"/>
<module name="NoLineWrap"/>
<module name="EmptyBlock">
<property name="option" value="TEXT"/>
<property name="tokens"
value="LITERAL_TRY, LITERAL_FINALLY, LITERAL_IF, LITERAL_ELSE, LITERAL_SWITCH"/>
</module>
<module name="NeedBraces"/>
<module name="LeftCurly"/>
<module name="RightCurly">
<property name="id" value="RightCurlySame"/>
<property name="tokens"
value="LITERAL_TRY, LITERAL_CATCH, LITERAL_FINALLY, LITERAL_IF, LITERAL_ELSE,
LITERAL_DO"/>
</module>
<module name="RightCurly">
<property name="id" value="RightCurlyAlone"/>
<property name="option" value="alone"/>
<property name="tokens"
value="CLASS_DEF, METHOD_DEF, CTOR_DEF, LITERAL_FOR, LITERAL_WHILE, STATIC_INIT,
INSTANCE_INIT"/>
</module>
<module name="WhitespaceAround">
<property name="allowEmptyConstructors" value="true"/>
<property name="allowEmptyLambdas" value="true"/>
<property name="allowEmptyMethods" value="true"/>
<property name="allowEmptyTypes" value="true"/>
<property name="allowEmptyLoops" value="true"/>
<message key="ws.notFollowed"
value="WhitespaceAround: ''{0}'' is not followed by whitespace. Empty blocks may only be represented as '{}' when not part of a multi-block statement (4.1.3)"/>
<message key="ws.notPreceded"
value="WhitespaceAround: ''{0}'' is not preceded with whitespace."/>
</module>
<module name="OneStatementPerLine"/>
<module name="MultipleVariableDeclarations"/>
<module name="ArrayTypeStyle"/>
<module name="MissingSwitchDefault"/>
<module name="FallThrough"/>
<module name="UpperEll"/>
<module name="ModifierOrder"/>
<module name="EmptyLineSeparator">
<property name="allowNoEmptyLineBetweenFields" value="true"/>
</module>
<module name="SeparatorWrap">
<property name="id" value="SeparatorWrapDot"/>
<property name="tokens" value="DOT"/>
<property name="option" value="nl"/>
</module>
<module name="SeparatorWrap">
<property name="id" value="SeparatorWrapComma"/>
<property name="tokens" value="COMMA"/>
<property name="option" value="EOL"/>
</module>
<module name="SeparatorWrap">
<!-- ELLIPSIS is EOL until https://github.com/google/styleguide/issues/258 -->
<property name="id" value="SeparatorWrapEllipsis"/>
<property name="tokens" value="ELLIPSIS"/>
<property name="option" value="EOL"/>
</module>
<module name="SeparatorWrap">
<!-- ARRAY_DECLARATOR is EOL until https://github.com/google/styleguide/issues/259 -->
<property name="id" value="SeparatorWrapArrayDeclarator"/>
<property name="tokens" value="ARRAY_DECLARATOR"/>
<property name="option" value="EOL"/>
</module>
<module name="SeparatorWrap">
<property name="id" value="SeparatorWrapMethodRef"/>
<property name="tokens" value="METHOD_REF"/>
<property name="option" value="nl"/>
</module>
<module name="PackageName">
<property name="format" value="^[a-z]+(\.[a-z][a-z0-9]*)*$"/>
<message key="name.invalidPattern"
value="Package name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="TypeName">
<message key="name.invalidPattern"
value="Type name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="MemberName">
<property name="format" value="^[a-z][a-z0-9][a-zA-Z0-9]*$"/>
<message key="name.invalidPattern"
value="Member name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="ParameterName">
<property name="format" value="^[a-z]([a-z0-9][a-zA-Z0-9]*)?$"/>
<message key="name.invalidPattern"
value="Parameter name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="LambdaParameterName">
<property name="format" value="^[a-z]([a-z0-9][a-zA-Z0-9]*)?$"/>
<message key="name.invalidPattern"
value="Lambda parameter name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="CatchParameterName">
<property name="format" value="^[a-z]([a-z0-9][a-zA-Z0-9]*)?$"/>
<message key="name.invalidPattern"
value="Catch parameter name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="LocalVariableName">
<property name="tokens" value="VARIABLE_DEF"/>
<property name="format" value="^[a-z]([a-z0-9][a-zA-Z0-9]*)?$"/>
<message key="name.invalidPattern"
value="Local variable name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="ClassTypeParameterName">
<property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
<message key="name.invalidPattern"
value="Class type name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="MethodTypeParameterName">
<property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
<message key="name.invalidPattern"
value="Method type name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="InterfaceTypeParameterName">
<property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
<message key="name.invalidPattern"
value="Interface type name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="NoFinalizer"/>
<module name="GenericWhitespace">
<message key="ws.followed"
value="GenericWhitespace ''{0}'' is followed by whitespace."/>
<message key="ws.preceded"
value="GenericWhitespace ''{0}'' is preceded with whitespace."/>
<message key="ws.illegalFollow"
value="GenericWhitespace ''{0}'' should followed by whitespace."/>
<message key="ws.notPreceded"
value="GenericWhitespace ''{0}'' is not preceded with whitespace."/>
</module>
<module name="Indentation">
<property name="basicOffset" value="4"/>
<property name="braceAdjustment" value="0"/>
<property name="caseIndent" value="0"/>
<property name="throwsIndent" value="4"/>
<property name="lineWrappingIndentation" value="4"/>
<property name="arrayInitIndent" value="4"/>
</module>
<module name="AbbreviationAsWordInName">
<property name="ignoreFinal" value="false"/>
<property name="allowedAbbreviationLength" value="1"/>
</module>
<module name="OverloadMethodsDeclarationOrder"/>
<module name="VariableDeclarationUsageDistance"/>
<module name="MethodParamPad"/>
<module name="NoWhitespaceBefore">
<property name="tokens"
value="COMMA, SEMI, POST_INC, POST_DEC, DOT, ELLIPSIS, METHOD_REF"/>
<property name="allowLineBreaks" value="true"/>
</module>
<module name="ParenPad"/>
<module name="OperatorWrap">
<property name="option" value="NL"/>
<property name="tokens"
value="BAND, BOR, BSR, BXOR, DIV, EQUAL, GE, GT, LAND, LE, LITERAL_INSTANCEOF, LOR,
LT, MINUS, MOD, NOT_EQUAL, PLUS, QUESTION, SL, SR, STAR, METHOD_REF "/>
</module>
<module name="AnnotationLocation">
<property name="id" value="AnnotationLocationMostCases"/>
<property name="tokens"
value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF, METHOD_DEF, CTOR_DEF"/>
</module>
<module name="AnnotationLocation">
<property name="id" value="AnnotationLocationVariables"/>
<property name="tokens" value="VARIABLE_DEF"/>
<property name="allowSamelineMultipleAnnotations" value="true"/>
</module>
<module name="NonEmptyAtclauseDescription"/>
<module name="JavadocTagContinuationIndentation"/>
<module name="SummaryJavadoc">
<property name="forbiddenSummaryFragments"
value="^@return the *|^This method returns |^A [{]@code [a-zA-Z0-9]+[}]( is a )"/>
</module>
<module name="JavadocParagraph"/>
<module name="AtclauseOrder">
<property name="tagOrder" value="@param, @return, @throws, @deprecated"/>
<property name="target"
value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF, METHOD_DEF, CTOR_DEF, VARIABLE_DEF"/>
</module>
<module name="JavadocMethod">
<property name="scope" value="public"/>
<property name="allowMissingParamTags" value="true"/>
<property name="allowMissingThrowsTags" value="true"/>
<property name="allowMissingReturnTag" value="true"/>
<property name="allowedAnnotations" value="Override, Test"/>
<property name="allowThrowsTagsForSubclasses" value="true"/>
</module>
<module name="MethodName">
<property name="format" value="^[a-z][a-z0-9][a-zA-Z0-9_]*$"/>
<message key="name.invalidPattern"
value="Method name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="SingleLineJavadoc">
<property name="ignoreInlineTags" value="false"/>
</module>
<module name="EmptyCatchBlock">
<property name="exceptionVariableName" value="expected"/>
</module>
<module name="CommentsIndentation"/>
</module>
</module>
10 changes: 10 additions & 0 deletions config/checkstyle/suppressions.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<?xml version="1.0"?>

<!DOCTYPE suppressions PUBLIC
"-//Checkstyle//DTD SuppressionFilter Configuration 1.2//EN"
"https://checkstyle.org/dtds/suppressions_1_2.dtd">

<suppressions>
<suppress checks="JavadocType" files=".*Test\.java"/>
<suppress checks="MissingJavadocMethodCheck" files=".*Test\.java"/>
</suppressions>
3 changes: 3 additions & 0 deletions data/duke.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
T | 0 | read book
D | 1 | return book | 12 Dec 2019, 06:00 PM
E | 0 | join club | 11 Jan 2020, 09:00 AM
Binary file added docs/Command Summary.PNG
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading