Documentation ¶
Index ¶
- Variables
- func DblQuote(s string) string
- func GetArcCatalog(service string, dtype string, dbPath string) []byte
- func GetArcQuery(catalog string, service string, layerid int, dtype string, oidname string, ...) []byte
- func GetArcService(catalog string, service string, layerid int, dtype string, dbPath string) []byte
- func GetDataBase(project structs.Project) *sql.DB
- func GetParam(DbSource string, i int) string
- func GetReplicaDB(name string) *sql.DB
- func Initialize()
- func LoadConfigurationFromFile(DataPath string)
- func PrintServerSummary()
- func PrintServerSummaryTable(w http.ResponseWriter)
- func SetArcCatalog(json []byte, service string, dtype string, dbPath string) bool
- func SetArcService(json []byte, catalog string, service string, layerid int, dtype string, ...) bool
Constants ¶
This section is empty.
Variables ¶
View Source
var AccessToken = "" /* 172-byte string literal not displayed */
View Source
var Collector structs.Collector
View Source
var ESRILibraryPath = "d:/bin/stgeometry_sqlite.dll"
View Source
var RefreshToken = "" /* 280-byte string literal not displayed */
View Source
var Server = ""
var config map[string]interface{} var defaultService = "" var UploadPath = ""
View Source
var ServiceName string
leasecompliance2016
View Source
var SqlFlags = "?cache=shared&mode=wrc"
var Project structs.Project var DataPath = "catalogs"
View Source
var SqlWalFlags = "?PRAGMA journal_mode=WAL"
View Source
var UUID = ""
Functions ¶
func GetArcCatalog ¶
GetArcCatalog queries the database for top level catalog entries
func GetArcQuery ¶
func GetArcService ¶
func GetReplicaDB(name string) *sql.DB { if Collector.ReplicaDB[name] == nil { var err error //var db *sql.DB //Collector.Projects[name].ReplicaDB = make(sql.DB) Collector.ReplicaDB[name], err = sql.Open("sqlite3", Collector.Projects[name].ReplicaPath+SqlFlags) if err != nil { log.Fatal(err) } err = Collector.ReplicaDB[name].Ping() if err != nil { log.Fatalf("Error on opening database connection: %s", err.Error()) } } return Collector.ReplicaDB[name] }
GetArcService queries the database for service layer entries
func GetReplicaDB ¶
func Initialize ¶
func Initialize()
func LoadConfigurationFromFile ¶
func LoadConfigurationFromFile(DataPath string)
func SetDatasource(newDatasource int) { if DbSource == newDatasource { return } if newDatasource == FILE { DbSource = FILE //close db Db.Close() return } var err error if newDatasource == PGSQL { Db, err = sql.Open("postgres", Project.PG) if err != nil { log.Fatal(err) } DbQuery = Db log.Print("Postgresql database: " + Project.PG) log.Print("Pinging Postgresql: ") log.Println(Db.Ping) } else if newDatasource == SQLITE3 { Db, err = sql.Open("sqlite3", "file:"+Collector.SqliteDb+SqlWalFlags) if err != nil { log.Fatal(err) } DbQueryName := DataPath + string(os.PathSeparator) + ServiceName + string(os.PathSeparator) + "replicas" + string(os.PathSeparator) + ServiceName + ".geodatabase" log.Println("DbQueryName: " + DbQueryName) DbQuery, err = sql.Open("sqlite3", "file:"+DbQueryName+SqlWalFlags) if err != nil { log.Fatal(err) } } }
func LoadConfiguration() {
sql := "select json from catalog where name=" + GetParam(1) log.Printf("Query: select json from catalog where name='config'") stmt, err := Db.Prepare(sql) if err != nil { log.Println(err.Error()) } var str []byte if err = stmt.QueryRow("config") if err != nil { log.Println("Error reading configuration table") log.Println(err.Error()) LoadConfigurationFromFile() return } err = json.Unmarshal(str, &Collector) if err != nil { log.Println("Error parsing configuration table") log.Println(err.Error()) LoadConfigurationFromFile() return } //Project = Collector.Projects[0] //for i, _ := range Project.Services { // ServiceName = i // //ServiceName = val[i] //} }
func PrintServerSummary ¶
func PrintServerSummary()
func PrintServerSummaryTable ¶
func PrintServerSummaryTable(w http.ResponseWriter)
func SetArcCatalog ¶
GetArcCatalog queries the database for top level catalog entries
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.