mirror of
https://github.com/xpipe-io/xpipe.git
synced 2024-11-22 07:30:24 +00:00
Small fixes and cleanup
This commit is contained in:
parent
768da75992
commit
0d65db95f9
4 changed files with 3 additions and 184 deletions
|
@ -189,7 +189,7 @@ public class BeaconClient implements AutoCloseable {
|
||||||
}
|
}
|
||||||
|
|
||||||
public <T extends RequestMessage> void sendRequest(T req) throws ClientException, ConnectorException {
|
public <T extends RequestMessage> void sendRequest(T req) throws ClientException, ConnectorException {
|
||||||
ObjectNode json = JacksonMapper.newMapper().valueToTree(req);
|
ObjectNode json = JacksonMapper.getDefault().valueToTree(req);
|
||||||
var prov = MessageExchanges.byRequest(req);
|
var prov = MessageExchanges.byRequest(req);
|
||||||
if (prov.isEmpty()) {
|
if (prov.isEmpty()) {
|
||||||
throw new ClientException("Unknown request class " + req.getClass());
|
throw new ClientException("Unknown request class " + req.getClass());
|
||||||
|
|
|
@ -1,175 +0,0 @@
|
||||||
package io.xpipe.core.source;
|
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonCreator;
|
|
||||||
import com.fasterxml.jackson.annotation.JsonTypeInfo;
|
|
||||||
import com.fasterxml.jackson.annotation.JsonTypeName;
|
|
||||||
import io.xpipe.core.data.type.TupleType;
|
|
||||||
import lombok.EqualsAndHashCode;
|
|
||||||
import lombok.Value;
|
|
||||||
|
|
||||||
import java.util.OptionalInt;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* A data source info instances contains all required
|
|
||||||
* essential information of a specific data source type.
|
|
||||||
*
|
|
||||||
* This information is usually determined only once on data
|
|
||||||
* source creation, as this process might be expensive.
|
|
||||||
*
|
|
||||||
* @see DataSourceType
|
|
||||||
*/
|
|
||||||
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "type")
|
|
||||||
public abstract class DataSourceInfo {
|
|
||||||
|
|
||||||
public abstract DataSourceType getType();
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Casts this instance to a table info.
|
|
||||||
*/
|
|
||||||
public Table asTable() {
|
|
||||||
if (!getType().equals(DataSourceType.TABLE)) {
|
|
||||||
throw new IllegalStateException("Not a table");
|
|
||||||
}
|
|
||||||
|
|
||||||
return (Table) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Casts this instance to a structure info.
|
|
||||||
*/
|
|
||||||
public Structure asStructure() {
|
|
||||||
if (!getType().equals(DataSourceType.STRUCTURE)) {
|
|
||||||
throw new IllegalStateException("Not a structure");
|
|
||||||
}
|
|
||||||
|
|
||||||
return (Structure) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Casts this instance to a text info.
|
|
||||||
*/
|
|
||||||
public Text asText() {
|
|
||||||
if (!getType().equals(DataSourceType.TEXT)) {
|
|
||||||
throw new IllegalStateException("Not a text");
|
|
||||||
}
|
|
||||||
|
|
||||||
return (Text) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Casts this instance to a raw info.
|
|
||||||
*/
|
|
||||||
public Raw asRaw() {
|
|
||||||
if (!getType().equals(DataSourceType.RAW)) {
|
|
||||||
throw new IllegalStateException("Not raw");
|
|
||||||
}
|
|
||||||
|
|
||||||
return (Raw) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Casts this instance to a collection info.
|
|
||||||
*/
|
|
||||||
public Collection asCollection() {
|
|
||||||
if (!getType().equals(DataSourceType.COLLECTION)) {
|
|
||||||
throw new IllegalStateException("Not a collection");
|
|
||||||
}
|
|
||||||
|
|
||||||
return (Collection) this;
|
|
||||||
}
|
|
||||||
|
|
||||||
@EqualsAndHashCode(callSuper = false)
|
|
||||||
@Value
|
|
||||||
@JsonTypeName("table")
|
|
||||||
public static class Table extends DataSourceInfo {
|
|
||||||
TupleType dataType;
|
|
||||||
int rowCount;
|
|
||||||
|
|
||||||
@JsonCreator
|
|
||||||
public Table(TupleType dataType, int rowCount) {
|
|
||||||
this.dataType = dataType;
|
|
||||||
this.rowCount = rowCount;
|
|
||||||
}
|
|
||||||
|
|
||||||
public OptionalInt getRowCountIfPresent() {
|
|
||||||
return getRowCount() != -1 ? OptionalInt.of(getRowCount()) : OptionalInt.empty();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public DataSourceType getType() {
|
|
||||||
return DataSourceType.TABLE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@EqualsAndHashCode(callSuper = false)
|
|
||||||
@Value
|
|
||||||
@JsonTypeName("structure")
|
|
||||||
public static class Structure extends DataSourceInfo {
|
|
||||||
|
|
||||||
int entries;
|
|
||||||
|
|
||||||
@JsonCreator
|
|
||||||
public Structure(int entries) {
|
|
||||||
this.entries = entries;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public DataSourceType getType() {
|
|
||||||
return DataSourceType.STRUCTURE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@EqualsAndHashCode(callSuper = false)
|
|
||||||
@Value
|
|
||||||
@JsonTypeName("collection")
|
|
||||||
public static class Collection extends DataSourceInfo {
|
|
||||||
|
|
||||||
int entries;
|
|
||||||
|
|
||||||
@JsonCreator
|
|
||||||
public Collection(int entries) {
|
|
||||||
this.entries = entries;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public DataSourceType getType() {
|
|
||||||
return DataSourceType.COLLECTION;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@EqualsAndHashCode(callSuper = false)
|
|
||||||
@Value
|
|
||||||
@JsonTypeName("text")
|
|
||||||
public static class Text extends DataSourceInfo {
|
|
||||||
int characters;
|
|
||||||
int lineCount;
|
|
||||||
|
|
||||||
@JsonCreator
|
|
||||||
public Text(int characters, int lineCount) {
|
|
||||||
this.characters = characters;
|
|
||||||
this.lineCount = lineCount;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public DataSourceType getType() {
|
|
||||||
return DataSourceType.TEXT;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@EqualsAndHashCode(callSuper = false)
|
|
||||||
@Value
|
|
||||||
@JsonTypeName("raw")
|
|
||||||
public static class Raw extends DataSourceInfo {
|
|
||||||
int byteCount;
|
|
||||||
|
|
||||||
@JsonCreator
|
|
||||||
public Raw(int byteCount) {
|
|
||||||
this.byteCount = byteCount;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public DataSourceType getType() {
|
|
||||||
return DataSourceType.RAW;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -23,7 +23,6 @@ import io.xpipe.core.dialog.HeaderElement;
|
||||||
import io.xpipe.core.impl.*;
|
import io.xpipe.core.impl.*;
|
||||||
import io.xpipe.core.process.ShellTypes;
|
import io.xpipe.core.process.ShellTypes;
|
||||||
import io.xpipe.core.source.DataSource;
|
import io.xpipe.core.source.DataSource;
|
||||||
import io.xpipe.core.source.DataSourceInfo;
|
|
||||||
import io.xpipe.core.source.DataSourceReference;
|
import io.xpipe.core.source.DataSourceReference;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
@ -48,11 +47,6 @@ public class CoreJacksonModule extends SimpleModule {
|
||||||
new NamedType(ShellTypes.Cmd.class),
|
new NamedType(ShellTypes.Cmd.class),
|
||||||
new NamedType(ShellTypes.PowerShell.class),
|
new NamedType(ShellTypes.PowerShell.class),
|
||||||
new NamedType(ShellTypes.Sh.class),
|
new NamedType(ShellTypes.Sh.class),
|
||||||
new NamedType(DataSourceInfo.Table.class),
|
|
||||||
new NamedType(DataSourceInfo.Structure.class),
|
|
||||||
new NamedType(DataSourceInfo.Text.class),
|
|
||||||
new NamedType(DataSourceInfo.Collection.class),
|
|
||||||
new NamedType(DataSourceInfo.Raw.class),
|
|
||||||
new NamedType(BaseQueryElement.class),
|
new NamedType(BaseQueryElement.class),
|
||||||
new NamedType(ChoiceElement.class),
|
new NamedType(ChoiceElement.class),
|
||||||
new NamedType(BusyElement.class),
|
new NamedType(BusyElement.class),
|
||||||
|
|
|
@ -48,9 +48,9 @@ public class XPipeInstallation {
|
||||||
public static String getDataBasePath(ShellProcessControl p) throws Exception {
|
public static String getDataBasePath(ShellProcessControl p) throws Exception {
|
||||||
if (p.getOsType().equals(OsType.WINDOWS)) {
|
if (p.getOsType().equals(OsType.WINDOWS)) {
|
||||||
var base = p.executeSimpleCommand(p.getShellType().getPrintVariableCommand("userprofile"));
|
var base = p.executeSimpleCommand(p.getShellType().getPrintVariableCommand("userprofile"));
|
||||||
return FileNames.join(base, "X-Pipe");
|
return FileNames.join(base, ".xpipe");
|
||||||
} else {
|
} else {
|
||||||
return FileNames.join("~", "xpipe");
|
return FileNames.join("~", ".xpipe");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue