diff --git a/casdoor/resource.go b/casdoor/resource.go index 9b73ce8..ee2f6fd 100644 --- a/casdoor/resource.go +++ b/casdoor/resource.go @@ -15,38 +15,15 @@ package casdoor import ( - "fmt" - - "github.com/astaxie/beego" - "github.com/casbin/casibase/util" "github.com/casdoor/casdoor-go-sdk/casdoorsdk" ) func ListResources(prefix string) ([]*casdoorsdk.Resource, error) { - prefix = util.GetIdFromOwnerAndName(fmt.Sprintf("/resource/%s/%s/casibase", - beego.AppConfig.String("casdoorOrganization"), - beego.AppConfig.String("casdoorApplication")), prefix) - - result := make([]*casdoorsdk.Resource, 0) - err := adapter.Engine.Where("name like ?", prefix+"%").Find(&result) - if err != nil { - return nil, err - } - - return result, nil + res, err := casdoorsdk.GetResources("built-in", "admin", "", "", "", "") + return res, err } func GetResource(key string) (*casdoorsdk.Resource, error) { - id := fmt.Sprintf("/resource/%s/%s/casibase/%s", Organization, Application, key) - resource := casdoorsdk.Resource{Owner: Organization, Name: id} - existed, err := adapter.Engine.Get(&resource) - if err != nil { - return nil, err - } - - if existed { - return &resource, nil - } else { - return nil, fmt.Errorf("resource %s not found", key) - } + res, err := casdoorsdk.GetResourceEx("built-in", key) + return res, err } diff --git a/go.mod b/go.mod index 40bef6d..50df6c1 100644 --- a/go.mod +++ b/go.mod @@ -7,7 +7,7 @@ require ( github.com/aliyun/aliyun-oss-go-sdk v2.2.2+incompatible github.com/astaxie/beego v1.12.3 github.com/baiyubin/aliyun-sts-go-sdk v0.0.0-20180326062324-cfa1a18b161f // indirect - github.com/casdoor/casdoor-go-sdk v0.25.0 + github.com/casdoor/casdoor-go-sdk v0.27.0 github.com/cespare/xxhash/v2 v2.2.0 // indirect github.com/danaugrs/go-tsne/tsne v0.0.0-20220306155740-2250969e057f github.com/fsnotify/fsnotify v1.6.0 // indirect diff --git a/go.sum b/go.sum index e6d0cda..a847b71 100644 --- a/go.sum +++ b/go.sum @@ -86,8 +86,8 @@ github.com/boombuler/barcode v1.0.1/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl github.com/bradfitz/gomemcache v0.0.0-20180710155616-bc664df96737/go.mod h1:PmM6Mmwb0LSuEubjR8N7PtNe1KxZLtOUHtbeikc5h60= github.com/casbin/casbin v1.7.0/go.mod h1:c67qKN6Oum3UF5Q1+BByfFxkwKvhwW57ITjqwtzR1KE= github.com/casbin/casbin/v2 v2.1.2/go.mod h1:YcPU1XXisHhLzuxH9coDNf2FbKpjGlbCg3n9yuLkIJQ= -github.com/casdoor/casdoor-go-sdk v0.25.0 h1:hrx10mgpLgWqNsgFKQN/ljJsnD1i0cytW+S+2XxmxyQ= -github.com/casdoor/casdoor-go-sdk v0.25.0/go.mod h1:MBed3ISHQfXTtoOCAk5T8l5lt4wFvsyynrw0awggydY= +github.com/casdoor/casdoor-go-sdk v0.27.0 h1:40TdcsomUxxhbtBi0huZxPZhfj+pSB8KtWkXg6Dqtk8= +github.com/casdoor/casdoor-go-sdk v0.27.0/go.mod h1:MBed3ISHQfXTtoOCAk5T8l5lt4wFvsyynrw0awggydY= github.com/cenkalti/backoff v2.2.1+incompatible/go.mod h1:90ReRw6GdpyfrHakVjL/QHaoyV4aDUVVkXQJJJ3NXXM= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= diff --git a/storage/storage.go b/storage/storage.go index e8ac793..823c29c 100644 --- a/storage/storage.go +++ b/storage/storage.go @@ -21,7 +21,6 @@ import ( "net/http" "time" - "github.com/astaxie/beego" "github.com/casbin/casibase/casdoor" "github.com/casbin/casibase/util" "github.com/casdoor/casdoor-go-sdk/casdoorsdk" @@ -45,6 +44,7 @@ func ListObjects(bucketName string, prefix string) ([]*Object, error) { res = append(res, &Object{ Key: util.GetNameFromIdNoCheck(resource.Name), LastModified: &created, + Size: int64(resource.FileSize), }) } return res, nil @@ -66,7 +66,7 @@ func GetObject(bucketName string, key string) (io.ReadCloser, error) { func PutObject(bucketName string, key string, fileBuffer *bytes.Buffer) error { _, _, err := casdoorsdk.UploadResource("Casibase", "Casibase", "Casibase", - fmt.Sprintf("/resource/%s/%s/%s", casdoor.Organization, casdoor.Application, key), fileBuffer.Bytes()) + fmt.Sprintf("/casibase/%s", key), fileBuffer.Bytes()) if err != nil { return err } @@ -74,9 +74,7 @@ func PutObject(bucketName string, key string, fileBuffer *bytes.Buffer) error { } func DeleteObject(bucketName string, key string) error { - _, err := casdoorsdk.DeleteResource(util.GetIdFromOwnerAndName(fmt.Sprintf("/resource/%s/%s/casibase", - beego.AppConfig.String("casdoorOrganization"), - beego.AppConfig.String("casdoorApplication")), key)) + _, err := casdoorsdk.DeleteResource(util.GetIdFromOwnerAndName("built-in", fmt.Sprintf("/casibase/%s", key))) if err != nil { return err } diff --git a/storage/storage_test.go b/storage/storage_test.go index 0066e1e..d29e6e1 100644 --- a/storage/storage_test.go +++ b/storage/storage_test.go @@ -18,21 +18,24 @@ package storage_test import ( + "fmt" "testing" - "github.com/casbin/casibase/casdoor" + "github.com/casbin/casibase/controllers" "github.com/casbin/casibase/object" "github.com/casbin/casibase/storage" ) func TestStorage(t *testing.T) { object.InitConfig() - casdoor.InitCasdoorAdapter() + controllers.InitAuthConfig() objects, err := storage.ListObjects("casibase", "") if err != nil { panic(err) } - println(objects) + for i, obj := range objects { + fmt.Printf("[%d] %v\n", i, obj) + } }