Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
Codecrew
/
Moya
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
30
Merge Requests
2
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit c0c1f505
authored
Jun 07, 2022
by
Juho Juopperi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
/reader/v4 rest api that returns the code in reader events
1 parent
9991e39a
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
280 additions
and
0 deletions
code/moya-restpojo/src/main/java/fi/codecrew/moya/rest/pojo/reader/v4/ReaderEventRestPojoV4.java
code/moya-restpojo/src/main/java/fi/codecrew/moya/rest/pojo/reader/v4/ReaderEventRestRootV4.java
code/moya-web/src/main/java/fi/codecrew/moya/rest/reader/v4/ReaderPojoUtilsV4.java
code/moya-web/src/main/java/fi/codecrew/moya/rest/reader/v4/ReaderRestViewV4.java
code/moya-restpojo/src/main/java/fi/codecrew/moya/rest/pojo/reader/v4/ReaderEventRestPojoV4.java
0 → 100644
View file @
c0c1f50
package
fi
.
codecrew
.
moya
.
rest
.
pojo
.
reader
.
v4
;
import
fi.codecrew.moya.rest.pojo.userinfo.v1.EventUserRestPojo
;
import
fi.codecrew.moya.rest.pojo.userinfo.v3.PrintedCardRestPojoV3
;
import
javax.xml.bind.annotation.XmlElement
;
import
java.util.Date
;
/**
* Version 4 has the `code` field containing the code read by the reader.
*/
public
class
ReaderEventRestPojoV4
{
private
EventUserRestPojo
eventUser
;
private
PrintedCardRestPojoV3
printedCard
;
private
Integer
readerEventId
;
private
Date
readerEventTime
;
private
Integer
readerId
;
private
Integer
printedCardId
;
private
String
printedCardState
;
private
String
code
;
// New in v4
public
ReaderEventRestPojoV4
()
{
}
@XmlElement
(
name
=
"eventuser"
,
nillable
=
true
)
public
EventUserRestPojo
getEventuser
()
{
return
eventUser
;
}
@XmlElement
(
name
=
"readerEventId"
,
nillable
=
false
)
public
Integer
getEventId
()
{
return
readerEventId
;
}
@XmlElement
(
name
=
"readerEventTime"
,
nillable
=
true
)
public
Date
getReaderEventTime
()
{
return
readerEventTime
;
}
public
void
setReaderEventTime
(
Date
readerEventTime
)
{
this
.
readerEventTime
=
readerEventTime
;
}
@XmlElement
(
name
=
"readerId"
,
nillable
=
false
)
public
Integer
getReaderId
()
{
return
readerId
;
}
public
void
setReaderId
(
Integer
readerId
)
{
this
.
readerId
=
readerId
;
}
@XmlElement
(
name
=
"printedCardId"
,
nillable
=
true
)
public
Integer
getPrintedCardId
()
{
return
printedCardId
;
}
public
void
setPrintedCardId
(
Integer
printedCardId
)
{
this
.
printedCardId
=
printedCardId
;
}
@XmlElement
(
name
=
"printedCardState"
,
nillable
=
true
)
public
String
getPrintedCardState
()
{
return
printedCardState
;
}
public
void
setPrintedCardState
(
String
printedCardState
)
{
this
.
printedCardState
=
printedCardState
;
}
public
PrintedCardRestPojoV3
getPrintedCard
()
{
return
printedCard
;
}
public
void
setPrintedCard
(
PrintedCardRestPojoV3
printedCard
)
{
this
.
printedCard
=
printedCard
;
}
public
EventUserRestPojo
getEventUser
()
{
return
eventUser
;
}
public
void
setEventUser
(
EventUserRestPojo
eventUser
)
{
this
.
eventUser
=
eventUser
;
}
public
Integer
getReaderEventId
()
{
return
readerEventId
;
}
public
void
setReaderEventId
(
Integer
readerEventId
)
{
this
.
readerEventId
=
readerEventId
;
}
public
String
getCode
()
{
return
code
;
}
public
void
setCode
(
String
code
)
{
this
.
code
=
code
;
}
}
code/moya-restpojo/src/main/java/fi/codecrew/moya/rest/pojo/reader/v4/ReaderEventRestRootV4.java
0 → 100644
View file @
c0c1f50
/*
* Copyright Codecrew Ry
*
* All rights reserved.
*
* This license applies to any software containing a notice placed by the
* copyright holder. Such software is herein referred to as the Software.
* This license covers modification, distribution and use of the Software.
*
* Any distribution and use in source and binary forms, with or without
* modification is not permitted without explicit written permission from the
* copyright owner.
*
* A non-exclusive royalty-free right is granted to the copyright owner of the
* Software to use, modify and distribute all modifications to the Software in
* future versions of the Software.
*
*/
package
fi
.
codecrew
.
moya
.
rest
.
pojo
.
reader
.
v4
;
import
javax.xml.bind.annotation.XmlRootElement
;
import
java.util.List
;
@XmlRootElement
public
class
ReaderEventRestRootV4
{
private
List
<
ReaderEventRestPojoV4
>
readerEvents
;
public
ReaderEventRestRootV4
()
{
}
public
ReaderEventRestRootV4
(
List
<
ReaderEventRestPojoV4
>
parsed
)
{
setReaderEvents
(
parsed
);
}
public
List
<
ReaderEventRestPojoV4
>
getReaderEvents
()
{
return
readerEvents
;
}
public
void
setReaderEvents
(
List
<
ReaderEventRestPojoV4
>
readerEvents
)
{
this
.
readerEvents
=
readerEvents
;
}
}
code/moya-web/src/main/java/fi/codecrew/moya/rest/reader/v4/ReaderPojoUtilsV4.java
0 → 100644
View file @
c0c1f50
package
fi
.
codecrew
.
moya
.
rest
.
reader
.
v4
;
import
fi.codecrew.moya.model.ReaderEvent
;
import
fi.codecrew.moya.rest.PojoUtils
;
import
fi.codecrew.moya.rest.pojo.reader.v4.ReaderEventRestPojoV4
;
import
java.util.ArrayList
;
import
java.util.List
;
public
class
ReaderPojoUtilsV4
{
public
static
ReaderEventRestPojoV4
initReaderEventRestPojo
(
ReaderEvent
event
)
{
ReaderEventRestPojoV4
ret
=
new
ReaderEventRestPojoV4
();
if
(
event
.
getPrintedCard
()
!=
null
)
{
if
(
event
.
getPrintedCard
().
getUser
()
!=
null
)
{
ret
.
setEventUser
(
PojoUtils
.
initEventUserRestPojo
(
event
.
getPrintedCard
().
getUser
()));
}
}
else
if
(
event
.
getUser
()
!=
null
)
{
ret
.
setEventUser
(
PojoUtils
.
initEventUserRestPojo
(
event
.
getUser
()));
}
ret
.
setReaderEventId
(
event
.
getId
());
ret
.
setReaderEventTime
(
event
.
getUpdatetime
());
ret
.
setReaderId
(
event
.
getReader
().
getId
());
ret
.
setCode
(
event
.
getValue
());
// New in API v4
if
(
event
.
getPrintedCard
()
!=
null
)
{
ret
.
setPrintedCardId
(
event
.
getPrintedCard
().
getId
());
}
if
(
event
.
getPrintedCard
()
!=
null
)
{
ret
.
setPrintedCardState
(
event
.
getPrintedCard
().
getCardState
().
name
());
}
return
ret
;
}
public
static
List
<
ReaderEventRestPojoV4
>
parseReaderEvents
(
List
<
ReaderEvent
>
readers
)
{
List
<
ReaderEventRestPojoV4
>
ret
=
new
ArrayList
<>();
for
(
ReaderEvent
re
:
readers
)
{
ret
.
add
(
initReaderEventRestPojo
(
re
));
}
return
ret
;
}
}
code/moya-web/src/main/java/fi/codecrew/moya/rest/reader/v4/ReaderRestViewV4.java
0 → 100644
View file @
c0c1f50
/*
* Copyright Codecrew Ry
*
* All rights reserved.
*
* This license applies to any software containing a notice placed by the
* copyright holder. Such software is herein referred to as the Software.
* This license covers modification, distribution and use of the Software.
*
* Any distribution and use in source and binary forms, with or without
* modification is not permitted without explicit written permission from the
* copyright owner.
*
* A non-exclusive royalty-free right is granted to the copyright owner of the
* Software to use, modify and distribute all modifications to the Software in
* future versions of the Software.
*
*/
package
fi
.
codecrew
.
moya
.
rest
.
reader
.
v4
;
import
fi.codecrew.moya.beans.ReaderBeanLocal
;
import
fi.codecrew.moya.model.ReaderEvent
;
import
fi.codecrew.moya.rest.PojoUtils
;
import
fi.codecrew.moya.rest.pojo.reader.v1.ReaderRestRoot
;
import
fi.codecrew.moya.rest.pojo.reader.v4.ReaderEventRestRootV4
;
import
javax.ejb.EJB
;
import
javax.enterprise.context.RequestScoped
;
import
javax.ws.rs.*
;
import
javax.ws.rs.core.MediaType
;
import
javax.ws.rs.core.Response
;
import
java.util.List
;
import
static
fi
.
codecrew
.
moya
.
rest
.
reader
.
v4
.
ReaderPojoUtilsV4
.
parseReaderEvents
;
@RequestScoped
@Path
(
"/reader/v4"
)
@Consumes
({
MediaType
.
APPLICATION_JSON
,
MediaType
.
APPLICATION_XML
})
@Produces
({
MediaType
.
APPLICATION_JSON
+
"; charset=UTF-8"
})
public
class
ReaderRestViewV4
{
@EJB
private
ReaderBeanLocal
readerbean
;
@GET
@Path
(
"/List"
)
public
ReaderRestRoot
getReaderList
()
{
return
new
ReaderRestRoot
(
PojoUtils
.
parseReaders
(
readerbean
.
getReaders
()));
}
/**
* Returns events after the designated eventid. If eventid == 0 return last
* 20, eventid < 0 return all
*/
@GET
@Path
(
"/readerevents/{readerId}/{eventId}"
)
public
ReaderEventRestRootV4
getReaderevents
(
@PathParam
(
"readerId"
)
Integer
readerId
,
@PathParam
(
"eventId"
)
Integer
eventId
)
{
List
<
ReaderEvent
>
events
=
null
;
if
(
eventId
!=
null
&&
eventId
>
0
)
{
events
=
readerbean
.
getReaderEventsAfterEvent
(
readerId
,
eventId
);
}
else
{
int
count
=
20
;
if
(
eventId
==
null
||
eventId
==
0
)
count
=
0
;
events
=
readerbean
.
getReaderEvents
(
readerId
,
count
);
}
return
new
ReaderEventRestRootV4
(
parseReaderEvents
(
events
));
}
@GET
@Path
(
"/createevent/{reader}/{code}/{hash}"
)
public
Response
createReaderEvent
(
@PathParam
(
"reader"
)
String
readerName
,
@PathParam
(
"code"
)
String
readerCode
,
@PathParam
(
"hash"
)
String
hash
)
{
readerbean
.
checkCode
(
readerName
,
readerCode
);
return
Response
.
ok
().
build
();
}
@POST
@Path
(
"/createevent/{reader}/{code}"
)
public
Response
createReaderEvent
(
@PathParam
(
"reader"
)
String
readerName
,
@PathParam
(
"code"
)
String
readerCode
)
{
ReaderEvent
readerEvent
=
readerbean
.
checkCode
(
readerName
,
readerCode
);
return
Response
.
ok
(
ReaderPojoUtilsV4
.
initReaderEventRestPojo
(
readerEvent
)).
build
();
}
@GET
@Path
(
"/LastEventusers"
)
public
ReaderEventRestRootV4
getLastEventusers
()
{
return
new
ReaderEventRestRootV4
(
ReaderPojoUtilsV4
.
parseReaderEvents
(
readerbean
.
getLastReaderEvents
()));
}
}
Write
Preview
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment