Add database support, basic client-side event processing

This commit is contained in:
2013-02-18 20:44:00 -05:00
parent 6975ef035c
commit b193814371
6 changed files with 242 additions and 65 deletions

44
util.go Normal file
View File

@ -0,0 +1,44 @@
package main
import (
"io"
"io/ioutil"
"os"
"path"
)
func ensureDirExists(dir string) error {
_, err := os.Lstat(dir)
if err != nil {
fi, err := os.Lstat(path.Dir(dir))
if err != nil {
return err
}
err = os.Mkdir(dir, fi.Mode().Perm())
if err != nil {
return err
}
}
return nil
}
func copyToTmp(src string, tmpdir string) (string, error) {
infile, err := os.Open(src)
if err != nil {
return "", err
}
defer infile.Close()
outfile, err := ioutil.TempFile(tmpdir, "asink")
if err != nil {
return "", err
}
defer outfile.Close()
_, err = io.Copy(outfile, infile)
if err != nil {
return "", err
}
return outfile.Name(), nil
}