1 Commits

Author SHA1 Message Date
kor-elf 8a32dfaff3 Merge pull request 'v0.1.0' (#1) from develop into main
Reviewed-on: #1
2026-04-09 22:15:30 +05:00
3 changed files with 14 additions and 14 deletions
+1 -2
View File
@@ -2,14 +2,13 @@ package geoip2
import ( import (
"context" "context"
"errors"
"fmt" "fmt"
"net/netip" "net/netip"
"strings" "strings"
) )
// ErrNotFound is returned when the database does not contain the IP address. // ErrNotFound is returned when the database does not contain the IP address.
var ErrNotFound = errors.New("not found") const ErrNotFound = "not found"
// Info is a structure that contains information about the IP address. // Info is a structure that contains information about the IP address.
type Info struct { type Info struct {
+4 -3
View File
@@ -1,6 +1,7 @@
package mmdb package mmdb
import ( import (
"errors"
"net/netip" "net/netip"
"git.kor-elf.net/kor-elf-shield/geoip2" "git.kor-elf.net/kor-elf-shield/geoip2"
@@ -18,7 +19,7 @@ const (
// City is a structure that contains information about the IP address. // City is a structure that contains information about the IP address.
type City struct { type City struct {
// lang is a language. // lang is a language.
lang Language lang language
} }
// NewCity creates a new City instance. // NewCity creates a new City instance.
@@ -26,7 +27,7 @@ type City struct {
// @param logger - a logger // @param logger - a logger
// @param dir - a directory for storing MaxMind GeoIP2 database // @param dir - a directory for storing MaxMind GeoIP2 database
// @return geoip2.RefreshableGeoIP2 - a MaxMind GeoIP2 database service // @return geoip2.RefreshableGeoIP2 - a MaxMind GeoIP2 database service
func NewCity(download *Download, logger geoip2.Logger, dir string, language Language) geoip2.RefreshableGeoIP2 { func NewCity(download *Download, logger geoip2.Logger, dir string, language language) geoip2.RefreshableGeoIP2 {
city := &City{ city := &City{
lang: language, lang: language,
} }
@@ -46,7 +47,7 @@ func (c *City) infoCity(ip netip.Addr, reader *oschwaldGeoip2.Reader) (geoip2.In
return geoip2.Info{}, err return geoip2.Info{}, err
} }
if !record.HasData() { if !record.HasData() {
return geoip2.Info{}, geoip2.ErrNotFound return geoip2.Info{}, errors.New(geoip2.ErrNotFound)
} }
var timeZone string var timeZone string
+9 -9
View File
@@ -1,15 +1,15 @@
package mmdb package mmdb
type Language string type language string
const ( const (
LanguageRussian = Language("Russian") LanguageRussian = language("Russian")
LanguageEnglish = Language("English") LanguageEnglish = language("English")
LanguageSpanish = Language("Spanish") LanguageSpanish = language("Spanish")
LanguageFrench = Language("French") LanguageFrench = language("French")
LanguageGerman = Language("German") LanguageGerman = language("German")
LanguageJapanese = Language("Japanese") LanguageJapanese = language("Japanese")
LanguageBrazilianPortuguese = Language("BrazilianPortuguese") LanguageBrazilianPortuguese = language("BrazilianPortuguese")
LanguageSimplifiedChinese = Language("SimplifiedChinese") LanguageSimplifiedChinese = language("SimplifiedChinese")
) )