delete javaentites

This commit is contained in:
cyber-dream 2023-02-04 20:47:49 +03:00
parent 815e624c64
commit 4cf354733c

View File

@ -1,78 +1,75 @@
package javaentities
import (
"errors"
"os"
"path"
"runtime"
"strconv"
"strings"
)
// type JavaVersion struct {
// Component string
// Type string
// Name string
// Major int
// Minor int
// Patch int
// }
type JavaVersion struct {
Major int
Minor int
Patch int
}
// type JavaMetas struct {
// JavaVersions []JavaMeta `json:"javaVersions"`
// }
type JavaMetas struct {
JavaVersions []JavaMeta `json:"javaVersions"`
}
// func (jm JavaMetas) FindSpecificJavaOsByMajor(version JavaVersion) (SpecificJavaVersion, error) {
// for _, v := range jm.JavaVersions {
// if version.Major == v.Version.Major {
// jv, err := v.getOsJava()
// if err != nil {
// continue
// }
// return jv, nil
// }
// }
// return SpecificJavaVersion{}, errors.New("cant find os url")
// }
func (jm JavaMetas) FindOsURL(MajorVersion string) (SpecificJavaVersion, error) {
for _, v := range jm.JavaVersions {
if MajorVersion == v.Version.Major {
jv, err := v.getOsJava()
if err != nil {
continue
}
return jv, nil
}
}
return SpecificJavaVersion{}, errors.New("cant find os url")
}
// func (jm JavaMetas) FindSpecificJava(MajorVersion string)
type JavaMeta struct {
Version struct {
Major string `json:"major"`
Minor string `json:"minor"`
Patch string `json:"patch"`
} `json:"version"`
Specifics `json:"specifics"`
}
// type JavaMeta struct {
// Version struct {
// Major int `json:"major"`
// Minor int `json:"minor"`
// Patch int `json:"patch"`
// } `json:"version"`
// Name string
// Specifics `json:"specifics"`
// }
type SpecificJavaVersion struct {
Os string `json:"os"`
Arch string `json:"arch"`
URL string `json:"URL"`
Sha1 string `json:"SHA1"`
}
// type SpecificJavaVersion struct {
// Os string `json:"os"`
// Arch string `json:"arch"`
// URL string `json:"URL"`
// Sha1 string `json:"SHA1"`
// }
type Specifics []SpecificJavaVersion
// type Specifics []SpecificJavaVersion
func (s Specifics) getOsJava() (SpecificJavaVersion, error) {
for _, v := range s {
if v.Os == runtime.GOOS {
return v, nil
}
}
return SpecificJavaVersion{}, errors.New("not java for current os")
}
// func (s Specifics) getOsJava() (SpecificJavaVersion, error) {
// for _, v := range s {
// if v.Os == runtime.GOOS {
// return v, nil
// }
// }
// return SpecificJavaVersion{}, errors.New("not java for current os")
// }
func (v *JavaVersion) CheckNotExists(launcherPath string) bool {
javaBinPath := path.Join(launcherPath, ".redist", "java", v.GetString())
_, err := os.Stat(javaBinPath)
// func (v *JavaVersion) CheckNotExists(launcherPath string) bool {
// javaBinPath := path.Join(launcherPath, ".redist", "java", v.GetString())
// _, err := os.Stat(javaBinPath)
return err != nil
}
// return err != nil
// }
func (v *JavaVersion) GetString() string {
var stringBuilder strings.Builder
stringBuilder.WriteString(strconv.Itoa(v.Major))
stringBuilder.WriteRune('.')
stringBuilder.WriteString(strconv.Itoa(v.Minor))
stringBuilder.WriteRune('.')
stringBuilder.WriteString(strconv.Itoa(v.Patch))
// func (v *JavaVersion) GetString() string {
// var stringBuilder strings.Builder
// stringBuilder.WriteString(strconv.Itoa(v.Major))
// stringBuilder.WriteRune('.')
// stringBuilder.WriteString(strconv.Itoa(v.Minor))
// stringBuilder.WriteRune('.')
// stringBuilder.WriteString(strconv.Itoa(v.Patch))
return stringBuilder.String()
}
// return stringBuilder.String()
// }