MCPcopy Create free account
hub / github.com/DiUS/java-faker / Code

Class Code

src/main/java/com/github/javafaker/Code.java:9–230  ·  view source on GitHub ↗

ISBN Rules : https://en.wikipedia.org/wiki/International_Standard_Book_Number

Source from the content-addressed store, hash-verified

7 * ISBN Rules : https://en.wikipedia.org/wiki/International_Standard_Book_Number
8 */
9public class Code {
10
11 private final Faker faker;
12
13 protected Code(Faker faker) {
14 this.faker = faker;
15 }
16
17 /**
18 * This can be overridden by specifying
19 * <code>
20 * code:
21 * isbn_gs1: "some expression"
22 * </code>
23 * in the appropriate yml file.
24 * @return a GS1 code for an ISBN13, currently is only 978 and 979
25 */
26 public String isbnGs1() {
27 return faker.regexify("978|979");
28 }
29 /**
30 * This can be overridden by specifying
31 * <code>
32 * code:
33 * isbn_group: "some expression"
34 * </code>
35 * in the appropriate yml file.
36 * @return an ISBN group number
37 */
38 public String isbnGroup() {
39 return faker.regexify("[0-1]");
40 }
41
42 /**
43 * This can be overridden by specifying
44 * <code>
45 * code:
46 * isbn_registrant: "some expression"
47 * </code>
48 * in the appropriate yml file.
49 * @return an ISBN registrant 'element' with separator
50 */
51 public String isbnRegistrant() {
52 int ct = faker.random().nextInt(6) + 1;
53 switch (ct) {
54 case 6:
55 return faker.number().numberBetween(0,1) + faker.number().digit() + "-" + faker.number().digits(6);
56 case 5:
57 return faker.number().numberBetween(200,699) + "-" + faker.number().digits(5);
58 case 4:
59 return faker.number().numberBetween(7000,8499) + "-" + faker.number().digits(4);
60 case 3:
61 return faker.number().numberBetween(85000,89999) + "-" + faker.number().digits(3);
62 case 2:
63 return faker.number().numberBetween(900000,949999) + "-" + faker.number().digits(2);
64 case 1:
65 return faker.number().numberBetween(9500000,9999999) + "-" + faker.number().digits(1);
66 default:

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected