module AssMaintainer::InfoBase::Interfaces::InfoBase
Common interface for different infobase types Interface must be implemented in {InfoBase::FileIb} and {InfoBase::ServerIb} modules
Public Instance Methods
True if infobase exists
# File lib/ass_maintainer/info_base/interfaces.rb, line 101 def exists? fail NotImplementedError end
@note It must work for {InfoBase::ServerIb} only.
For {InfoBase::FileIb} it must do nothing
Locking infobase if it possible. Be careful it terminate all sessions! Before do it should set +InfoBase#unlock_code+! Schedule jobs will be locked to! @raise [LockError] unless +InfoBase#unlock_code+ setted @raise [UnlockError] unless soft {#unlock} possible. If catched
it, shold do force unlock {unlock!} and try againe
# File lib/ass_maintainer/info_base/interfaces.rb, line 63 def lock(from: Time.now, to: Time.now + 3600, message: '') fail NotImplementedError end
@note (see lock
) Lock schedule jobs
# File lib/ass_maintainer/info_base/interfaces.rb, line 83 def lock_schjobs fail NotImplementedError end
@note For {InfoBase::FileIb} it must always return false
It work for {InfoBase::ServerIb} only.
Return true
if on server flag +SessionsDenied == true+
# File lib/ass_maintainer/info_base/interfaces.rb, line 96 def locked? fail NotImplementedError end
@note For {InfoBase::FileIb} must returns empty array Returns array of infobase sessions exclude {InfoBase::Session::EXCLUDE_APP_IDS} application types @return [Array <InfoBase::Session>]
# File lib/ass_maintainer/info_base/interfaces.rb, line 51 def sessions fail NotImplementedError end
@note (see lock
) Soft unlocking infobase if it possible. For force unlocking exec #{unlock!} @raise [UnlockError] unless unlocking possible
# File lib/ass_maintainer/info_base/interfaces.rb, line 71 def unlock fail NotImplementedError end
@note (see lock
) Force unlock infobase.
# File lib/ass_maintainer/info_base/interfaces.rb, line 77 def unlock! fail NotImplementedError end
@note (see lock
) Unlock schedule jobs
# File lib/ass_maintainer/info_base/interfaces.rb, line 89 def unlock_schjobs fail NotImplementedError end