added unique indexes to category
moved category methods down
This commit is contained in:
parent
2a4a8e2e01
commit
402ac902a5
@ -70,22 +70,6 @@ func NewLocalDataStore() *LocalDataStore {
|
|||||||
return &LocalDataStore{}
|
return &LocalDataStore{}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (d *LocalDataStore) SaveCategory(category CategoryData) error {
|
|
||||||
panic("implement me")
|
|
||||||
}
|
|
||||||
|
|
||||||
func (d *LocalDataStore) GetCategoryByPiwigoId(id int) (CategoryData, error) {
|
|
||||||
panic("implement me")
|
|
||||||
}
|
|
||||||
|
|
||||||
func (d *LocalDataStore) GetCategoryByKey(key string) (CategoryData, error) {
|
|
||||||
panic("implement me")
|
|
||||||
}
|
|
||||||
|
|
||||||
func (d *LocalDataStore) GetCategoriesToCreate() ([]CategoryData, error) {
|
|
||||||
panic("implement me")
|
|
||||||
}
|
|
||||||
|
|
||||||
func (d *LocalDataStore) Initialize(connectionString string) error {
|
func (d *LocalDataStore) Initialize(connectionString string) error {
|
||||||
if connectionString == "" {
|
if connectionString == "" {
|
||||||
return errors.New("connection string could not be empty.")
|
return errors.New("connection string could not be empty.")
|
||||||
@ -286,10 +270,6 @@ func (d *LocalDataStore) SavePiwigoIdAndUpdateUploadFlag(md5Sum string, piwigoId
|
|||||||
}
|
}
|
||||||
|
|
||||||
_, err = stmt.Exec(piwigoId, uploadRequired, md5Sum)
|
_, err = stmt.Exec(piwigoId, uploadRequired, md5Sum)
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logrus.Errorf("Rolling back transaction for piwigo id update of file %s", md5Sum)
|
logrus.Errorf("Rolling back transaction for piwigo id update of file %s", md5Sum)
|
||||||
errTx := tx.Rollback()
|
errTx := tx.Rollback()
|
||||||
@ -330,6 +310,22 @@ func (d *LocalDataStore) DeleteMarkedImages() error {
|
|||||||
return tx.Commit()
|
return tx.Commit()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (d *LocalDataStore) SaveCategory(category CategoryData) error {
|
||||||
|
panic("implement me")
|
||||||
|
}
|
||||||
|
|
||||||
|
func (d *LocalDataStore) GetCategoryByPiwigoId(id int) (CategoryData, error) {
|
||||||
|
panic("implement me")
|
||||||
|
}
|
||||||
|
|
||||||
|
func (d *LocalDataStore) GetCategoryByKey(key string) (CategoryData, error) {
|
||||||
|
panic("implement me")
|
||||||
|
}
|
||||||
|
|
||||||
|
func (d *LocalDataStore) GetCategoriesToCreate() ([]CategoryData, error) {
|
||||||
|
panic("implement me")
|
||||||
|
}
|
||||||
|
|
||||||
func (d *LocalDataStore) insertImageMetaData(tx *sql.Tx, data ImageMetaData) error {
|
func (d *LocalDataStore) insertImageMetaData(tx *sql.Tx, data ImageMetaData) error {
|
||||||
stmt, err := tx.Prepare("INSERT INTO image (piwigoId, fullImagePath, fileName, md5sum, lastChanged, categoryPath, categoryPiwigoId, uploadRequired, deleteRequired) VALUES (?,?,?,?,?,?,?,?,?)")
|
stmt, err := tx.Prepare("INSERT INTO image (piwigoId, fullImagePath, fileName, md5sum, lastChanged, categoryPath, categoryPiwigoId, uploadRequired, deleteRequired) VALUES (?,?,?,?,?,?,?,?,?)")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -373,19 +369,30 @@ func (d *LocalDataStore) createTablesIfNeeded(db *sql.DB) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
_, err = db.Exec("CREATE TABLE IF NOT EXISTS category (" +
|
_, err = db.Exec("CREATE TABLE IF NOT EXISTS category (" +
|
||||||
"CategoryId INTEGER PRIMARY KEY," +
|
"categoryId INTEGER PRIMARY KEY," +
|
||||||
"PiwigoId INTEGER NULL," +
|
"piwigoId INTEGER NULL," +
|
||||||
"PiwigoParentId INTEGER NULL," +
|
"piwigoParentId INTEGER NULL," +
|
||||||
"Name NVARCHAR(255) NOT NULL," +
|
"name NVARCHAR(255) NOT NULL," +
|
||||||
"Key NVARCHAR(1000) NOT NULL" +
|
"key NVARCHAR(1000) NOT NULL" +
|
||||||
");")
|
");")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_, err = db.Exec("CREATE UNIQUE INDEX IF NOT EXISTS UX_Category_Key ON category (key);")
|
||||||
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_, err = db.Exec("CREATE UNIQUE INDEX IF NOT EXISTS UX_Category_PiwigoId ON category (piwigoId);")
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
logrus.Debug("Database successfully initialized")
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
func (d *LocalDataStore) updateImageMetaData(tx *sql.Tx, data ImageMetaData) error {
|
func (d *LocalDataStore) updateImageMetaData(tx *sql.Tx, data ImageMetaData) error {
|
||||||
stmt, err := tx.Prepare("UPDATE image SET piwigoId = ?, fullImagePath = ?, fileName = ?, md5sum = ?, lastChanged = ?, categoryPath = ?, categoryPiwigoId = ?, uploadRequired = ?, deleteRequired = ? WHERE imageId = ?")
|
stmt, err := tx.Prepare("UPDATE image SET piwigoId = ?, fullImagePath = ?, fileName = ?, md5sum = ?, lastChanged = ?, categoryPath = ?, categoryPiwigoId = ?, uploadRequired = ?, deleteRequired = ? WHERE imageId = ?")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
Loading…
Reference in New Issue
Block a user