Documentation ¶
Index ¶
- Constants
- func DescribeError(code int) string
- func DosToIrbis(text string) string
- func FromAnsi(buffer []byte) string
- func GetXrfOffset(mfn int) int64
- func IrbisToDos(text string) string
- func IrbisToLines(text string) []string
- func LeftPad(s string, n int) string
- func LinesToIrbis(lines []string) string
- func NeedWrap(text string) bool
- func ParseInt32(buffer []byte) (result int)
- func PickOne(lines ...string) string
- func ReadInt16(reader io.Reader) (result int16)
- func ReadInt32(reader io.Reader) (result int32)
- func ReadInt64(reader io.Reader) (result int64)
- func RightPad(s string, n int) string
- func SameRune(left, right rune) bool
- func SameString(left, right string) bool
- func SplitLines(text string) []string
- func ToAnsi(text string) []byte
- func Wrap(text string) string
- type ClientInfo
- type ClientQuery
- func (query *ClientQuery) Add(value int) *ClientQuery
- func (query *ClientQuery) AddAnsi(text string) *ClientQuery
- func (query *ClientQuery) AddFormat(format string) bool
- func (query *ClientQuery) AddUtf(text string) *ClientQuery
- func (query *ClientQuery) Encode() [][]byte
- func (query *ClientQuery) NewLine() *ClientQuery
- type ClientSocket
- type Connection
- func (connection *Connection) ActualizeDatabase(database string) bool
- func (connection *Connection) ActualizeRecord(database string, mfn int) bool
- func (connection *Connection) Connect() bool
- func (connection *Connection) CreateDatabase(database string, description string, readerAccess bool) bool
- func (connection *Connection) CreateDictionary(database string) bool
- func (connection *Connection) DeleteDatabase(database string) bool
- func (connection *Connection) DeleteFile(fileName string)
- func (connection *Connection) DeleteRecord(mfn int)
- func (connection *Connection) Disconnect() bool
- func (connection *Connection) Execute(query *ClientQuery) *ServerResponse
- func (connection *Connection) ExecuteAnyCommand(command string, params ...string) bool
- func (connection *Connection) FailOnError()
- func (connection *Connection) FormatMfn(format string, mfn int) string
- func (connection *Connection) FormatRecord(format string, record *MarcRecord) string
- func (connection *Connection) FormatRecords(format string, list []int) (result []string)
- func (connection *Connection) GetDatabaseInfo(database string) *DatabaseInfo
- func (connection *Connection) GetMaxMfn(database string) int
- func (connection *Connection) GetRecordPostings(mfn int, prefix string) (result []TermPosting)
- func (connection *Connection) GetServerStat() (result ServerStat)
- func (connection *Connection) GetServerVersion() (result VersionInfo)
- func (connection *Connection) GetUserList() (result []UserInfo)
- func (connection *Connection) GlobalCorrection(settings *GblSettings) (result []string)
- func (connection *Connection) ListDatabases(specification string) (result []DatabaseInfo)
- func (connection *Connection) ListFiles(specifications ...string) (result []string)
- func (connection *Connection) ListProcesses() (result []ProcessInfo)
- func (connection *Connection) ListTerms(prefix string) (result []string)
- func (connection *Connection) NoOp() bool
- func (connection *Connection) ParseConnectionString(connectionString string)
- func (connection *Connection) PrintTable(definition *TableDefinition) (result string)
- func (connection *Connection) ReadBinaryFile(specification string) []byte
- func (connection *Connection) ReadIniFile(specification string) *IniFile
- func (connection *Connection) ReadMenuFile(specification string) *MenuFile
- func (connection *Connection) ReadOptFile(specification string) (result *OptFile)
- func (connection *Connection) ReadParFile(specification string) (result *ParFile)
- func (connection *Connection) ReadPostings(parameters *PostingParameters) (result []TermPosting)
- func (connection *Connection) ReadRawRecord(mfn int) *RawRecord
- func (connection *Connection) ReadRecord(mfn int) *MarcRecord
- func (connection *Connection) ReadRecordVersion(mfn, version int) *MarcRecord
- func (connection *Connection) ReadRecords(mfnList []int) (result []MarcRecord)
- func (connection *Connection) ReadSearchScenario(specification string) (result []SearchScenario)
- func (connection *Connection) ReadTerms(startTerm string, number int) []TermInfo
- func (connection *Connection) ReadTermsEx(parameters *TermParameters) (result []TermInfo)
- func (connection *Connection) ReadTextFile(specification string) string
- func (connection *Connection) ReadTextLines(specification string) []string
- func (connection *Connection) ReadTreeFile(specification string) (result *TreeFile)
- func (connection *Connection) ReloadDictionary(database string) (result bool)
- func (connection *Connection) ReloadMasterFile(database string) (result bool)
- func (connection *Connection) RestartServer() (result bool)
- func (connection *Connection) Search(expression string) []int
- func (connection *Connection) SearchAll(expression string) (result []int)
- func (connection *Connection) SearchCount(expression string) int
- func (connection *Connection) SearchEx(parameters *SearchParameters) []FoundLine
- func (connection *Connection) SearchRead(expression string, limit int) (result []MarcRecord)
- func (connection *Connection) SearchSingleRecord(expression string) *MarcRecord
- func (connection *Connection) ToConnectionString() string
- func (connection *Connection) TruncateDatabase(database string) bool
- func (connection *Connection) UndeleteRecord(mfn int) *MarcRecord
- func (connection *Connection) UnlockDatabase(database string) bool
- func (connection *Connection) UnlockRecords(database string, mfnList []int) bool
- func (connection *Connection) UpdateIniFile(lines []string) bool
- func (connection *Connection) UpdateUserList(users []UserInfo) bool
- func (connection *Connection) WriteRawRecord(record *RawRecord) int
- func (connection *Connection) WriteRecord(record *MarcRecord) int
- func (connection *Connection) WriteRecords(records []MarcRecord) bool
- func (connection *Connection) WriteTextFile(specification, text string) bool
- type DatabaseInfo
- type DirectAccess
- type FoundLine
- type GblSettings
- type GblStatement
- type IfpControlRecord
- type IfpFile
- type IfpRecord
- type IfpRecordLeader
- type IniFile
- func (file *IniFile) FindSection(name string) *IniSection
- func (file *IniFile) GetOrCreateSection(name string) *IniSection
- func (file *IniFile) GetValue(sectionName, key, defaultValue string) string
- func (file *IniFile) Parse(lines []string)
- func (file *IniFile) SetValue(sectionName, key, value string)
- func (file *IniFile) String() string
- type IniLine
- type IniSection
- type MarcRecord
- func (record *MarcRecord) Add(tag int, value string) *RecordField
- func (record *MarcRecord) AddNonEmpty(tag int, value string) *MarcRecord
- func (record *MarcRecord) Clear()
- func (record *MarcRecord) Clone() *MarcRecord
- func (record *MarcRecord) Decode(lines []string)
- func (record *MarcRecord) Encode(delimiter string) string
- func (record *MarcRecord) ExportPlainText(file *os.File) error
- func (record *MarcRecord) FM(tag int) string
- func (record *MarcRecord) FMA(tag int) (result []string)
- func (record *MarcRecord) FSM(tag int, code rune) string
- func (record *MarcRecord) FSMA(tag int, code rune) (result []string)
- func (record *MarcRecord) GetField(tag, occurrence int) *RecordField
- func (record *MarcRecord) GetFields(tag int) (result []*RecordField)
- func (record *MarcRecord) GetFirstField(tag int) *RecordField
- func (record *MarcRecord) HaveField(tag int) bool
- func (record *MarcRecord) InsertAt(i int, tag int, value string) *RecordField
- func (record *MarcRecord) IsDeleted() bool
- func (record *MarcRecord) RemoveAt(i int) *MarcRecord
- func (record *MarcRecord) RemoveField(tag int) *MarcRecord
- func (record *MarcRecord) Reset()
- func (record *MarcRecord) SetField(tag int, value string) *MarcRecord
- func (record *MarcRecord) SetSubfield(tag int, code rune, value string) *MarcRecord
- func (record *MarcRecord) String() string
- func (record *MarcRecord) ToPlainText() string
- type MenuEntry
- type MenuFile
- type MstControlRecord
- type MstDictionaryEntry
- type MstField
- type MstFile
- type MstLeader
- type MstRecord
- type NodeItem
- type NodeLeader
- type NodeRecord
- type OptFile
- type OptLine
- type ParFile
- type PostingParameters
- type ProcessInfo
- type RawRecord
- type RecordField
- func (field *RecordField) Add(code rune, value string) *RecordField
- func (field *RecordField) AddNonEmpty(code rune, value string) *RecordField
- func (field *RecordField) Clear() *RecordField
- func (field *RecordField) Clone() *RecordField
- func (field *RecordField) Decode(text string)
- func (field *RecordField) DecodeBody(body string)
- func (field *RecordField) Encode() string
- func (field *RecordField) EncodeBody() string
- func (field *RecordField) GetEmbeddedFields() (result []*RecordField)
- func (field *RecordField) GetFirstSubField(code rune) *SubField
- func (field *RecordField) GetFirstSubFieldValue(code rune) string
- func (field *RecordField) GetValueOrFirstSubField() string
- func (field *RecordField) HaveSubField(code rune) bool
- func (field *RecordField) InsertAt(i int, code rune, value string) *RecordField
- func (field *RecordField) RemoveAt(i int) *RecordField
- func (field *RecordField) RemoveSubfield(code rune) *RecordField
- func (field *RecordField) ReplaceSubfield(code rune, oldValue, newValue string) *RecordField
- func (field *RecordField) SetSubfield(code rune, value string) *RecordField
- func (field *RecordField) String() string
- func (field *RecordField) Verify() (result bool)
- type Search
- func All() (result Search)
- func Author(values ...string) Search
- func Bbk(values ...string) Search
- func DocumentKind(values ...string) Search
- func Equals(prefix string, items ...interface{}) (result Search)
- func Keyword(values ...string) Search
- func Language(values ...string) Search
- func Magazine(values ...string) Search
- func Mhr(values ...string) Search
- func Number(values ...string) Search
- func Place(values ...string) Search
- func Publisher(values ...string) Search
- func Rzn(values ...string) Search
- func Subject(values ...string) Search
- func Title(values ...string) Search
- func Udc(values ...string) Search
- func Year(values ...string) Search
- func (query Search) And(items ...interface{}) Search
- func (query Search) Not(value interface{}) Search
- func (query Search) Or(items ...interface{}) Search
- func (query Search) SameField(items ...interface{}) Search
- func (query Search) SameRepeat(items ...interface{}) Search
- func (query Search) String() string
- type SearchParameters
- type SearchScenario
- type ServerResponse
- func (response *ServerResponse) CheckReturnCode(allowed ...int) bool
- func (response *ServerResponse) GetLine() []byte
- func (response *ServerResponse) GetReturnCode() int
- func (response *ServerResponse) ReadAnsi() string
- func (response *ServerResponse) ReadInteger() int
- func (response *ServerResponse) ReadRemainingAnsiLines() []string
- func (response *ServerResponse) ReadRemainingAnsiText() string
- func (response *ServerResponse) ReadRemainingUtfLines() []string
- func (response *ServerResponse) ReadRemainingUtfText() string
- func (response *ServerResponse) ReadUtf() string
- type ServerStat
- type SubField
- type TableDefinition
- type Tcp4ClientSocket
- type TermInfo
- type TermLink
- type TermParameters
- type TermPosting
- type TreeFile
- type TreeNode
- type UserInfo
- type VersionInfo
- type WsLine
- type XrfFile
- type XrfRecord
Constants ¶
const ( LOGICALLY_DELETED = 1 // Запись логически удалена PHYSICALLY_DELETED = 2 // Запись физически удалена ABSENT = 4 // Запись отсутствует NON_ACTUALIZED = 8 // Запись не актуализирована NEW_RECORD = 16 // Первый экземпляр записи LAST_VERSION = 32 // Последняя версия записи LOCKED_RECORD = 64 // Запись заблокирована на ввод AUTOIN_ERROR = 128 // Ошибка в Autoin.gbl FULLTEXT_NOT_ACTUALIZED = 256 // Полный текст не актуализирован ALL_FORMAT = "&uf('+0')" // Полные данные по полям BRIEF_FORMAT = "@brief" // Краткое библиографическое описание IBIS_FORMAT = "@ibiskw_h" // Формат IBIS (старый) INFO_FORMAT = "@info_w" // Информационный формат OPTIMIZED_FORMAT = "@" // Оптимизированный формат KEYWORD_PREFIX = "K=" // Ключевые слова AUTHOR_PREFIX = "A=" // Индивидуальный автор, редактор, составитель COLLECTIVE_PREFIX = "M=" // Коллектив или мероприятие TITLE_PREFIX = "T=" // Заглавие INVENTORY_PREFIX = "IN=" // Инвентарный номер, штрих-код или радиометка INDEX_PREFIX = "I=" // Шифр документа в базе LOGIC_OR = 0 // Только ИЛИ LOGIC_OR_AND = 1 // ИЛИ и И LOGIC_OR_AND_NOT = 2 // ИЛИ, И, НЕТ (по умолчанию) LOGIC_OR_AND_NOT_FIELD = 3 // ИЛИ, И, НЕТ, И (в поле) LOGIC_OR_AND_NOT_PHRASE = 4 // ИЛИ, И, НЕТ, И (в поле), И (фраза) ADMINISTRATOR = "A" // Адмнистратор CATALOGER = "C" // Каталогизатор ACQUSITIONS = "M" // Комплектатор READER = "R" // Читатель CIRCULATION = "B" // Книговыдача BOOKLAND = "B" // Книговыдача PROVISITON = "K" // Книгообеспеченность JAVA_APPLET = "J" // Java апплет ADD_FIELD = "ADD" DELETE_FIELD = "DEL" REPLACE_FIELD = "REP" CHANGE_FIELD = "CHA" CHANGE_WITH_CASE = "CHAC" DELETE_RECORD = "DELR" UNDELETE_RECORD = "UNDELR" CORRECT_RECORD = "CORREC" CREATE_RECORD = "NEWMFN" EMPTY_RECORD = "EMPTY" UNDO_RECORD = "UNDOR" GBL_END = "END" GBL_IF = "IF" GBL_FI = "FI" GBL_ALL = "ALL" GBL_REPEAT = "REPEAT" GBL_UNTIL = "UNTIL" PUTLOG = "PUTLOG" IRBIS_DELIMITER = "\x1F\x1E" // Разделитель строк в ИРБИС SHORT_DELIMITER = "\x1E" // Короткая версия разделителя строк )
const FirstDelimiter = "\x1F"
const FullDelimiter = "\x1F\x1E"
const InvertedBlockSize = 2050048
const IsoFieldDelimiter = byte(0x1E)
const IsoMarkerLength = 24
const IsoRecordDelimiter = byte(0x1D)
const IsoSubfieldDelimiter = byte(0x1F)
const MaxTermSize = 255
const MstControlRecordSize = 36 // Размер управляющей записи в байтах.
const NodeLength = 2048
const NodeRecordSize = 2048
const SecondDelimiter = "\x1E"
const XrfRecordSize = 12
Variables ¶
This section is empty.
Functions ¶
func DescribeError ¶
func DosToIrbis ¶
func GetXrfOffset ¶
func IrbisToDos ¶
func IrbisToLines ¶
func LinesToIrbis ¶
func ParseInt32 ¶
func SameString ¶
func SplitLines ¶
Types ¶
type ClientInfo ¶
type ClientInfo struct { // Number порядковый номер. Number string // IPAddress Адрес клиента. IPAddress string // Port Порт клиента. Port string // Name Логин Name string // Id Идентификатор клиентской программы // (просто уникальное число). Id string // Workstation Клиентский АРМ. Workstation string // Registered Момент подключения к серверу. Registered string // Acknowledged Подследнее подтверждение, посланное серверу. Acknowledged string // LastCommand Последняя команда, посланная серверу. LastCommand string // CommandNumber Номер последней команлы. CommandNumber string }
ClientInfo Информация о клиенте, подключенном к серверу ИРБИС (не обязательно о текущем).
func (*ClientInfo) Parse ¶
func (client *ClientInfo) Parse(lines []string)
Parse Разбор ответа сервера.
func (*ClientInfo) String ¶
func (client *ClientInfo) String() string
type ClientQuery ¶
type ClientQuery struct {
// contains filtered or unexported fields
}
ClientQuery формирует клиентский запрос из запрашиваемых элементов (строк и их фрагментов).
func NewClientQuery ¶
func NewClientQuery(connection *Connection, command string) *ClientQuery
NewClientQuery формирует заголовок клиентского запроса.
func (*ClientQuery) Add ¶
func (query *ClientQuery) Add(value int) *ClientQuery
Add добавляет в запрос целое число.
func (*ClientQuery) AddAnsi ¶
func (query *ClientQuery) AddAnsi(text string) *ClientQuery
AddAnsi добавляет в запрос строку в кодировке ANSI.
func (*ClientQuery) AddFormat ¶
func (query *ClientQuery) AddFormat(format string) bool
AddFormat добавляет строку формата, предварительно подготовив её. Также добавляется перевод строки.
func (*ClientQuery) AddUtf ¶
func (query *ClientQuery) AddUtf(text string) *ClientQuery
AddUtf добавляет в запрос строку в кодировке UTF-8.
func (*ClientQuery) Encode ¶
func (query *ClientQuery) Encode() [][]byte
Encode выдает сетевой пакет, который нужно отправить серверу.
func (*ClientQuery) NewLine ¶
func (query *ClientQuery) NewLine() *ClientQuery
NewLine добавляет в запрос перевод строки (\n).
type ClientSocket ¶
type ClientSocket interface {
TalkToServer(query *ClientQuery) *ServerResponse
}
type Connection ¶
type Connection struct { // Host Адрес сервера (можно задавать как my.domain.com, // так и 192.168.1.1). Host string // Port Порт сервера Port int // Username Логин пользователя. Регистр символов не учитывается. Username string // Password Пароль пользователя. Регистр символов учитывается. Password string // Database Имя текущей базы данных. Database string // Workstation Код АРМа. Workstation string // ClientId Идентификатор клиента. Задаётся автоматически // при подключении к серверу. ClientId int // QueryId Последовательный номер запроса к серверу. // Ведется автоматически QueryId int // ServerVersion Версия сервера // (становится доступна после подключения к нему). ServerVersion string // Interval Рекомендуемый интервал подключения, минуты. // Становится доступен после подключения к серверу. Interval int // Connected Признак подключения. Connected bool // Ini Серверный INI-файл (становится доступен после подключения). Ini *IniFile // Last error code LastError int // contains filtered or unexported fields }
Connection Подключение к серверу ИРБИС64.
func NewConnection ¶
func NewConnection() *Connection
NewConnection Конструктор, создает подключение с настройками по умолчанию.
func (*Connection) ActualizeDatabase ¶
func (connection *Connection) ActualizeDatabase(database string) bool
ActualizeDatabase Актуализация всех неактуализированных записей в указанной базе данных.
func (*Connection) ActualizeRecord ¶
func (connection *Connection) ActualizeRecord(database string, mfn int) bool
ActualizeRecord Актуализация записи с указанным кодом. Если запись уже актуализирована, ничего не меняется.
func (*Connection) Connect ¶
func (connection *Connection) Connect() bool
Connect Подключение к серверу ИРБИС64. Если подключение уже установлено, ничего не меняется.
func (*Connection) CreateDatabase ¶
func (connection *Connection) CreateDatabase(database string, description string, readerAccess bool) bool
CreateDatabase Создание базы данных.
func (*Connection) CreateDictionary ¶
func (connection *Connection) CreateDictionary(database string) bool
CreateDictionary Создание словаря в указанной базе данных.
func (*Connection) DeleteDatabase ¶
func (connection *Connection) DeleteDatabase(database string) bool
DeleteDatabase Удаление указанной базы данных.
func (*Connection) DeleteFile ¶
func (connection *Connection) DeleteFile(fileName string)
DeleteFile Удаление на сервере указанного файла.
func (*Connection) DeleteRecord ¶
func (connection *Connection) DeleteRecord(mfn int)
DeleteRecord Удаление записи по ее MFN.
func (*Connection) Disconnect ¶
func (connection *Connection) Disconnect() bool
Disconnect Отключение от сервера. Если подключение не установлено, ничего не меняется.
func (*Connection) Execute ¶
func (connection *Connection) Execute(query *ClientQuery) *ServerResponse
Execute Отправка клиентского запроса на сервер и получение ответа от него.
func (*Connection) ExecuteAnyCommand ¶
func (connection *Connection) ExecuteAnyCommand(command string, params ...string) bool
ExecuteAnyCommand Выполнение на сервере произвольной команды с опциональными параметрами в кодировке ANSI.
func (*Connection) FailOnError ¶
func (connection *Connection) FailOnError()
FailOnError Завершение программы с ошибкой, если код возврата последней операции меньше нуля.
func (*Connection) FormatMfn ¶
func (connection *Connection) FormatMfn(format string, mfn int) string
FormatMfn Форматирование записи с указанным MFN.
func (*Connection) FormatRecord ¶
func (connection *Connection) FormatRecord(format string, record *MarcRecord) string
FormatRecord Форматирование записи в клиентском представлении.
func (*Connection) FormatRecords ¶
func (connection *Connection) FormatRecords(format string, list []int) (result []string)
FormatRecords Расформатирование нескольких записей.
func (*Connection) GetDatabaseInfo ¶
func (connection *Connection) GetDatabaseInfo(database string) *DatabaseInfo
GetDatabaseInfo Получение информации об указанной базе данных.
func (*Connection) GetMaxMfn ¶
func (connection *Connection) GetMaxMfn(database string) int
GetMaxMfn Получение максимального MFN для указанной базы данных.
func (*Connection) GetRecordPostings ¶
func (connection *Connection) GetRecordPostings(mfn int, prefix string) (result []TermPosting)
Get term postings for specified MFN and prefix
func (*Connection) GetServerStat ¶
func (connection *Connection) GetServerStat() (result ServerStat)
Получение статистики с сервера.
func (*Connection) GetServerVersion ¶
func (connection *Connection) GetServerVersion() (result VersionInfo)
GetServerVersion Получение версии сервера.
func (*Connection) GetUserList ¶
func (connection *Connection) GetUserList() (result []UserInfo)
GetUserList Получение списка пользователей с сервера.
func (*Connection) GlobalCorrection ¶
func (connection *Connection) GlobalCorrection(settings *GblSettings) (result []string)
GlobalCorrection Глобальная корректировка.
func (*Connection) ListDatabases ¶
func (connection *Connection) ListDatabases(specification string) (result []DatabaseInfo)
ListDatabases Получение списка баз данных с сервера.
func (*Connection) ListFiles ¶
func (connection *Connection) ListFiles(specifications ...string) (result []string)
ListFiles Получение списка файлов на сервере.
func (*Connection) ListProcesses ¶
func (connection *Connection) ListProcesses() (result []ProcessInfo)
ListProcesses Получение списка серверных процессов
func (*Connection) ListTerms ¶
func (connection *Connection) ListTerms(prefix string) (result []string)
ListTerms Получение списка терминов с указанным префиксом.
func (*Connection) NoOp ¶
func (connection *Connection) NoOp() bool
NoOp Пустая операция. Используется для периодического подтверждения подключения клиента.
func (*Connection) ParseConnectionString ¶
func (connection *Connection) ParseConnectionString(connectionString string)
ParseConnectionString Разбор строки подключения.
func (*Connection) PrintTable ¶
func (connection *Connection) PrintTable(definition *TableDefinition) (result string)
func (*Connection) ReadBinaryFile ¶
func (connection *Connection) ReadBinaryFile(specification string) []byte
ReadBinaryFile Чтение двоичного файла с сервера.
func (*Connection) ReadIniFile ¶
func (connection *Connection) ReadIniFile(specification string) *IniFile
ReadIniFile Чтение INI-файла с сервера.
func (*Connection) ReadMenuFile ¶
func (connection *Connection) ReadMenuFile(specification string) *MenuFile
ReadMenuFile Чтение MNU-файла с сервера.
func (*Connection) ReadOptFile ¶
func (connection *Connection) ReadOptFile(specification string) (result *OptFile)
ReadOptFile Чтение OPT-файла с сервера.
func (*Connection) ReadParFile ¶
func (connection *Connection) ReadParFile(specification string) (result *ParFile)
ReadParFile Чтение PAR-файла с сервера
func (*Connection) ReadPostings ¶
func (connection *Connection) ReadPostings(parameters *PostingParameters) (result []TermPosting)
ReadPostings Считывание постингов из поискового индекса.
func (*Connection) ReadRawRecord ¶
func (connection *Connection) ReadRawRecord(mfn int) *RawRecord
ReadRawRecord Чтение указанной записи в "сыром" виде.
func (*Connection) ReadRecord ¶
func (connection *Connection) ReadRecord(mfn int) *MarcRecord
ReadRecord Чтение записи по ее MFN.
func (*Connection) ReadRecordVersion ¶
func (connection *Connection) ReadRecordVersion(mfn, version int) *MarcRecord
ReadRecordVersion Чтение указанной версии записи.
func (*Connection) ReadRecords ¶
func (connection *Connection) ReadRecords(mfnList []int) (result []MarcRecord)
ReadRecords Чтение с сервера нескольких записей.
func (*Connection) ReadSearchScenario ¶
func (connection *Connection) ReadSearchScenario(specification string) (result []SearchScenario)
ReadSearchScenario Загрузка сценариев поиска с сервера.
func (*Connection) ReadTerms ¶
func (connection *Connection) ReadTerms(startTerm string, number int) []TermInfo
ReadTerms Простое получение терминов поискового словаря.
func (*Connection) ReadTermsEx ¶
func (connection *Connection) ReadTermsEx(parameters *TermParameters) (result []TermInfo)
ReadTermsEx Получение терминов поискового словаря.
func (*Connection) ReadTextFile ¶
func (connection *Connection) ReadTextFile(specification string) string
ReadTextFile Чтение текстового файла с сервера.
func (*Connection) ReadTextLines ¶
func (connection *Connection) ReadTextLines(specification string) []string
ReadTextLines Чтение текстового файла в виде слайса строк.
func (*Connection) ReadTreeFile ¶
func (connection *Connection) ReadTreeFile(specification string) (result *TreeFile)
ReadTreeFile Чтение TRE-файла с сервера.
func (*Connection) ReloadDictionary ¶
func (connection *Connection) ReloadDictionary(database string) (result bool)
ReloadDictionary Пересоздание словаря для указанной базы данных.
func (*Connection) ReloadMasterFile ¶
func (connection *Connection) ReloadMasterFile(database string) (result bool)
ReloadMasterFile Пересоздание мастер-файла для указанной базы данных.
func (*Connection) RestartServer ¶
func (connection *Connection) RestartServer() (result bool)
RestartServer Перезапуск сервера (без утери подключенных клиентов).
func (*Connection) Search ¶
func (connection *Connection) Search(expression string) []int
Search Простой поиск записей (возвращается не более 32 тыс. записей).
func (*Connection) SearchAll ¶
func (connection *Connection) SearchAll(expression string) (result []int)
SearchAll Поиск всех записей (даже если их окажется больше 32 тыс.).
func (*Connection) SearchCount ¶
func (connection *Connection) SearchCount(expression string) int
SearchCount Определение количества записей, соответствующих поисковому выражению.
func (*Connection) SearchEx ¶
func (connection *Connection) SearchEx(parameters *SearchParameters) []FoundLine
SearchEx Расширенный поиск записей.
func (*Connection) SearchRead ¶
func (connection *Connection) SearchRead(expression string, limit int) (result []MarcRecord)
SearchRead Поиск записей с их одновременным считыванием.
func (*Connection) SearchSingleRecord ¶
func (connection *Connection) SearchSingleRecord(expression string) *MarcRecord
SearchSingleRecord Поиск и считывание одной записи, соответствующей выражение. Если таких записей больше одной, то будет считана любая из них. Если таких записей нет, будет возвращен nil.
func (*Connection) ToConnectionString ¶
func (connection *Connection) ToConnectionString() string
ToConnectionString Выдача строки подключения для текущего соеденения (соединение не обязательно должно быть установлено).
func (*Connection) TruncateDatabase ¶
func (connection *Connection) TruncateDatabase(database string) bool
TruncateDatabase Опустошение указанной базы данных.
func (*Connection) UndeleteRecord ¶
func (connection *Connection) UndeleteRecord(mfn int) *MarcRecord
UndeleteRecord Восстановление записи по ее MFN.
func (*Connection) UnlockDatabase ¶
func (connection *Connection) UnlockDatabase(database string) bool
UnlockDatabase Разблокирование указанной базы данных.
func (*Connection) UnlockRecords ¶
func (connection *Connection) UnlockRecords(database string, mfnList []int) bool
UnlockRecords Разблокирование перечисленных записей.
func (*Connection) UpdateIniFile ¶
func (connection *Connection) UpdateIniFile(lines []string) bool
UpdateIniFile Обновление строк серверного INI-файла для текущего пользователя.
func (*Connection) UpdateUserList ¶
func (connection *Connection) UpdateUserList(users []UserInfo) bool
UpdateUserList Обновление списка пользователей на сервере.
func (*Connection) WriteRawRecord ¶
func (connection *Connection) WriteRawRecord(record *RawRecord) int
WriteRawRecord Сохранение на сервере "сырой" записи.
func (*Connection) WriteRecord ¶
func (connection *Connection) WriteRecord(record *MarcRecord) int
WriteRecord Сохранение записи на сервере.
func (*Connection) WriteRecords ¶
func (connection *Connection) WriteRecords(records []MarcRecord) bool
WriteRecords Сохранение нескольких записей на сервере (могут относиться к разным базам).
func (*Connection) WriteTextFile ¶
func (connection *Connection) WriteTextFile(specification, text string) bool
WriteTextFile Сохранение текстового файла на сервере.
type DatabaseInfo ¶
type DatabaseInfo struct { Name string // Name Имя базы данных. Description string // Description Описание базы данных в произвольной форме. MaxMfn int // MaxMfn Максимальный MFN. LogicallyDeletedRecords []int // LogicallyDeletedRecords Логически удаленные записи. PhysicallyDeletedRecords []int // PhysicallyDeletedRecords Физически удаленные записи. NonActualizedRecords []int // NonActualizedRecords Неактуализированные записи. LockedRecords []int // LockedRecords Заблокированные записи. DatabaseLocked bool // DatabaseLocked Признак блокировки базы данных в целом. ReadOnly bool // ReadOnly База только для чтения }
DatabaseInfo Информация о базе данных ИРБИС.
func ParseMenu ¶
func ParseMenu(menu *MenuFile) (result []DatabaseInfo)
func (*DatabaseInfo) Parse ¶
func (db *DatabaseInfo) Parse(lines []string)
Parse Разбор ответа сервера (см. GetDatabaseInfo)
func (*DatabaseInfo) String ¶
func (db *DatabaseInfo) String() string
type DirectAccess ¶
type DirectAccess struct {
// contains filtered or unexported fields
}
DirectAccess осуществляет прямой доступ к базам данных.
func OpenDatabase ¶
func OpenDatabase(filename string) (result *DirectAccess, err error)
OpenDatabase открывает базу данных для чтения.
func (*DirectAccess) GetMaxMfn ¶
func (access *DirectAccess) GetMaxMfn() int
GetMaxMfn получает максимальный MFN для данной базы.
func (*DirectAccess) ReadRawRecord ¶
func (access *DirectAccess) ReadRawRecord(mfn int) (result *MstRecord, err error)
ReadRawRecord считывает запись в сыром виде
func (*DirectAccess) ReadRecord ¶
func (access *DirectAccess) ReadRecord(mfn int) (result *MarcRecord, err error)
ReadRecord считывает и декодирует запись.
type GblSettings ¶
type GblSettings struct { // Actualize Актуализировать записи? Actualize bool // Autoin Запускать autoing.gbl? Autoin bool // Database Имя базы данных. Database string // Filename Имя файла. Filename string // FirstRecord MFN первой записи. FirstRecord int // FormalControl Применять формальный контроль? FormalControl bool // MaxMfn Максимальный MFN. MaxMfn int // MfnList Список MFN для обработки. MfnList []int // MinMfn Минимальный MFN. MinMfn int // NumberOfRecords Число обрабатываемых записей. NumberOfRecords int // SearchExpression Поисковое выражение. SearchExpression string // Statements Список операторов Statements []GblStatement }
GblSettings Установки для глобальной корректировки.
type GblStatement ¶
type GblStatement struct { // Command Команда, например, ADD или DEL. Command string // Parameter1 Первый параметр, как правило, // спецификация поля/подполя. Parameter1 string // Parameter2 Второй параметр, как правило, // спецификация повторения. Parameter2 string // Format1 Первый формат, например, выражение для замены. Format1 string // Format2 Второй формат, например, заменяющее выражение. Format2 string }
GblStatement Оператор глобальной корректировки с параметрами.
func (*GblStatement) Encode ¶
func (statement *GblStatement) Encode(delimiter string) string
func (*GblStatement) String ¶
func (statement *GblStatement) String() string
type IfpControlRecord ¶
type IfpFile ¶
type IfpFile struct {
// contains filtered or unexported fields
}
IfpFile - обёртка для инвертированного файла.
func OpenIfpFile ¶
OpenIfpFile открывает файлы IFP, L01, N01
type IfpRecord ¶
type IfpRecord struct { Leader IfpRecordLeader Links []TermLink }
type IfpRecordLeader ¶
type IniFile ¶
type IniFile struct {
Sections []IniSection
}
func NewIniFile ¶
func NewIniFile() *IniFile
func (*IniFile) FindSection ¶
func (file *IniFile) FindSection(name string) *IniSection
func (*IniFile) GetOrCreateSection ¶
func (file *IniFile) GetOrCreateSection(name string) *IniSection
type IniSection ¶
func (*IniSection) Find ¶
func (section *IniSection) Find(key string) *IniLine
func (*IniSection) GetValue ¶
func (section *IniSection) GetValue(key, defaultValue string) string
func (*IniSection) Remove ¶
func (section *IniSection) Remove(key string)
func (*IniSection) SetValue ¶
func (section *IniSection) SetValue(key, value string)
func (*IniSection) String ¶
func (section *IniSection) String() string
type MarcRecord ¶
type MarcRecord struct { // Database Имя базы данных, в которой хранится запись. Database string // Mfn MFN записи. Mfn int // Version Версия записи. Version int // Status Статус записи. Status int // Fields Поля записи. Fields []*RecordField }
MarcRecord Библиографическая запись. Составная единица базы данных. Состоит из произвольного количества полей.
func ReadIsoRecord ¶
func ReadIsoRecord(reader io.Reader, decoder func([]byte) string) *MarcRecord
func (*MarcRecord) Add ¶
func (record *MarcRecord) Add(tag int, value string) *RecordField
Add Добавление поля в запись.
func (*MarcRecord) AddNonEmpty ¶
func (record *MarcRecord) AddNonEmpty(tag int, value string) *MarcRecord
AddNonEmpty добавляет в запись непустое поле.
func (*MarcRecord) Clear ¶
func (record *MarcRecord) Clear()
Clear Очистка записи (удаление всех полей).
func (*MarcRecord) Clone ¶
func (record *MarcRecord) Clone() *MarcRecord
Clone клонирует запись со всеми полями.
func (*MarcRecord) Decode ¶
func (record *MarcRecord) Decode(lines []string)
Decode Декодирование записи из протокольного представления.
func (*MarcRecord) Encode ¶
func (record *MarcRecord) Encode(delimiter string) string
Encode Кодирование записи в протокольное представление.
func (*MarcRecord) ExportPlainText ¶
func (record *MarcRecord) ExportPlainText(file *os.File) error
func (*MarcRecord) FM ¶
func (record *MarcRecord) FM(tag int) string
FM Получение значения поля с указанной меткой. Если поле не найдено, возвращается пустая строка.
func (*MarcRecord) FMA ¶
func (record *MarcRecord) FMA(tag int) (result []string)
FMA Получение слайса со значениями полей с указанной меткой.
func (*MarcRecord) FSM ¶
func (record *MarcRecord) FSM(tag int, code rune) string
FSM Получение значения подполя с указанным кодом в поле с указанной меткой. Если поле или подполе не найдено, возвращается пустая строка.
func (*MarcRecord) FSMA ¶
func (record *MarcRecord) FSMA(tag int, code rune) (result []string)
FSMA Получение слайса со значениями подполей с указанными меткой и кодом. Если подполя не найдены, возвращается слайс нулевой длины.
func (*MarcRecord) GetField ¶
func (record *MarcRecord) GetField(tag, occurrence int) *RecordField
GetField Получение указанного повторения поля с указанной меткой. Если поле не найдено, возвращается nil.
func (*MarcRecord) GetFields ¶
func (record *MarcRecord) GetFields(tag int) (result []*RecordField)
GetFields Получение слайса полей с указанной меткой.
func (*MarcRecord) GetFirstField ¶
func (record *MarcRecord) GetFirstField(tag int) *RecordField
GetFirstField Получение первого вхождения поля с указанной меткой. Если такого поля нет, возвращается nil.
func (*MarcRecord) HaveField ¶
func (record *MarcRecord) HaveField(tag int) bool
HaveField выясняет, есть ли в записи поле с указанной меткой.
func (*MarcRecord) InsertAt ¶
func (record *MarcRecord) InsertAt(i int, tag int, value string) *RecordField
InsertAt вставляет поле в указанную позицию.
func (*MarcRecord) RemoveAt ¶
func (record *MarcRecord) RemoveAt(i int) *MarcRecord
RemoveAt удаляет поле в указанной позиции.
func (*MarcRecord) RemoveField ¶
func (record *MarcRecord) RemoveField(tag int) *MarcRecord
RemoveField удаляет все поля с указанной меткой.
func (*MarcRecord) Reset ¶
func (record *MarcRecord) Reset()
Reset сбрасывает состояние записи, отвязывая её от базы данных. Поля при этом остаются нетронутыми.
func (*MarcRecord) SetField ¶
func (record *MarcRecord) SetField(tag int, value string) *MarcRecord
SetField устанавливает значение первого повторения поля с указанной меткой. Если такого поля нет, оно создаётся.
func (*MarcRecord) SetSubfield ¶
func (record *MarcRecord) SetSubfield(tag int, code rune, value string) *MarcRecord
SetSubfield устанавливает значение подполя первого повторения поля с указанной меткой. Если необходимые поля или подполе отсутствуют, они создаются.
func (*MarcRecord) String ¶
func (record *MarcRecord) String() string
String Выдает текстовое представление записи.
func (*MarcRecord) ToPlainText ¶
func (record *MarcRecord) ToPlainText() string
type MstControlRecord ¶
type MstControlRecord struct { CtlMfn int32 // Резерв. NextMfn int32 // Номер, который будет назначен следующей созданной записи. NextPositionLow int32 // Смещение свободного места в файле (младшая часть). NextPositionHigh int32 // Смещение свободного места в файле (старшая часть). MftType int32 // Резерв. RecCnt int32 // Резерв. Reserv1 int32 // Резерв. Reserv2 int32 // Резерв. Blocked int32 // Индикатор блокировки базы данных. }
MstControlRecord - управляющая запись MST-файла.
func (*MstControlRecord) NextPosition ¶
func (control *MstControlRecord) NextPosition() int64
type MstDictionaryEntry ¶
type MstDictionaryEntry struct { Tag int32 // Метка поля. Position int32 // Смещение. Length int32 // Длина данных. }
MstDictionaryEntry - запись в словаре MST.
type MstField ¶
type MstField struct { Tag int32 // Метка поля. Text string // Значение поля (без деления на подполя). }
MstField поле в MST-записи.
type MstFile ¶
type MstFile struct { Control MstControlRecord // Управляющая запись. // contains filtered or unexported fields }
XrfFile - обёртка над MST-файлом.
func OpenMstFile ¶
OpenXrfFile открывает файл на чтение.
type MstLeader ¶
type MstLeader struct { Mfn int32 // Номер записи в файле документов. Length int32 // Длина записи. PreviousLow int32 // Ссылка на предыдущую версию записи (младшая часть). PreviousHigh int32 // Ссылка на предыдущую версию записи (старшая часть). Base int32 // Смещенеи полей переменной длины. Nvf int32 // Число полей в записи. Version int32 // Номер версии записи. Status int32 // Статус записи. }
MstLeader - лидер MST-записи.
func (*MstLeader) PreviousOffset ¶
type MstRecord ¶
type MstRecord struct { Leader MstLeader // Лидер записи. Dictionary []MstDictionaryEntry // Словарь. Fields []MstField // Поля. }
MstRecord - запись в MST-файле.
type NodeItem ¶
NodeItem Справочник в N01/L01 является таблицей, определяющей поисковый термин. Каждый ключ переменной длины, который есть в записи, представлен в справочнике одним входом, формат которого описывает данная структура.
type NodeLeader ¶
NodeLeader - лидер записи в L01/N01-файле.
type NodeRecord ¶
type NodeRecord struct { Leader NodeLeader Items []NodeItem }
NodeRecord - запись в L01/N01-файлах.
type OptFile ¶
type OptFile struct { // WorksheetLength Длина рабочего листа. WorksheetLength int // WorksheetTag Метка поля рабочего листа. WorksheetTag int // Lines Строки с паттернами. Lines []*OptLine }
OptFile OPT-файл -- файл оптимизации рабочих листов и форматов отображения.
func NewOptFile ¶
func NewOptFile() *OptFile
func (*OptFile) GetWorksheet ¶
func (opt *OptFile) GetWorksheet(record *MarcRecord) string
GetWorksheet Получение рабочего листа записи.
type OptLine ¶
type OptLine struct { // Pattern Паттерн. Pattern string // Worksheet Соответствующий рабочий лист. Worksheet string }
OptLine Строка OPT-файла.
type ParFile ¶
type ParFile struct { Xrf string // Xrf Путь к файлу XRF. Mst string // Mst Путь к файлу MST. Cnt string // Cnt Путь к файлу CNT. N01 string // N01 Путь к файлу N01. N02 string // N02 В ИРБИС64 не используется. L01 string // L01 Путь к файлу L01. L02 string // L02 В ИРБИС64 не используется. Ifp string // Ifp Путь к файлу IFP. Any string // Any Путь к файлу ANY. Pft string // Pft Путь к PFT-файлам. Ext string // Ext Расположение внешних объектов (поле 951). Параметр появился в версии 2012. }
ParFile PAR-файл -- содержит пути к файлам базы данных ИРБИС.
func NewParFile ¶
type PostingParameters ¶
type PostingParameters struct { // Database База данных. Database string // FirstPosting Номер первого постинга. Отсчет от 1. FirstPosting int // Format Формат. Format string // NumberOfPostings Требуемое количество постингов NumberOfPostings int // Term Термин. Term string // ListOfTerms Список термов ListOfTerms []string }
PostingParameters
func NewPostingParameters ¶
func NewPostingParameters() *PostingParameters
type ProcessInfo ¶
type ProcessInfo struct { // Number Просто порядковый номер в списке. Number string // IPAddress С каким клиентом взаимодействует. IPAddress string // Name Логин оператора. Name string // ClientId Идентификатор клиента. ClientId string // Workstation Тип АРМ. Workstation string // Started Время запуска Started string // LastCommand Последняя выполненная (или выполняемая) команда. LastCommand string // CommandNumber Порядковый номер последней команды. CommandNumber string // ProcessId Идентификатор процесса. ProcessId string // State Состояние. State string }
ProcessInfo Информация о запущенном на ИРБИС-сервере процессе.
func ParseProcesses ¶
func ParseProcesses(lines []string) (result []ProcessInfo)
func (*ProcessInfo) String ¶
func (process *ProcessInfo) String() string
type RawRecord ¶
type RawRecord struct { Database string // имя базы данных Mfn int // MFN записи Status int // Статус записи Version int // Версия записи Fields []string // Слайс с нераскодированными полями }
RawRecord запись с нераскодированными полями/подполями.
type RecordField ¶
type RecordField struct { // Tag Метка поля. Tag int // Value Значение поля до первого разделителя. Value string // Subfields Подполя. Subfields []*SubField }
RecordField Поле записи. Состоит из метки и (опционального) значения. Может содержать произвольное количество подполей.
func NewRecordField ¶
func NewRecordField(tag int, value string) *RecordField
NewRecordField Конструктор: создает поле с указанными меткой и значением.
func (*RecordField) Add ¶
func (field *RecordField) Add(code rune, value string) *RecordField
Add Добавление подполя с указанными кодом и значением.
func (*RecordField) AddNonEmpty ¶
func (field *RecordField) AddNonEmpty(code rune, value string) *RecordField
AddNonEmpty добавляет подполе, при условии, что его значение не пустое.
func (*RecordField) Clear ¶
func (field *RecordField) Clear() *RecordField
Clear Очищает поле (удаляет значение и все подполя). Метка поля остаётся нетронутой.
func (*RecordField) Clone ¶
func (field *RecordField) Clone() *RecordField
Clone клонирует поле со всеми подполями.
func (*RecordField) Decode ¶
func (field *RecordField) Decode(text string)
Decode Декодирование поля из протокольного представления (метка, значение и подполя).
func (*RecordField) DecodeBody ¶
func (field *RecordField) DecodeBody(body string)
DecodeBody декодирует только текст поля и подполей (без метки).
func (*RecordField) Encode ¶
func (field *RecordField) Encode() string
Encode Кодирование поля в протокольное представление (метка, значение и подполя).
func (*RecordField) EncodeBody ¶
func (field *RecordField) EncodeBody() string
EncodeBody Кодирование поля в протокольное представление (только значение и подполя).
func (*RecordField) GetEmbeddedFields ¶
func (field *RecordField) GetEmbeddedFields() (result []*RecordField)
GetEmbeddedFields получает слайс встроенных полей из данного поля.
func (*RecordField) GetFirstSubField ¶
func (field *RecordField) GetFirstSubField(code rune) *SubField
GetFirstSubField Возвращает первое вхождение подполя с указанным кодом. Если такого подполя нет, возвращается nil.
func (*RecordField) GetFirstSubFieldValue ¶
func (field *RecordField) GetFirstSubFieldValue(code rune) string
GetFirstSubFieldValue Возвращает значение первого вхождения подполя с указанным кодом, либо пустую строку, если такого подполя нет.
func (*RecordField) GetValueOrFirstSubField ¶
func (field *RecordField) GetValueOrFirstSubField() string
GetValueOrFirstSubField Выдаёт значение для ^*.
func (*RecordField) HaveSubField ¶
func (field *RecordField) HaveSubField(code rune) bool
HaveSubField выясняет, есть ли подполе с указанным кодом.
func (*RecordField) InsertAt ¶
func (field *RecordField) InsertAt(i int, code rune, value string) *RecordField
InsertAt вставляет подполе в указанную позицию.
func (*RecordField) RemoveAt ¶
func (field *RecordField) RemoveAt(i int) *RecordField
RemoveAt удаляет подполе в указанной позиции.
func (*RecordField) RemoveSubfield ¶
func (field *RecordField) RemoveSubfield(code rune) *RecordField
RemoveSubfield удаляет все подполя с указанным кодом.
func (*RecordField) ReplaceSubfield ¶
func (field *RecordField) ReplaceSubfield(code rune, oldValue, newValue string) *RecordField
ReplaceSubfield заменяет значение подполя.
func (*RecordField) SetSubfield ¶
func (field *RecordField) SetSubfield(code rune, value string) *RecordField
SetSubfield устанавливает значение первого повторения подполя с указанным кодом. Если value==nil, подполе удаляется.
func (*RecordField) String ¶
func (field *RecordField) String() string
String Выдает текстовое представление поля со всеми его подполями.
func (*RecordField) Verify ¶
func (field *RecordField) Verify() (result bool)
Verify Верификация поля со всеми его подполями.
type Search ¶
type Search struct {
// contains filtered or unexported fields
}
Search expression builder.
func DocumentKind ¶
func (Search) SameRepeat ¶
type SearchParameters ¶
type SearchParameters struct { Database string FirstRecord int Format string MaxMfn int MinMfn int NumberOfRecords int Expression string Sequential string Filter string IsUtf bool }
func NewSearchParameters ¶
func NewSearchParameters() *SearchParameters
type SearchScenario ¶
type SearchScenario struct { // Name Название поискового атрибута // (автор, инвентарный номер и т. д.). Name string // Prefix Префикс соответствующих терминов // в словаре (может быть пустым). Prefix string // DictionaryType Тип словаря для соответствующего поиска. DictionaryType int // MenuName Имя файла справочника. MenuName string // OldFormat Имя формата (без расширения). OldFormat string // Correction Способ корректировки по словарю. Correction string // Truncation Исходное положение переключателя "Усечение". Truncation string // Hint Текст подсказки/предупреждения. Hint string // ModByDicAuto Параметр пока не задействован. ModByDicAuto string // Logic Применимые логические операторы. Logic string // Advance Правила автоматического расширения поиска // на основе авторитетного файла или тезауруса. Advance string // Format Имя формата показа документов. Format string }
SearchScenario Сценарий поиска.
func ParseScenarios ¶
func ParseScenarios(ini *IniFile) (result []SearchScenario)
type ServerResponse ¶
type ServerResponse struct { Command string ClientId int QueryId int AnswerSize int ReturnCode int ServerVersion string // contains filtered or unexported fields }
func NewServerResponse ¶
func NewServerResponse(conn net.Conn) *ServerResponse
func (*ServerResponse) CheckReturnCode ¶
func (response *ServerResponse) CheckReturnCode(allowed ...int) bool
func (*ServerResponse) GetLine ¶
func (response *ServerResponse) GetLine() []byte
func (*ServerResponse) GetReturnCode ¶
func (response *ServerResponse) GetReturnCode() int
func (*ServerResponse) ReadAnsi ¶
func (response *ServerResponse) ReadAnsi() string
func (*ServerResponse) ReadInteger ¶
func (response *ServerResponse) ReadInteger() int
func (*ServerResponse) ReadRemainingAnsiLines ¶
func (response *ServerResponse) ReadRemainingAnsiLines() []string
func (*ServerResponse) ReadRemainingAnsiText ¶
func (response *ServerResponse) ReadRemainingAnsiText() string
func (*ServerResponse) ReadRemainingUtfLines ¶
func (response *ServerResponse) ReadRemainingUtfLines() []string
func (*ServerResponse) ReadRemainingUtfText ¶
func (response *ServerResponse) ReadRemainingUtfText() string
func (*ServerResponse) ReadUtf ¶
func (response *ServerResponse) ReadUtf() string
type ServerStat ¶
type ServerStat struct { // RunningClients Подключенные клиенты. RunningClients []ClientInfo // ClientCount Число клиентов, подключенных в текущий момент. ClientCount int // TotalCommandCount Общее количество команд, // исполненных сервером с момента запуска. TotalCommandCount int }
ServerStat Статистика работы ИРБИС-сервера.
func (*ServerStat) Parse ¶
func (stat *ServerStat) Parse(lines []string)
func (*ServerStat) String ¶
func (stat *ServerStat) String() string
type SubField ¶
SubField Подполе записи. Состоит из кода и значения.
func NewSubField ¶
NewSubField Конструктор, создает подполе с указанными кодом и значением.
type TableDefinition ¶
type TableDefinition struct { // Database Имя базы данных. Database string // Table Имя таблицы. Table string // Headers Заголовки таблицы. Headers []string // Mode Режим таблицы. Mode string // SearchQuery Поисковый запрос. SearchQuery string // MinMfn Минимальный MFN. MinMfn int // MaxMfn Максимальный MFN. MaxMfn int // SequentialQuery Запрос для последовательного поиска. SequentialQuery string // MfnList Список MFN, по которым строится таблица. MfnList []int }
TableDefinition Данные для метода PrintTable
func (*TableDefinition) String ¶
func (table *TableDefinition) String() string
type Tcp4ClientSocket ¶
type Tcp4ClientSocket struct {
// contains filtered or unexported fields
}
func NewTcp4ClientSocket ¶
func NewTcp4ClientSocket(connection *Connection) *Tcp4ClientSocket
func (*Tcp4ClientSocket) TalkToServer ¶
func (client *Tcp4ClientSocket) TalkToServer(query *ClientQuery) *ServerResponse
type TermInfo ¶
type TermInfo struct { // Count Количество ссылок. Count int // Text Поисковый термин. Text string }
TermInfo Информация о термине поискового словаря.
func ParseTerms ¶
ParseTerms Разбор ответа сервера, содержащего массив терминов.
type TermParameters ¶
type TermParameters struct { // Database Имя базы данных. Database string // NumberOfTerms Количество считываемых терминов. NumberOfTerms int // ReverseOrder Возвращать в обратном порядке? ReverseOrder bool // StartTerm Начальный термин. StartTerm string // Format Формат Format string }
TermParameters Параметры для запроса терминов с сервера.
type TermPosting ¶
type TermPosting struct { // Mfn MFN записи с искомым термином. Mfn int // Tag Метка поля с искомым термином. Tag int // Occurrence Номер повторения поля. Occurrence int // Count Количество повторений. Count int // Text Результат форматирования. Text string }
TermPosting Постинг термина в поисковом индексе.
func ParsePostings ¶
func ParsePostings(lines []string) (result []TermPosting)
func (*TermPosting) String ¶
func (posting *TermPosting) String() string
type UserInfo ¶
type UserInfo struct { Number string // номер по порядку в списке. Name string // логин. Password string // пароль. Cataloger string // доступность АРМ "Каталогизатор". Reader string // доступность АРМ "Читатель". Circulation string // доступность АРМ "Книговыдача". Acquisitions string // доступность АРМ "Комплектатор". Provision string // доступность АРМ "Книгообеспеченность". Administrator string // доступность АРМ "Администратор". }
Информация о зарегистрированном пользователе системы (по данным client_m.mnu).
type VersionInfo ¶
func (*VersionInfo) Parse ¶
func (version *VersionInfo) Parse(lines []string)
func (*VersionInfo) String ¶
func (version *VersionInfo) String() string
type WsLine ¶
type WsLine struct { Tag string // Числовая метка поля. Title string // Наименование поля. Repeatable string // Повторяемость. Help string // Индекс контекстной помощи. EditMode string // Режим ввода. InputInfo string // Дополнительная информация для расширенных средств ввода FormalVerification string // Формально-логический контроль Hint string // Подсказка - текст помощи (инструкции), сопровождающий ввод в поле DefaultValue string // Значение по умолчанию при создании новой записи Reserved string // Используется при определенных режимах ввода }
WsLine - одна строчка ввода в рабочем листе.
type XrfFile ¶
type XrfFile struct {
// contains filtered or unexported fields
}
XrfFile - обёртка над XRF-файлом.
func OpenXrfFile ¶
OpenXrfFile открывает файл на чтение.
Source Files ¶
- Builder.go
- ClientQuery.go
- ClientSocket.go
- Connection.go
- Constants.go
- DatabaseInfo.go
- DirectAccessor.go
- FoundLine.go
- Gbl.go
- IfpFile.go
- IniFile.go
- Iso2709.go
- MarcRecord.go
- MenuFile.go
- MstFile.go
- OptFile.go
- ParFile.go
- PlainText.go
- PostingParameters.go
- ProcessInfo.go
- RawRecord.go
- RecordField.go
- SearchParameters.go
- SearchScenario.go
- ServerResponse.go
- ServerStat.go
- SubField.go
- TableDefinition.go
- TermInfo.go
- TermParameters.go
- TermPosting.go
- TreeFile.go
- UserInfo.go
- Utilities.go
- VersionInfo.go
- Win1251.go
- Worksheet.go
- XrfFile.go