Target build

This commit is contained in:
mnieuwstraten 2019-09-11 06:55:46 +02:00
parent d6bdc13bdb
commit 53d092fc49
182 changed files with 21242 additions and 0 deletions

View file

@ -0,0 +1,76 @@
#Generated
#Wed Sep 11 06:42:13 CEST 2019
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/badges.less=c2ecf1fc5ba7d5882c0aced38c5a0b9b98fbba22
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/dropdowns.less=96ed7dd52411468ad417dd3ed25db2a178dd7c35
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/jumbotron.less=2a17c9947e149c62c66bcb596ae50dc5e1ed3b07
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/reset-filter.less=6b5a0d3cc4c261e8d4b99eaa534fc61570cacf1e
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/panels.less=7510d7544b4df1841208385d4546edc586f95c5b
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/navs.less=92b843fd16ac7093623211d5bdefaf7e90d6f8d0
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/pagination.less=8ade65b30ebee5a656cc7182dc1e3fc500dfbf4d
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/wells.less=bc0163f62855234b3f4b14c43fd699b2add0bba4
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/border-radius.less=5f5ea29a19bda7b337077ac8fffd714f6f1dfa73
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/list-group.less=3077383e785167591e027d80f5ec84529b5a57cd
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/grid-framework.less=f1a27cc4b85f49ed51a27b54fa696af61c8713bb
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/center-block.less=363e836fcda8b776364ec8049da1d3ff7120bb3b
/responsive.less=ea2cfb90041efa20301f50c2fd3daaba748c9bb5
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/panels.less=cf146220c27aab6ff498d234df8672b4cb6328ba
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/carousel.less=5c2697e242a0dd1fdaef0d6dc20c2e18164886ef
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/responsive-visibility.less=f2d7a9aaeaf7e7595622f74894021cf2e48bf6e4
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/hide-text.less=9c3adc24863922ee505dc7dd02ff852190fb4a07
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/breadcrumbs.less=d0df3abea81c7bf4917b0de2c8efe8c4d45e5831
/header.less=2ad8cd576f7b08bb10fe01fb981411686c57007b
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/pager.less=3f8b16c0f2222cd4ed5b250001129f2f74b40087
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/grid.less=32cbcb24294f6f598785bf5be1220b5678008c61
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins.less=7da7da9dab92684407a242235bae6907125d3789
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/alerts.less=67ae9360f19aacc486b78d610e7e147c5ccf1ee9
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/pagination.less=1e560f7a3b05001c6d7c07b25cab0fefd4f88741
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/navbar.less=47f3c73b8389d13c05f63295b33c94153530d037
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/nav-divider.less=1ccd93c3ff076c1e688765dfaa87aeac62390bd1
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/input-groups.less=46b7c1fd7614562cb13542817ff8f83e7ac83cc5
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/code.less=73eb3b1aceb4ee28829acf7467dd4dd5ba516216
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/image.less=302533996b8a1293fc35eb2241f1da78cc3011d6
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/forms.less=3f4f860c9a166f1b7deefa3fcf1ff8628b50c621
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/buttons.less=782f6337e83f0f7a9c27d56a3a4dfe0565d6dd4d
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/thumbnails.less=a4a3537e6cafc8af8ecef83b3420c2d70d55385c
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/tab-focus.less=b2cce3349f44307965f27a6acd890fac5e61678f
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/background-variant.less=34443ed822680e91a0d2fbd7849b5ad70132601a
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/alerts.less=f43c9ea829ba306aa1f7fdbff2bbaeceb96943fe
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/buttons.less=df05ef2e545328ec45c8fe412615c0d33f942311
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/bootstrap.less=a1811af45d28321d848c1c91ad839e9546bf9e92
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/progress-bar.less=634a3c87979c4fe56550e4cb9111d722c1e773af
/typography.less=6df9d7b808e4e454cb62f9ed0379a5f62219091
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/gradients.less=8040ecb7c9f3705a7eed9a093c0f5f0154144cc2
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/tables.less=fea1507ac5ea051998b2441ea1871b77ac4185fe
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/table-row.less=c95a6b50bf82e762c25badbf9738b8058995131e
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/progress-bars.less=5ddd1d278d6d789dd4807cd049500197de6639ec
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/component-animations.less=6afd942d40111e4d3be9bd33d32382ea64851e54
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/resize.less=70dbe3557a5a717a825b2a9186ec62dab5957686
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/variables.less=9c296c8ea686a9e8a5ae1052db654cd818c22830
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/text-overflow.less=54d68679f6b9e2c34df9ff38fbbd52742394bb9b
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/vendor-prefixes.less=97aac1d3b5efd4d0b1bdb2767f7d4dbc8e7a25c1
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/glyphicons.less=ba0bcc0ea666020b1a1702e402ae12592d4fd574
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/normalize.less=5b5eaafae41972c24c109078414441e532ebe823
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/grid.less=341e869eb78033bf840cc399f9d42aa292c0a6
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/reset-text.less=381253db1860d4bf4a0707f3e24b40ed2d31ff4d
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/text-emphasis.less=2e975786f9bc4d5a7554e3264dfddf1e952bb3ff
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/responsive-embed.less=42d6514ffca4c9e63f19555cb063c410390752d2
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/list-group.less=8f8feeee4ad94365f315472dec4968c93a1f5799
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/opacity.less=a85a83b702c721c21be0ee8e3740b1e0e2fc745f
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/modals.less=ebbdc3abf30d87c9c2528f21abe7dc62d2c7610a
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/scaffolding.less=5b24e1a8b461f1357de2bfb1e5b8c569458f7ce3
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/close.less=4206d151fc3efe9891b19066eca15212c45284fa
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/responsive-utilities.less=c54f1cee7779910f01de45c08385ebcae6e0a4d3
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/size.less=be8be9a5ea4045c0c6fae1c4a9a933b14fa9d77c
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/button-groups.less=4e801fc2a0299c43795d835d32c98c3808bd99ef
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/media.less=affb79141d686dc2bd9fe974f097ce0836f7a809
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/clearfix.less=ef40094d9c0cea82b6c4915121b3e8f93cd6867b
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/utilities.less=be421c1cf7643181148271fc119a75a105792d9b
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/forms.less=6adc4591e33f9dca0cfb6b4ca24e4047a47c2c59
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/popovers.less=15de92cc266b3dc98cdcfce3b6859ee2645a7d1
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/tooltip.less=6e7c41861c4cab06534c1aa2a8fede882ce277ca
/petclinic.less=98058740aa7c5af889865273fb4ae7b80efc15ca
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/labels.less=c759d45f9d58fab2dde5738302d29142c6aea228
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/print.less=9d51cfc97e61955d152b3febf6bc873bab3930da
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/type.less=9c1b1c2d342ff1d5f0c071311e6673b6a20b5200
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/nav-vertical-align.less=c07f50d6d875842330045ac3c2ac8e9ed3c31f93
classpath\:META-INF/resources/webjars/bootstrap/3.3.6/less/mixins/labels.less=437d55a64a782308ad457c7024886e38f5a1e0fa

View file

@ -0,0 +1,11 @@
#Properties
#Wed Sep 11 06:41:54 CEST 2019
build.artifact=spring-petclinic
build.name=petclinic
build.encoding.reporting=UTF-8
build.encoding.source=UTF-8
build.version=2.1.0.BUILD-SNAPSHOT
build.java.target=1.8
build.time=2019-09-11T04\:41\:54.846Z
build.group=org.springframework.samples
build.java.source=1.8

View file

@ -0,0 +1,7 @@
# database init, supports mysql too
database=mysql
spring.datasource.url=jdbc:mysql://localhost/petclinic
spring.datasource.username=root
spring.datasource.password=petclinic
# Uncomment this the first time the app runs
# spring.datasource.initialization-mode=always

View file

@ -0,0 +1,25 @@
# database init, supports mysql too
database=hsqldb
spring.datasource.schema=classpath*:db/${database}/schema.sql
spring.datasource.data=classpath*:db/${database}/data.sql
# Web
spring.thymeleaf.mode=HTML
# JPA
spring.jpa.hibernate.ddl-auto=none
# Internationalization
spring.messages.basename=messages/messages
# Actuator / Management
management.endpoints.web.base-path=/manage
management.endpoints.web.exposure.include=*
# Logging
logging.level.org.springframework=INFO
# logging.level.org.springframework.web=DEBUG
# logging.level.org.springframework.context.annotation=TRACE
# Maximum time static resources should be cached
spring.resources.cache.cachecontrol.max-age=12h

15
target/classes/banner.txt Normal file
View file

@ -0,0 +1,15 @@
|\ _,,,--,,_
/,`.-'`' ._ \-;;,_
_______ __|,4- ) )_ .;.(__`'-'__ ___ __ _ ___ _______
| | '---''(_/._)-'(_\_) | | | | | | | | |
| _ | ___|_ _| | | | | |_| | | | __ _ _
| |_| | |___ | | | | | | | | | | \ \ \ \
| ___| ___| | | | _| |___| | _ | | _| \ \ \ \
| | | |___ | | | |_| | | | | | | |_ ) ) ) )
|___| |_______| |___| |_______|_______|___|_| |__|___|_______| / / / /
==================================================================/_/_/_/
:: Built with Spring Boot :: ${spring-boot.version}

View file

@ -0,0 +1,53 @@
INSERT INTO vets VALUES (1, 'James', 'Carter');
INSERT INTO vets VALUES (2, 'Helen', 'Leary');
INSERT INTO vets VALUES (3, 'Linda', 'Douglas');
INSERT INTO vets VALUES (4, 'Rafael', 'Ortega');
INSERT INTO vets VALUES (5, 'Henry', 'Stevens');
INSERT INTO vets VALUES (6, 'Sharon', 'Jenkins');
INSERT INTO specialties VALUES (1, 'radiology');
INSERT INTO specialties VALUES (2, 'surgery');
INSERT INTO specialties VALUES (3, 'dentistry');
INSERT INTO vet_specialties VALUES (2, 1);
INSERT INTO vet_specialties VALUES (3, 2);
INSERT INTO vet_specialties VALUES (3, 3);
INSERT INTO vet_specialties VALUES (4, 2);
INSERT INTO vet_specialties VALUES (5, 1);
INSERT INTO types VALUES (1, 'cat');
INSERT INTO types VALUES (2, 'dog');
INSERT INTO types VALUES (3, 'lizard');
INSERT INTO types VALUES (4, 'snake');
INSERT INTO types VALUES (5, 'bird');
INSERT INTO types VALUES (6, 'hamster');
INSERT INTO owners VALUES (1, 'George', 'Franklin', '110 W. Liberty St.', 'Madison', '6085551023');
INSERT INTO owners VALUES (2, 'Betty', 'Davis', '638 Cardinal Ave.', 'Sun Prairie', '6085551749');
INSERT INTO owners VALUES (3, 'Eduardo', 'Rodriquez', '2693 Commerce St.', 'McFarland', '6085558763');
INSERT INTO owners VALUES (4, 'Harold', 'Davis', '563 Friendly St.', 'Windsor', '6085553198');
INSERT INTO owners VALUES (5, 'Peter', 'McTavish', '2387 S. Fair Way', 'Madison', '6085552765');
INSERT INTO owners VALUES (6, 'Jean', 'Coleman', '105 N. Lake St.', 'Monona', '6085552654');
INSERT INTO owners VALUES (7, 'Jeff', 'Black', '1450 Oak Blvd.', 'Monona', '6085555387');
INSERT INTO owners VALUES (8, 'Maria', 'Escobito', '345 Maple St.', 'Madison', '6085557683');
INSERT INTO owners VALUES (9, 'David', 'Schroeder', '2749 Blackhawk Trail', 'Madison', '6085559435');
INSERT INTO owners VALUES (10, 'Carlos', 'Estaban', '2335 Independence La.', 'Waunakee', '6085555487');
INSERT INTO pets VALUES (1, 'Leo', '2010-09-07', 1, 1);
INSERT INTO pets VALUES (2, 'Basil', '2012-08-06', 6, 2);
INSERT INTO pets VALUES (3, 'Rosy', '2011-04-17', 2, 3);
INSERT INTO pets VALUES (4, 'Jewel', '2010-03-07', 2, 3);
INSERT INTO pets VALUES (5, 'Iggy', '2010-11-30', 3, 4);
INSERT INTO pets VALUES (6, 'George', '2010-01-20', 4, 5);
INSERT INTO pets VALUES (7, 'Samantha', '2012-09-04', 1, 6);
INSERT INTO pets VALUES (8, 'Max', '2012-09-04', 1, 6);
INSERT INTO pets VALUES (9, 'Lucky', '2011-08-06', 5, 7);
INSERT INTO pets VALUES (10, 'Mulligan', '2007-02-24', 2, 8);
INSERT INTO pets VALUES (11, 'Freddy', '2010-03-09', 5, 9);
INSERT INTO pets VALUES (12, 'Lucky', '2010-06-24', 2, 10);
INSERT INTO pets VALUES (13, 'Sly', '2012-06-08', 1, 10);
INSERT INTO visits VALUES (1, 7, '2013-01-01', 'rabies shot');
INSERT INTO visits VALUES (2, 8, '2013-01-02', 'rabies shot');
INSERT INTO visits VALUES (3, 8, '2013-01-03', 'neutered');
INSERT INTO visits VALUES (4, 7, '2013-01-04', 'spayed');

View file

@ -0,0 +1,64 @@
DROP TABLE vet_specialties IF EXISTS;
DROP TABLE vets IF EXISTS;
DROP TABLE specialties IF EXISTS;
DROP TABLE visits IF EXISTS;
DROP TABLE pets IF EXISTS;
DROP TABLE types IF EXISTS;
DROP TABLE owners IF EXISTS;
CREATE TABLE vets (
id INTEGER IDENTITY PRIMARY KEY,
first_name VARCHAR(30),
last_name VARCHAR(30)
);
CREATE INDEX vets_last_name ON vets (last_name);
CREATE TABLE specialties (
id INTEGER IDENTITY PRIMARY KEY,
name VARCHAR(80)
);
CREATE INDEX specialties_name ON specialties (name);
CREATE TABLE vet_specialties (
vet_id INTEGER NOT NULL,
specialty_id INTEGER NOT NULL
);
ALTER TABLE vet_specialties ADD CONSTRAINT fk_vet_specialties_vets FOREIGN KEY (vet_id) REFERENCES vets (id);
ALTER TABLE vet_specialties ADD CONSTRAINT fk_vet_specialties_specialties FOREIGN KEY (specialty_id) REFERENCES specialties (id);
CREATE TABLE types (
id INTEGER IDENTITY PRIMARY KEY,
name VARCHAR(80)
);
CREATE INDEX types_name ON types (name);
CREATE TABLE owners (
id INTEGER IDENTITY PRIMARY KEY,
first_name VARCHAR(30),
last_name VARCHAR_IGNORECASE(30),
address VARCHAR(255),
city VARCHAR(80),
telephone VARCHAR(20)
);
CREATE INDEX owners_last_name ON owners (last_name);
CREATE TABLE pets (
id INTEGER IDENTITY PRIMARY KEY,
name VARCHAR(30),
birth_date DATE,
type_id INTEGER NOT NULL,
owner_id INTEGER NOT NULL
);
ALTER TABLE pets ADD CONSTRAINT fk_pets_owners FOREIGN KEY (owner_id) REFERENCES owners (id);
ALTER TABLE pets ADD CONSTRAINT fk_pets_types FOREIGN KEY (type_id) REFERENCES types (id);
CREATE INDEX pets_name ON pets (name);
CREATE TABLE visits (
id INTEGER IDENTITY PRIMARY KEY,
pet_id INTEGER NOT NULL,
visit_date DATE,
description VARCHAR(255)
);
ALTER TABLE visits ADD CONSTRAINT fk_visits_pets FOREIGN KEY (pet_id) REFERENCES pets (id);
CREATE INDEX visits_pet_id ON visits (pet_id);

View file

@ -0,0 +1,53 @@
INSERT IGNORE INTO vets VALUES (1, 'James', 'Carter');
INSERT IGNORE INTO vets VALUES (2, 'Helen', 'Leary');
INSERT IGNORE INTO vets VALUES (3, 'Linda', 'Douglas');
INSERT IGNORE INTO vets VALUES (4, 'Rafael', 'Ortega');
INSERT IGNORE INTO vets VALUES (5, 'Henry', 'Stevens');
INSERT IGNORE INTO vets VALUES (6, 'Sharon', 'Jenkins');
INSERT IGNORE INTO specialties VALUES (1, 'radiology');
INSERT IGNORE INTO specialties VALUES (2, 'surgery');
INSERT IGNORE INTO specialties VALUES (3, 'dentistry');
INSERT IGNORE INTO vet_specialties VALUES (2, 1);
INSERT IGNORE INTO vet_specialties VALUES (3, 2);
INSERT IGNORE INTO vet_specialties VALUES (3, 3);
INSERT IGNORE INTO vet_specialties VALUES (4, 2);
INSERT IGNORE INTO vet_specialties VALUES (5, 1);
INSERT IGNORE INTO types VALUES (1, 'cat');
INSERT IGNORE INTO types VALUES (2, 'dog');
INSERT IGNORE INTO types VALUES (3, 'lizard');
INSERT IGNORE INTO types VALUES (4, 'snake');
INSERT IGNORE INTO types VALUES (5, 'bird');
INSERT IGNORE INTO types VALUES (6, 'hamster');
INSERT IGNORE INTO owners VALUES (1, 'George', 'Franklin', '110 W. Liberty St.', 'Madison', '6085551023');
INSERT IGNORE INTO owners VALUES (2, 'Betty', 'Davis', '638 Cardinal Ave.', 'Sun Prairie', '6085551749');
INSERT IGNORE INTO owners VALUES (3, 'Eduardo', 'Rodriquez', '2693 Commerce St.', 'McFarland', '6085558763');
INSERT IGNORE INTO owners VALUES (4, 'Harold', 'Davis', '563 Friendly St.', 'Windsor', '6085553198');
INSERT IGNORE INTO owners VALUES (5, 'Peter', 'McTavish', '2387 S. Fair Way', 'Madison', '6085552765');
INSERT IGNORE INTO owners VALUES (6, 'Jean', 'Coleman', '105 N. Lake St.', 'Monona', '6085552654');
INSERT IGNORE INTO owners VALUES (7, 'Jeff', 'Black', '1450 Oak Blvd.', 'Monona', '6085555387');
INSERT IGNORE INTO owners VALUES (8, 'Maria', 'Escobito', '345 Maple St.', 'Madison', '6085557683');
INSERT IGNORE INTO owners VALUES (9, 'David', 'Schroeder', '2749 Blackhawk Trail', 'Madison', '6085559435');
INSERT IGNORE INTO owners VALUES (10, 'Carlos', 'Estaban', '2335 Independence La.', 'Waunakee', '6085555487');
INSERT IGNORE INTO pets VALUES (1, 'Leo', '2000-09-07', 1, 1);
INSERT IGNORE INTO pets VALUES (2, 'Basil', '2002-08-06', 6, 2);
INSERT IGNORE INTO pets VALUES (3, 'Rosy', '2001-04-17', 2, 3);
INSERT IGNORE INTO pets VALUES (4, 'Jewel', '2000-03-07', 2, 3);
INSERT IGNORE INTO pets VALUES (5, 'Iggy', '2000-11-30', 3, 4);
INSERT IGNORE INTO pets VALUES (6, 'George', '2000-01-20', 4, 5);
INSERT IGNORE INTO pets VALUES (7, 'Samantha', '1995-09-04', 1, 6);
INSERT IGNORE INTO pets VALUES (8, 'Max', '1995-09-04', 1, 6);
INSERT IGNORE INTO pets VALUES (9, 'Lucky', '1999-08-06', 5, 7);
INSERT IGNORE INTO pets VALUES (10, 'Mulligan', '1997-02-24', 2, 8);
INSERT IGNORE INTO pets VALUES (11, 'Freddy', '2000-03-09', 5, 9);
INSERT IGNORE INTO pets VALUES (12, 'Lucky', '2000-06-24', 2, 10);
INSERT IGNORE INTO pets VALUES (13, 'Sly', '2002-06-08', 1, 10);
INSERT IGNORE INTO visits VALUES (1, 7, '2010-03-04', 'rabies shot');
INSERT IGNORE INTO visits VALUES (2, 8, '2011-03-04', 'rabies shot');
INSERT IGNORE INTO visits VALUES (3, 8, '2009-06-04', 'neutered');
INSERT IGNORE INTO visits VALUES (4, 7, '2008-09-04', 'spayed');

View file

@ -0,0 +1,29 @@
================================================================================
=== Spring PetClinic sample application - MySQL Configuration ===
================================================================================
@author Sam Brannen
@author Costin Leau
@author Dave Syer
--------------------------------------------------------------------------------
1) Download and install the MySQL database (e.g., MySQL Community Server 5.1.x),
which can be found here: https://dev.mysql.com/downloads/. Or run the
"docker-compose.yml" from the root of the project (if you have docker installed
locally):
$ docker-compose up
...
mysql_1_eedb4818d817 | MySQL init process done. Ready for start up.
...
2) Create the PetClinic database and user by executing the "db/mysql/{schema,data}.sql"
scripts (or set "spring.datasource.initialize=always" the first time you run the app).
3) Run the app with `spring.profiles.active=mysql` (e.g. as a System property via the command
line, but any way that sets that property in a Spring Boot app should work).
N.B. the "petclinic" database has to exist for the app to work with the JDBC URL value
as it is configured by default. This condition is taken care of by the docker-compose
configuration provided, or by the `schema.sql` if you can run that as root.

View file

@ -0,0 +1,65 @@
CREATE DATABASE IF NOT EXISTS petclinic;
ALTER DATABASE petclinic
DEFAULT CHARACTER SET utf8
DEFAULT COLLATE utf8_general_ci;
GRANT ALL PRIVILEGES ON petclinic.* TO pc@localhost IDENTIFIED BY 'pc';
USE petclinic;
CREATE TABLE IF NOT EXISTS vets (
id INT(4) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
first_name VARCHAR(30),
last_name VARCHAR(30),
INDEX(last_name)
) engine=InnoDB;
CREATE TABLE IF NOT EXISTS specialties (
id INT(4) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(80),
INDEX(name)
) engine=InnoDB;
CREATE TABLE IF NOT EXISTS vet_specialties (
vet_id INT(4) UNSIGNED NOT NULL,
specialty_id INT(4) UNSIGNED NOT NULL,
FOREIGN KEY (vet_id) REFERENCES vets(id),
FOREIGN KEY (specialty_id) REFERENCES specialties(id),
UNIQUE (vet_id,specialty_id)
) engine=InnoDB;
CREATE TABLE IF NOT EXISTS types (
id INT(4) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(80),
INDEX(name)
) engine=InnoDB;
CREATE TABLE IF NOT EXISTS owners (
id INT(4) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
first_name VARCHAR(30),
last_name VARCHAR(30),
address VARCHAR(255),
city VARCHAR(80),
telephone VARCHAR(20),
INDEX(last_name)
) engine=InnoDB;
CREATE TABLE IF NOT EXISTS pets (
id INT(4) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(30),
birth_date DATE,
type_id INT(4) UNSIGNED NOT NULL,
owner_id INT(4) UNSIGNED NOT NULL,
INDEX(name),
FOREIGN KEY (owner_id) REFERENCES owners(id),
FOREIGN KEY (type_id) REFERENCES types(id)
) engine=InnoDB;
CREATE TABLE IF NOT EXISTS visits (
id INT(4) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
pet_id INT(4) UNSIGNED NOT NULL,
visit_date DATE,
description VARCHAR(255),
FOREIGN KEY (pet_id) REFERENCES pets(id)
) engine=InnoDB;

View file

@ -0,0 +1,23 @@
#Generated by Git-Commit-Id-Plugin
#Wed Sep 11 06:41:53 CEST 2019
git.branch=master
git.build.host=cs-6000-devshell-vm-27e2d0ba-114c-4f04-93b8-ef7e28aaee9f
git.build.time=2019-09-11T06\:41\:53+0200
git.build.user.email=mnieuwstraten@qualogy.com
git.build.user.name=mnieuwstraten
git.build.version=2.1.0.BUILD-SNAPSHOT
git.closest.tag.commit.count=
git.closest.tag.name=
git.commit.id=d6bdc13bdbb08fd1f6c769dfdef11786a0971f90
git.commit.id.abbrev=d6bdc13
git.commit.id.describe=d6bdc13
git.commit.id.describe-short=d6bdc13
git.commit.message.full=Move Push-to-PWSX button on the next line
git.commit.message.short=Move Push-to-PWSX button on the next line
git.commit.time=2019-08-27T15\:28\:19+0200
git.commit.user.email=aboyko@pivotal.io
git.commit.user.name=Alex Boyko
git.dirty=false
git.remote.origin.url=https\://github.com/mnieuwstraten/spring-petclinic.git
git.tags=
git.total.commit.count=660

View file

@ -0,0 +1,8 @@
welcome=Welcome
required=is required
notFound=has not been found
duplicate=is already in use
nonNumeric=must be all numeric
duplicateFormSubmission=Duplicate form submission is not allowed
typeMismatch.date=invalid date
typeMismatch.birthDate=invalid date

View file

@ -0,0 +1,8 @@
welcome=Willkommen
required=muss angegeben werden
notFound=wurde nicht gefunden
duplicate=ist bereits vergeben
nonNumeric=darf nur numerisch sein
duplicateFormSubmission=Wiederholtes Absenden des Formulars ist nicht erlaubt
typeMismatch.date=ungültiges Datum
typeMismatch.birthDate=ungültiges Datum

View file

@ -0,0 +1 @@
# This file is intentionally empty. Message look-ups will fall back to the default "messages.properties" file.

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

After

Width:  |  Height:  |  Size: 83 KiB

File diff suppressed because it is too large Load diff

After

Width:  |  Height:  |  Size: 362 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 528 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

View file

@ -0,0 +1,11 @@
<!DOCTYPE html>
<html xmlns:th="https://www.thymeleaf.org" th:replace="~{fragments/layout :: layout (~{::body},'error')}">
<body>
<img src="../static/resources/images/pets.png" th:src="@{/resources/images/pets.png}"/>
<h2>Something happened...</h2>
<p th:text="${message}">Exception message</p>
</body>
</html>

View file

@ -0,0 +1,30 @@
<html>
<body>
<form>
<th:block th:fragment="input (label, name, type)">
<div th:with="valid=${!#fields.hasErrors(name)}"
th:class="${'form-group' + (valid ? '' : ' has-error')}"
class="form-group">
<label class="col-sm-2 control-label" th:text="${label}">Label</label>
<div class="col-sm-10">
<div th:switch="${type}">
<input th:case="'text'" class="form-control" type="text" th:field="*{__${name}__}" />
<input th:case="'date'" class="form-control" type="text" th:field="*{__${name}__}"
placeholder="YYYY-MM-DD" title="Enter a date in this format: YYYY-MM-DD"
pattern="(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))"/>
</div>
<span th:if="${valid}"
class="glyphicon glyphicon-ok form-control-feedback"
aria-hidden="true"></span>
<th:block th:if="${!valid}">
<span
class="glyphicon glyphicon-remove form-control-feedback"
aria-hidden="true"></span>
<span class="help-inline" th:errors="*{__${name}__}">Error</span>
</th:block>
</div>
</div>
</th:block>
</form>
</body>
</html>

View file

@ -0,0 +1,94 @@
<!doctype html>
<html th:fragment="layout (template, menu)">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="shortcut icon" type="image/x-icon" th:href="@{/resources/images/favicon.png}">
<title>PetClinic :: a Spring Framework demonstration</title>
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
<link rel="stylesheet" th:href="@{/resources/css/petclinic.css}"/>
</head>
<body>
<nav class="navbar navbar-default" role="navigation">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand" th:href="@{/}"><span></span></a>
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#main-navbar">
<span class="sr-only"><os-p>Toggle navigation</os-p></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="navbar-collapse collapse" id="main-navbar">
<ul class="nav navbar-nav navbar-right">
<li th:fragment="menuItem (path,active,title,glyph,text)" class="active" th:class="${active==menu ? 'active' : ''}">
<a th:href="@{__${path}__}" th:title="${title}">
<span th:class="'glyphicon glyphicon-'+${glyph}" class="glyphicon glyphicon-home" aria-hidden="true"></span>
<span th:text="${text}">Template</span>
</a>
</li>
<li th:replace="::menuItem ('/','home','home page','home','Home')">
<span class="glyphicon glyphicon-home" aria-hidden="true"></span>
<span>Home</span>
</li>
<li th:replace="::menuItem ('/owners/find','owners','find owners','search','Find owners')">
<span class="glyphicon glyphicon-search" aria-hidden="true"></span>
<span>Find owners</span>
</li>
<li th:replace="::menuItem ('/vets.html','vets','veterinarians','th-list','Veterinarians')">
<span class="glyphicon glyphicon-th-list" aria-hidden="true"></span>
<span>Veterinarians</span>
</li>
<li th:replace="::menuItem ('/oups','error','trigger a RuntimeException to see how it is handled','warning-sign','Error')">
<span class="glyphicon glyphicon-warning-sign" aria-hidden="true"></span>
<span>Error</span>
</li>
</ul>
</div>
</div>
</nav>
<div class="container-fluid">
<div class="container xd-container">
<th:block th:include="${template}"/>
<br/>
<br/>
<div class="container">
<div class="row">
<div class="col-12 text-center">
<img src="../static/resources/images/spring-pivotal-logo.png" th:src="@{/resources/images/spring-pivotal-logo.png}"
alt="Sponsored by Pivotal"/></div>
</div>
</div>
</div>
</div>
<script th:src="@{/webjars/jquery/jquery.min.js}"></script>
<script th:src="@{/webjars/jquery-ui/jquery-ui.min.js}"></script>
<script th:src="@{/webjars/bootstrap/js/bootstrap.min.js}"></script>
</body>
</html>

View file

@ -0,0 +1,29 @@
<html>
<body>
<form>
<th:block th:fragment="select (label, name, items)">
<div th:with="valid=${!#fields.hasErrors(name)}"
th:class="${'form-group' + (valid ? '' : ' has-error')}"
class="form-group">
<label class="col-sm-2 control-label" th:text="${label}">Label</label>
<div class="col-sm-10">
<select th:field="*{__${name}__}">
<option th:each="item : ${items}" th:value="${item}"
th:text="${item}">dog</option>
</select>
<span th:if="${valid}"
class="glyphicon glyphicon-ok form-control-feedback"
aria-hidden="true"></span>
<th:block th:if="${!valid}">
<span
class="glyphicon glyphicon-remove form-control-feedback"
aria-hidden="true"></span>
<span class="help-inline" th:errors="*{__${name}__}">Error</span>
</th:block>
</div>
</div>
</th:block>
</form>
</body>
</html>

View file

@ -0,0 +1,30 @@
<html xmlns:th="https://www.thymeleaf.org"
th:replace="~{fragments/layout :: layout (~{::body},'owners')}">
<body>
<h2>Owner</h2>
<form th:object="${owner}" class="form-horizontal" id="add-owner-form" method="post">
<div class="form-group has-feedback">
<input
th:replace="~{fragments/inputField :: input ('First Name', 'firstName', 'text')}" />
<input
th:replace="~{fragments/inputField :: input ('Last Name', 'lastName', 'text')}" />
<input
th:replace="~{fragments/inputField :: input ('Address', 'address', 'text')}" />
<input
th:replace="~{fragments/inputField :: input ('City', 'city', 'text')}" />
<input
th:replace="~{fragments/inputField :: input ('Telephone', 'telephone', 'text')}" />
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button
th:with="text=${owner['new']} ? 'Add Owner' : 'Update Owner'"
class="btn btn-default" type="submit" th:text="${text}">Add
Owner</button>
</div>
</div>
</form>
</body>
</html>

View file

@ -0,0 +1,35 @@
<html xmlns:th="https://www.thymeleaf.org"
th:replace="~{fragments/layout :: layout (~{::body},'owners')}">
<body>
<h2>Find Owners</h2>
<form th:object="${owner}" th:action="@{/owners}" method="get"
class="form-horizontal" id="search-owner-form">
<div class="form-group">
<div class="control-group" id="lastNameGroup">
<label class="col-sm-2 control-label">Last name </label>
<div class="col-sm-10">
<input class="form-control" th:field="*{lastName}" size="30"
maxlength="80" /> <span class="help-inline"><div
th:if="${#fields.hasAnyErrors()}">
<p th:each="err : ${#fields.allErrors()}" th:text="${err}">Error</p>
</div></span>
</div>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-default">Find
Owner</button>
</div>
</div>
</form>
<br />
<a class="btn btn-default" th:href="@{/owners/new}">Add Owner</a>
</body>
</html>

View file

@ -0,0 +1,83 @@
<!DOCTYPE html>
<html xmlns:th="https://www.thymeleaf.org"
th:replace="~{fragments/layout :: layout (~{::body},'owners')}">
<body>
<h2>Owner Information</h2>
<table class="table table-striped" th:object="${owner}">
<tr>
<th>Name</th>
<td><b th:text="*{firstName + ' ' + lastName}"></b></td>
</tr>
<tr>
<th>Address</th>
<td th:text="*{address}" /></td>
</tr>
<tr>
<th>City</th>
<td th:text="*{city}" /></td>
</tr>
<tr>
<th>Telephone</th>
<td th:text="*{telephone}" /></td>
</tr>
</table>
<a th:href="@{{id}/edit(id=${owner.id})}" class="btn btn-default">Edit
Owner</a>
<a th:href="@{{id}/pets/new(id=${owner.id})}" class="btn btn-default">Add
New Pet</a>
<br />
<br />
<br />
<h2>Pets and Visits</h2>
<table class="table table-striped">
<tr th:each="pet : ${owner.pets}">
<td valign="top">
<dl class="dl-horizontal">
<dt>Name</dt>
<dd th:text="${pet.name}" /></dd>
<dt>Birth Date</dt>
<dd
th:text="${#temporals.format(pet.birthDate, 'yyyy-MM-dd')}" /></dd>
<dt>Type</dt>
<dd th:text="${pet.type}" /></dd>
</dl>
</td>
<td valign="top">
<table class="table-condensed">
<thead>
<tr>
<th>Visit Date</th>
<th>Description</th>
</tr>
</thead>
<tr th:each="visit : ${pet.visits}">
<td th:text="${#temporals.format(visit.date, 'yyyy-MM-dd')}"></td>
<td th:text="${visit?.description}"></td>
</tr>
<tr>
<td><a
th:href="@{{ownerId}/pets/{petId}/edit(ownerId=${owner.id},petId=${pet.id})}">Edit
Pet</a></td>
<td><a
th:href="@{{ownerId}/pets/{petId}/visits/new(ownerId=${owner.id},petId=${pet.id})}">Add
Visit</a></td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>

View file

@ -0,0 +1,33 @@
<!DOCTYPE html>
<html xmlns:th="https://www.thymeleaf.org" th:replace="~{fragments/layout :: layout (~{::body},'owners')}">
<body>
<h2>Owners</h2>
<table id="owners" class="table table-striped">
<thead>
<tr>
<th style="width: 150px;">Name</th>
<th style="width: 200px;">Address</th>
<th>City</th>
<th style="width: 120px">Telephone</th>
<th>Pets</th>
</tr>
</thead>
<tbody>
<tr th:each="owner : ${selections}">
<td>
<a th:href="@{/owners/__${owner.id}__}" th:text="${owner.firstName + ' ' + owner.lastName}"/></a>
</td>
<td th:text="${owner.address}"/>
<td th:text="${owner.city}"/>
<td th:text="${owner.telephone}"/>
<td><span th:each="pet : ${owner.pets}" th:text="${pet.name} "/></td>
</tr>
</tbody>
</table>
</body>
</html>

View file

@ -0,0 +1,38 @@
<html xmlns:th="https://www.thymeleaf.org"
th:replace="~{fragments/layout :: layout (~{::body},'owners')}">
<body>
<h2>
<th:block th:if="${pet['new']}">New </th:block>
Pet
</h2>
<form th:object="${pet}" class="form-horizontal" method="post">
<input type="hidden" name="id" th:value="*{id}" />
<div class="form-group has-feedback">
<div class="form-group">
<label class="col-sm-2 control-label">Owner</label>
<div class="col-sm-10">
<span th:text="${pet.owner?.firstName + ' ' + pet.owner?.lastName}" />
</div>
</div>
<input
th:replace="~{fragments/inputField :: input ('Name', 'name', 'text')}" />
<input
th:replace="~{fragments/inputField :: input ('Birth Date', 'birthDate', 'date')}" />
<input
th:replace="~{fragments/selectField :: select ('Type', 'type', ${types})}" />
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button
th:with="text=${pet['new']} ? 'Add Pet' : 'Update Pet'"
class="btn btn-default" type="submit" th:text="${text}">Add
Pet</button>
</div>
</div>
</form>
</body>
</html>

View file

@ -0,0 +1,61 @@
<html xmlns:th="https://www.thymeleaf.org"
th:replace="~{fragments/layout :: layout (~{::body},'owners')}">
<body>
<h2>
<th:block th:if="${visit['new']}">New </th:block>
Visit
</h2>
<b>Pet</b>
<table class="table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Birth Date</th>
<th>Type</th>
<th>Owner</th>
</tr>
</thead>
<tr>
<td th:text="${pet.name}" /></td>
<td
th:text="${#temporals.format(pet.birthDate, 'yyyy-MM-dd')}" /></td>
<td th:text="${pet.type}" /></td>
<td
th:text="${pet.owner?.firstName + ' ' + pet.owner?.lastName}" /></td>
</tr>
</table>
<form th:object="${visit}" class="form-horizontal" method="post">
<div class="form-group has-feedback">
<input
th:replace="~{fragments/inputField :: input ('Date', 'date', 'date')}" />
<input
th:replace="~{fragments/inputField :: input ('Description', 'description', 'text')}" />
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<input type="hidden" name="petId" th:value="${pet.id}" />
<button class="btn btn-default" type="submit">Add Visit</button>
</div>
</div>
</form>
<br />
<b>Previous Visits</b>
<table class="table table-striped">
<tr>
<th>Date</th>
<th>Description</th>
</tr>
<tr th:if="${!visit['new']}" th:each="visit : ${pet.visits}">
<td th:text="${#temporals.format(visit.date, 'yyyy-MM-dd')}" /></td>
<td th:text=" ${visit.description}" /></td>
</tr>
</table>
</body>
</html>

View file

@ -0,0 +1,27 @@
<!DOCTYPE html>
<html xmlns:th="https://www.thymeleaf.org"
th:replace="~{fragments/layout :: layout (~{::body},'vets')}">
<body>
<h2>Veterinarians</h2>
<table id="vets" class="table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Specialties</th>
</tr>
</thead>
<tbody>
<tr th:each="vet : ${vets.vetList}">
<td th:text="${vet.firstName + ' ' + vet.lastName}"></td>
<td><span th:each="specialty : ${vet.specialties}"
th:text="${specialty.name + ' '}" /> <span
th:if="${vet.nrOfSpecialties == 0}">none</span></td>
</tr>
</tbody>
</table>
</body>
</html>

View file

@ -0,0 +1,16 @@
<!DOCTYPE html>
<html xmlns:th="https://www.thymeleaf.org" th:replace="~{fragments/layout :: layout (~{::body},'home')}">
<body>
<h2 th:text="#{welcome}">Welcome</h2>
<div class="row">
<div class="col-md-12">
<img class="img-responsive" src="../static/resources/images/pets.png" th:src="@{/resources/images/pets.png}"/>
</div>
</div>
</body>
</html>

BIN
target/jacoco.exec Normal file

Binary file not shown.

View file

@ -0,0 +1,3 @@
version=2.1.0.BUILD-SNAPSHOT
groupId=org.springframework.samples
artifactId=spring-petclinic

View file

@ -0,0 +1,24 @@
org/springframework/samples/petclinic/visit/VisitRepository.class
org/springframework/samples/petclinic/system/CrashController.class
org/springframework/samples/petclinic/model/Person.class
org/springframework/samples/petclinic/system/WelcomeController.class
org/springframework/samples/petclinic/PetClinicApplication.class
org/springframework/samples/petclinic/vet/Specialty.class
org/springframework/samples/petclinic/owner/Pet.class
org/springframework/samples/petclinic/owner/PetType.class
org/springframework/samples/petclinic/owner/OwnerController.class
org/springframework/samples/petclinic/owner/PetTypeFormatter.class
org/springframework/samples/petclinic/system/CacheConfiguration.class
org/springframework/samples/petclinic/visit/Visit.class
org/springframework/samples/petclinic/owner/Owner.class
org/springframework/samples/petclinic/vet/Vet.class
org/springframework/samples/petclinic/owner/OwnerRepository.class
org/springframework/samples/petclinic/vet/VetRepository.class
org/springframework/samples/petclinic/owner/PetRepository.class
org/springframework/samples/petclinic/model/BaseEntity.class
org/springframework/samples/petclinic/owner/PetValidator.class
org/springframework/samples/petclinic/vet/VetController.class
org/springframework/samples/petclinic/owner/PetController.class
org/springframework/samples/petclinic/vet/Vets.class
org/springframework/samples/petclinic/model/NamedEntity.class
org/springframework/samples/petclinic/owner/VisitController.class

View file

@ -0,0 +1,25 @@
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/system/CrashController.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/owner/PetValidator.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/PetClinicApplication.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/vet/Specialty.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/owner/Owner.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/system/WelcomeController.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/vet/VetController.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/owner/PetType.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/owner/PetController.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/owner/Pet.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/owner/VisitController.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/visit/Visit.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/model/package-info.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/owner/PetTypeFormatter.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/owner/PetRepository.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/model/BaseEntity.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/vet/Vets.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/vet/Vet.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/model/Person.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/vet/VetRepository.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/model/NamedEntity.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/visit/VisitRepository.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/main/java/org/springframework/samples/petclinic/system/CacheConfiguration.java

View file

@ -0,0 +1,13 @@
org/springframework/samples/petclinic/model/ValidatorTests.class
org/springframework/samples/petclinic/system/CrashControllerTests.class
org/springframework/samples/petclinic/owner/VisitControllerTests.class
org/springframework/samples/petclinic/owner/PetControllerTests.class
org/springframework/samples/petclinic/service/ClinicServiceTests.class
org/springframework/samples/petclinic/owner/PetTypeFormatterTests$2.class
org/springframework/samples/petclinic/owner/PetTypeFormatterTests$1.class
org/springframework/samples/petclinic/vet/VetTests.class
org/springframework/samples/petclinic/vet/VetControllerTests.class
org/springframework/samples/petclinic/service/EntityUtils.class
org/springframework/samples/petclinic/owner/OwnerControllerTests.class
org/springframework/samples/petclinic/PetclinicIntegrationTests.class
org/springframework/samples/petclinic/owner/PetTypeFormatterTests.class

View file

@ -0,0 +1,11 @@
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/test/java/org/springframework/samples/petclinic/vet/VetControllerTests.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/test/java/org/springframework/samples/petclinic/owner/OwnerControllerTests.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/test/java/org/springframework/samples/petclinic/PetclinicIntegrationTests.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/test/java/org/springframework/samples/petclinic/service/EntityUtils.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/test/java/org/springframework/samples/petclinic/system/CrashControllerTests.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/test/java/org/springframework/samples/petclinic/model/ValidatorTests.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/test/java/org/springframework/samples/petclinic/service/ClinicServiceTests.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/test/java/org/springframework/samples/petclinic/vet/VetTests.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/test/java/org/springframework/samples/petclinic/owner/PetTypeFormatterTests.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/test/java/org/springframework/samples/petclinic/owner/VisitControllerTests.java
/home/mnieuwstraten/git_mnieuwstraten/spring-petclinic/src/test/java/org/springframework/samples/petclinic/owner/PetControllerTests.java

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 709 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 586 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 351 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 193 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 B

View file

@ -0,0 +1,13 @@
/* Pretty printing styles. Used with prettify.js. */
.str { color: #2A00FF; }
.kwd { color: #7F0055; font-weight:bold; }
.com { color: #3F5FBF; }
.typ { color: #606; }
.lit { color: #066; }
.pun { color: #660; }
.pln { color: #000; }
.tag { color: #008; }
.atn { color: #606; }
.atv { color: #080; }
.dec { color: #606; }

File diff suppressed because it is too large Load diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 B

View file

@ -0,0 +1,243 @@
body, td {
font-family:sans-serif;
font-size:10pt;
}
h1 {
font-weight:bold;
font-size:18pt;
}
.breadcrumb {
border:#d6d3ce 1px solid;
padding:2px 4px 2px 4px;
}
.breadcrumb .info {
float:right;
}
.breadcrumb .info a {
margin-left:8px;
}
.el_report {
padding-left:18px;
background-image:url(report.gif);
background-position:left center;
background-repeat:no-repeat;
}
.el_group {
padding-left:18px;
background-image:url(group.gif);
background-position:left center;
background-repeat:no-repeat;
}
.el_bundle {
padding-left:18px;
background-image:url(bundle.gif);
background-position:left center;
background-repeat:no-repeat;
}
.el_package {
padding-left:18px;
background-image:url(package.gif);
background-position:left center;
background-repeat:no-repeat;
}
.el_class {
padding-left:18px;
background-image:url(class.gif);
background-position:left center;
background-repeat:no-repeat;
}
.el_source {
padding-left:18px;
background-image:url(source.gif);
background-position:left center;
background-repeat:no-repeat;
}
.el_method {
padding-left:18px;
background-image:url(method.gif);
background-position:left center;
background-repeat:no-repeat;
}
.el_session {
padding-left:18px;
background-image:url(session.gif);
background-position:left center;
background-repeat:no-repeat;
}
pre.source {
border:#d6d3ce 1px solid;
font-family:monospace;
}
pre.source ol {
margin-bottom: 0px;
margin-top: 0px;
}
pre.source li {
border-left: 1px solid #D6D3CE;
color: #A0A0A0;
padding-left: 0px;
}
pre.source span.fc {
background-color:#ccffcc;
}
pre.source span.nc {
background-color:#ffaaaa;
}
pre.source span.pc {
background-color:#ffffcc;
}
pre.source span.bfc {
background-image: url(branchfc.gif);
background-repeat: no-repeat;
background-position: 2px center;
}
pre.source span.bfc:hover {
background-color:#80ff80;
}
pre.source span.bnc {
background-image: url(branchnc.gif);
background-repeat: no-repeat;
background-position: 2px center;
}
pre.source span.bnc:hover {
background-color:#ff8080;
}
pre.source span.bpc {
background-image: url(branchpc.gif);
background-repeat: no-repeat;
background-position: 2px center;
}
pre.source span.bpc:hover {
background-color:#ffff80;
}
table.coverage {
empty-cells:show;
border-collapse:collapse;
}
table.coverage thead {
background-color:#e0e0e0;
}
table.coverage thead td {
white-space:nowrap;
padding:2px 14px 0px 6px;
border-bottom:#b0b0b0 1px solid;
}
table.coverage thead td.bar {
border-left:#cccccc 1px solid;
}
table.coverage thead td.ctr1 {
text-align:right;
border-left:#cccccc 1px solid;
}
table.coverage thead td.ctr2 {
text-align:right;
padding-left:2px;
}
table.coverage thead td.sortable {
cursor:pointer;
background-image:url(sort.gif);
background-position:right center;
background-repeat:no-repeat;
}
table.coverage thead td.up {
background-image:url(up.gif);
}
table.coverage thead td.down {
background-image:url(down.gif);
}
table.coverage tbody td {
white-space:nowrap;
padding:2px 6px 2px 6px;
border-bottom:#d6d3ce 1px solid;
}
table.coverage tbody tr:hover {
background: #f0f0d0 !important;
}
table.coverage tbody td.bar {
border-left:#e8e8e8 1px solid;
}
table.coverage tbody td.ctr1 {
text-align:right;
padding-right:14px;
border-left:#e8e8e8 1px solid;
}
table.coverage tbody td.ctr2 {
text-align:right;
padding-right:14px;
padding-left:2px;
}
table.coverage tfoot td {
white-space:nowrap;
padding:2px 6px 2px 6px;
}
table.coverage tfoot td.bar {
border-left:#e8e8e8 1px solid;
}
table.coverage tfoot td.ctr1 {
text-align:right;
padding-right:14px;
border-left:#e8e8e8 1px solid;
}
table.coverage tfoot td.ctr2 {
text-align:right;
padding-right:14px;
padding-left:2px;
}
.footer {
margin-top:20px;
border-top:#d6d3ce 1px solid;
padding-top:2px;
font-size:8pt;
color:#a0a0a0;
}
.footer a {
color:#a0a0a0;
}
.right {
float:right;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 363 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 213 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 B

View file

@ -0,0 +1,147 @@
/*******************************************************************************
* Copyright (c) 2009, 2018 Mountainminds GmbH & Co. KG and Contributors
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Marc R. Hoffmann - initial API and implementation
*
*******************************************************************************/
(function () {
/**
* Sets the initial sorting derived from the hash.
*
* @param linkelementids
* list of element ids to search for links to add sort inidcator
* hash links
*/
function initialSort(linkelementids) {
window.linkelementids = linkelementids;
var hash = window.location.hash;
if (hash) {
var m = hash.match(/up-./);
if (m) {
var header = window.document.getElementById(m[0].charAt(3));
if (header) {
sortColumn(header, true);
}
return;
}
var m = hash.match(/dn-./);
if (m) {
var header = window.document.getElementById(m[0].charAt(3));
if (header) {
sortColumn(header, false);
}
return
}
}
}
/**
* Sorts the columns with the given header dependening on the current sort state.
*/
function toggleSort(header) {
var sortup = header.className.indexOf('down ') == 0;
sortColumn(header, sortup);
}
/**
* Sorts the columns with the given header in the given direction.
*/
function sortColumn(header, sortup) {
var table = header.parentNode.parentNode.parentNode;
var body = table.tBodies[0];
var colidx = getNodePosition(header);
resetSortedStyle(table);
var rows = body.rows;
var sortedrows = [];
for (var i = 0; i < rows.length; i++) {
r = rows[i];
sortedrows[parseInt(r.childNodes[colidx].id.slice(1))] = r;
}
var hash;
if (sortup) {
for (var i = sortedrows.length - 1; i >= 0; i--) {
body.appendChild(sortedrows[i]);
}
header.className = 'up ' + header.className;
hash = 'up-' + header.id;
} else {
for (var i = 0; i < sortedrows.length; i++) {
body.appendChild(sortedrows[i]);
}
header.className = 'down ' + header.className;
hash = 'dn-' + header.id;
}
setHash(hash);
}
/**
* Adds the sort indicator as a hash to the document URL and all links.
*/
function setHash(hash) {
window.document.location.hash = hash;
ids = window.linkelementids;
for (var i = 0; i < ids.length; i++) {
setHashOnAllLinks(document.getElementById(ids[i]), hash);
}
}
/**
* Extend all links within the given tag with the given hash.
*/
function setHashOnAllLinks(tag, hash) {
links = tag.getElementsByTagName("a");
for (var i = 0; i < links.length; i++) {
var a = links[i];
var href = a.href;
var hashpos = href.indexOf("#");
if (hashpos != -1) {
href = href.substring(0, hashpos);
}
a.href = href + "#" + hash;
}
}
/**
* Calculates the position of a element within its parent.
*/
function getNodePosition(element) {
var pos = -1;
while (element) {
element = element.previousSibling;
pos++;
}
return pos;
}
/**
* Remove the sorting indicator style from all headers.
*/
function resetSortedStyle(table) {
for (var c = table.tHead.firstChild.firstChild; c; c = c.nextSibling) {
if (c.className) {
if (c.className.indexOf('down ') == 0) {
c.className = c.className.slice(5);
}
if (c.className.indexOf('up ') == 0) {
c.className = c.className.slice(3);
}
}
}
}
window['initialSort'] = initialSort;
window['toggleSort'] = toggleSort;
})();

Binary file not shown.

After

Width:  |  Height:  |  Size: 354 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 B

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,21 @@
GROUP,PACKAGE,CLASS,INSTRUCTION_MISSED,INSTRUCTION_COVERED,BRANCH_MISSED,BRANCH_COVERED,LINE_MISSED,LINE_COVERED,COMPLEXITY_MISSED,COMPLEXITY_COVERED,METHOD_MISSED,METHOD_COVERED
petclinic,org.springframework.samples.petclinic,PetClinicApplication,5,3,0,0,2,1,1,1,1,1
petclinic,org.springframework.samples.petclinic.model,BaseEntity,0,17,0,2,0,5,0,5,0,4
petclinic,org.springframework.samples.petclinic.model,NamedEntity,0,13,0,0,0,5,0,4,0,4
petclinic,org.springframework.samples.petclinic.model,Person,0,17,0,0,0,7,0,5,0,5
petclinic,org.springframework.samples.petclinic.vet,VetController,0,37,0,0,0,10,0,3,0,3
petclinic,org.springframework.samples.petclinic.vet,Vet,4,41,0,2,2,10,1,6,1,5
petclinic,org.springframework.samples.petclinic.vet,Specialty,0,3,0,0,0,1,0,1,0,1
petclinic,org.springframework.samples.petclinic.vet,Vets,0,14,0,2,0,4,0,3,0,2
petclinic,org.springframework.samples.petclinic.visit,Visit,4,23,0,0,2,10,1,6,1,6
petclinic,org.springframework.samples.petclinic.owner,VisitController,0,51,0,2,0,16,0,6,0,5
petclinic,org.springframework.samples.petclinic.owner,Owner,31,110,8,4,9,28,7,13,2,12
petclinic,org.springframework.samples.petclinic.owner,OwnerController,0,144,0,10,0,36,0,14,0,9
petclinic,org.springframework.samples.petclinic.owner,PetType,0,3,0,0,0,1,0,1,0,1
petclinic,org.springframework.samples.petclinic.owner,PetTypeFormatter,0,44,0,4,0,10,0,5,0,3
petclinic,org.springframework.samples.petclinic.owner,Pet,9,62,1,1,3,19,2,10,1,10
petclinic,org.springframework.samples.petclinic.owner,PetController,5,115,3,7,1,31,3,11,0,9
petclinic,org.springframework.samples.petclinic.owner,PetValidator,5,36,2,6,1,10,2,5,0,3
petclinic,org.springframework.samples.petclinic.system,WelcomeController,2,3,0,0,1,1,1,1,1,1
petclinic,org.springframework.samples.petclinic.system,CacheConfiguration,0,19,0,0,0,5,0,4,0,4
petclinic,org.springframework.samples.petclinic.system,CrashController,5,3,0,0,1,1,1,1,1,1
1 GROUP PACKAGE CLASS INSTRUCTION_MISSED INSTRUCTION_COVERED BRANCH_MISSED BRANCH_COVERED LINE_MISSED LINE_COVERED COMPLEXITY_MISSED COMPLEXITY_COVERED METHOD_MISSED METHOD_COVERED
2 petclinic org.springframework.samples.petclinic PetClinicApplication 5 3 0 0 2 1 1 1 1 1
3 petclinic org.springframework.samples.petclinic.model BaseEntity 0 17 0 2 0 5 0 5 0 4
4 petclinic org.springframework.samples.petclinic.model NamedEntity 0 13 0 0 0 5 0 4 0 4
5 petclinic org.springframework.samples.petclinic.model Person 0 17 0 0 0 7 0 5 0 5
6 petclinic org.springframework.samples.petclinic.vet VetController 0 37 0 0 0 10 0 3 0 3
7 petclinic org.springframework.samples.petclinic.vet Vet 4 41 0 2 2 10 1 6 1 5
8 petclinic org.springframework.samples.petclinic.vet Specialty 0 3 0 0 0 1 0 1 0 1
9 petclinic org.springframework.samples.petclinic.vet Vets 0 14 0 2 0 4 0 3 0 2
10 petclinic org.springframework.samples.petclinic.visit Visit 4 23 0 0 2 10 1 6 1 6
11 petclinic org.springframework.samples.petclinic.owner VisitController 0 51 0 2 0 16 0 6 0 5
12 petclinic org.springframework.samples.petclinic.owner Owner 31 110 8 4 9 28 7 13 2 12
13 petclinic org.springframework.samples.petclinic.owner OwnerController 0 144 0 10 0 36 0 14 0 9
14 petclinic org.springframework.samples.petclinic.owner PetType 0 3 0 0 0 1 0 1 0 1
15 petclinic org.springframework.samples.petclinic.owner PetTypeFormatter 0 44 0 4 0 10 0 5 0 3
16 petclinic org.springframework.samples.petclinic.owner Pet 9 62 1 1 3 19 2 10 1 10
17 petclinic org.springframework.samples.petclinic.owner PetController 5 115 3 7 1 31 3 11 0 9
18 petclinic org.springframework.samples.petclinic.owner PetValidator 5 36 2 6 1 10 2 5 0 3
19 petclinic org.springframework.samples.petclinic.system WelcomeController 2 3 0 0 1 1 1 1 1 1
20 petclinic org.springframework.samples.petclinic.system CacheConfiguration 0 19 0 0 0 5 0 4 0 4
21 petclinic org.springframework.samples.petclinic.system CrashController 5 3 0 0 1 1 1 1 1 1

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>BaseEntity</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">petclinic</a> &gt; <a href="index.html" class="el_package">org.springframework.samples.petclinic.model</a> &gt; <span class="el_class">BaseEntity</span></div><h1>BaseEntity</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">0 of 17</td><td class="ctr2">100%</td><td class="bar">0 of 2</td><td class="ctr2">100%</td><td class="ctr1">0</td><td class="ctr2">5</td><td class="ctr1">0</td><td class="ctr2">5</td><td class="ctr1">0</td><td class="ctr2">4</td></tr></tfoot><tbody><tr><td id="a2"><a href="BaseEntity.java.html#L47" class="el_method">isNew()</a></td><td class="bar" id="b0"><img src="../jacoco-resources/greenbar.gif" width="120" height="10" title="7" alt="7"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d0"><img src="../jacoco-resources/greenbar.gif" width="120" height="10" title="2" alt="2"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f0">0</td><td class="ctr2" id="g0">2</td><td class="ctr1" id="h0">0</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j0">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a3"><a href="BaseEntity.java.html#L43" class="el_method">setId(Integer)</a></td><td class="bar" id="b1"><img src="../jacoco-resources/greenbar.gif" width="68" height="10" title="4" alt="4"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i0">2</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a0"><a href="BaseEntity.java.html#L33" class="el_method">BaseEntity()</a></td><td class="bar" id="b2"><img src="../jacoco-resources/greenbar.gif" width="51" height="10" title="3" alt="3"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a1"><a href="BaseEntity.java.html#L39" class="el_method">getId()</a></td><td class="bar" id="b3"><img src="../jacoco-resources/greenbar.gif" width="51" height="10" title="3" alt="3"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.2.201808211720</span></div></body></html>

View file

@ -0,0 +1,51 @@
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>BaseEntity.java</title><link rel="stylesheet" href="../jacoco-resources/prettify.css" type="text/css"/><script type="text/javascript" src="../jacoco-resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">petclinic</a> &gt; <a href="index.source.html" class="el_package">org.springframework.samples.petclinic.model</a> &gt; <span class="el_source">BaseEntity.java</span></div><h1>BaseEntity.java</h1><pre class="source lang-java linenums">/*
* Copyright 2012-2019 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an &quot;AS IS&quot; BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.samples.petclinic.model;
import java.io.Serializable;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.MappedSuperclass;
/**
* Simple JavaBean domain object with an id property. Used as a base class for objects
* needing this property.
*
* @author Ken Krebs
* @author Juergen Hoeller
*/
@MappedSuperclass
<span class="fc" id="L33">public class BaseEntity implements Serializable {</span>
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
public Integer getId() {
<span class="fc" id="L39"> return id;</span>
}
public void setId(Integer id) {
<span class="fc" id="L43"> this.id = id;</span>
<span class="fc" id="L44"> }</span>
public boolean isNew() {
<span class="fc bfc" id="L47" title="All 2 branches covered."> return this.id == null;</span>
}
}
</pre><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.2.201808211720</span></div></body></html>

View file

@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>NamedEntity</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">petclinic</a> &gt; <a href="index.html" class="el_package">org.springframework.samples.petclinic.model</a> &gt; <span class="el_class">NamedEntity</span></div><h1>NamedEntity</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">0 of 13</td><td class="ctr2">100%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">0</td><td class="ctr2">4</td><td class="ctr1">0</td><td class="ctr2">5</td><td class="ctr1">0</td><td class="ctr2">4</td></tr></tfoot><tbody><tr><td id="a2"><a href="NamedEntity.java.html#L40" class="el_method">setName(String)</a></td><td class="bar" id="b0"><img src="../jacoco-resources/greenbar.gif" width="120" height="10" title="4" alt="4"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">0</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">0</td><td class="ctr2" id="i0">2</td><td class="ctr1" id="j0">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="NamedEntity.java.html#L30" class="el_method">NamedEntity()</a></td><td class="bar" id="b1"><img src="../jacoco-resources/greenbar.gif" width="90" height="10" title="3" alt="3"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a0"><a href="NamedEntity.java.html#L36" class="el_method">getName()</a></td><td class="bar" id="b2"><img src="../jacoco-resources/greenbar.gif" width="90" height="10" title="3" alt="3"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a3"><a href="NamedEntity.java.html#L45" class="el_method">toString()</a></td><td class="bar" id="b3"><img src="../jacoco-resources/greenbar.gif" width="90" height="10" title="3" alt="3"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.2.201808211720</span></div></body></html>

View file

@ -0,0 +1,49 @@
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>NamedEntity.java</title><link rel="stylesheet" href="../jacoco-resources/prettify.css" type="text/css"/><script type="text/javascript" src="../jacoco-resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">petclinic</a> &gt; <a href="index.source.html" class="el_package">org.springframework.samples.petclinic.model</a> &gt; <span class="el_source">NamedEntity.java</span></div><h1>NamedEntity.java</h1><pre class="source lang-java linenums">/*
* Copyright 2012-2019 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an &quot;AS IS&quot; BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.samples.petclinic.model;
import javax.persistence.Column;
import javax.persistence.MappedSuperclass;
/**
* Simple JavaBean domain object adds a name property to &lt;code&gt;BaseEntity&lt;/code&gt;. Used as a base class for objects
* needing these properties.
*
* @author Ken Krebs
* @author Juergen Hoeller
*/
@MappedSuperclass
<span class="fc" id="L30">public class NamedEntity extends BaseEntity {</span>
@Column(name = &quot;name&quot;)
private String name;
public String getName() {
<span class="fc" id="L36"> return this.name;</span>
}
public void setName(String name) {
<span class="fc" id="L40"> this.name = name;</span>
<span class="fc" id="L41"> }</span>
@Override
public String toString() {
<span class="fc" id="L45"> return this.getName();</span>
}
}
</pre><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.2.201808211720</span></div></body></html>

View file

@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>Person</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">petclinic</a> &gt; <a href="index.html" class="el_package">org.springframework.samples.petclinic.model</a> &gt; <span class="el_class">Person</span></div><h1>Person</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">0 of 17</td><td class="ctr2">100%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">0</td><td class="ctr2">5</td><td class="ctr1">0</td><td class="ctr2">7</td><td class="ctr1">0</td><td class="ctr2">5</td></tr></tfoot><tbody><tr><td id="a3"><a href="Person.java.html#L43" class="el_method">setFirstName(String)</a></td><td class="bar" id="b0"><img src="../jacoco-resources/greenbar.gif" width="120" height="10" title="4" alt="4"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">0</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">0</td><td class="ctr2" id="i0">2</td><td class="ctr1" id="j0">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a4"><a href="Person.java.html#L51" class="el_method">setLastName(String)</a></td><td class="bar" id="b1"><img src="../jacoco-resources/greenbar.gif" width="120" height="10" title="4" alt="4"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i1">2</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a2"><a href="Person.java.html#L28" class="el_method">Person()</a></td><td class="bar" id="b2"><img src="../jacoco-resources/greenbar.gif" width="90" height="10" title="3" alt="3"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a0"><a href="Person.java.html#L39" class="el_method">getFirstName()</a></td><td class="bar" id="b3"><img src="../jacoco-resources/greenbar.gif" width="90" height="10" title="3" alt="3"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a1"><a href="Person.java.html#L47" class="el_method">getLastName()</a></td><td class="bar" id="b4"><img src="../jacoco-resources/greenbar.gif" width="90" height="10" title="3" alt="3"/></td><td class="ctr2" id="c4">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.2.201808211720</span></div></body></html>

Some files were not shown because too many files have changed in this diff Show more