Cross Reference: access_token.rb
xref
: /
ontohub
/
app
/
models
/
access_token.rb
Home
History
Annotate
Line#
Navigate
Download
Search
only in
./
access_token.rb revision 745541d1ed9a97715ee21919e3dc495a1add55c0
class
AccessToken
<
ActiveRecord
::
Base
belongs_to
:
repository
attr_accessible
:
expiration
, :
token
scope
:
unexpired
, ->
()
{
where
(
'expiration > ?'
,
Time.now
)
}
def
to_s
token
end
def
expired
?
expiration
<=
Time.now
end
def
self.create
_for
(
ontology_version
)
a =
insecure_build_for
(
ontology_version
)
until
!
a.nil
? &&
a.valid
?
a.save
!
a
end
protected
def
self.fresh
_expiration_date
Settings.access_token.expiration_minutes.minutes.from
_now
end
def
self.insecure
_build_for
(
ontology_version
)
repository
=
ontology_version.repository
id
= [
repository.to
_param
,
ontology_version.path
,
Time.now.strftime
(
"%Y-%m-%d-%H-%M-%S-%6N"
)
].
join
(
"|"
)
AccessToken.new
({
repository
:
repository
,
expiration
:
fresh_expiration_date
,
token
:
Digest
::
SHA2.hexdigest
(
id
)
}, {
without_protection
:
true
})
end
end