Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions api/piquant/configuration_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,12 @@ func Example_piquant_ReadFieldFromPIQUANTConfigMSA() {
#SOLIDANGLE : 0.224 Solid angle collected by the detector in steradians`

a, err := ReadFieldFromPIQUANTConfigMSA(piquantMSA, "ELEVANGLE")
fmt.Printf("%v|%v\n", a, err)

a, err = ReadFieldFromPIQUANTConfigMSA(piquantMSA, "ELEEEVANGLE")
fmt.Printf("%v|%v", a, err)

// Output:
// 48.03|<nil>
// 0|Failed to find field ELEEEVANGLE
}
28 changes: 28 additions & 0 deletions api/ws/handlers/piquant.go
Original file line number Diff line number Diff line change
Expand Up @@ -109,3 +109,31 @@ func HandlePiquantWriteCurrentVersionReq(req *protos.PiquantWriteCurrentVersionR

return &protos.PiquantWriteCurrentVersionResp{}, nil
}

// TODO: DO A SIMPLE INTEGRATION TEST FOR THIS!!
func HandlePiquantConfigFileReq(req *protos.PiquantConfigFileReq, hctx wsHelpers.HandlerContext) (*protos.PiquantConfigFileResp, error) {
// Validate inputs
if err := wsHelpers.CheckStringField(&req.ConfigId, "ConfigId", 1, wsHelpers.IdFieldMaxLength); err != nil {
return nil, err
}
if err := wsHelpers.CheckStringField(&req.Version, "Version", 1, wsHelpers.IdFieldMaxLength); err != nil {
return nil, err
}
if err := wsHelpers.CheckStringField(&req.Filename, "Filename", 1, 255); err != nil {
return nil, err
}

// Build the file path
filePath := filepaths.GetDetectorConfigPath(req.ConfigId, req.Version, req.Filename)

// Read the file from S3
fileBytes, err := hctx.Svcs.FS.ReadObject(hctx.Svcs.Config.ConfigBucket, filePath)
if err != nil {
hctx.Svcs.Log.Errorf("Failed to read piquant config file %v/%v: %v", hctx.Svcs.Config.ConfigBucket, filePath, err)
return nil, err
}

return &protos.PiquantConfigFileResp{
Contents: string(fileBytes),
}, nil
}
2 changes: 1 addition & 1 deletion data-formats
7 changes: 6 additions & 1 deletion generated-protos/detector-config-msgs.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 6 additions & 1 deletion generated-protos/detector-config.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 6 additions & 1 deletion generated-protos/diffraction-data.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 6 additions & 1 deletion generated-protos/diffraction-detected-peak-msgs.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 6 additions & 1 deletion generated-protos/diffraction-manual-msgs.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 6 additions & 1 deletion generated-protos/diffraction-status-msgs.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 6 additions & 1 deletion generated-protos/diffraction.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 6 additions & 1 deletion generated-protos/doi-msgs.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 6 additions & 1 deletion generated-protos/doi.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 6 additions & 1 deletion generated-protos/element-set-msgs.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 6 additions & 1 deletion generated-protos/element-set.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading