blob: 2f1d5208436f84dd243cfd6820231685b3b99bf2 [file] [log] [blame]
/**
* Copyright (c) 2017, 2020 Kichwa Coders Ltd. and others.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0,
* or the Eclipse Distribution License v. 1.0 which is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
*/
package org.eclipse.lsp4j.debug;
import org.eclipse.lsp4j.debug.util.Preconditions;
import org.eclipse.lsp4j.jsonrpc.validation.NonNull;
import org.eclipse.xtext.xbase.lib.Pure;
import org.eclipse.xtext.xbase.lib.util.ToStringBuilder;
/**
* Arguments for 'initialize' request.
*/
@SuppressWarnings("all")
public class InitializeRequestArguments {
/**
* The ID of the (frontend) client using this adapter.
* <p>
* This is an optional property.
*/
private String clientID;
/**
* The human readable name of the (frontend) client using this adapter.
* <p>
* This is an optional property.
*/
private String clientName;
/**
* The ID of the debug adapter.
*/
@NonNull
private String adapterID;
/**
* The ISO-639 locale of the (frontend) client using this adapter, e.g. en-US or de-CH.
* <p>
* This is an optional property.
*/
private String locale;
/**
* If true all line numbers are 1-based (default).
* <p>
* This is an optional property.
*/
private Boolean linesStartAt1;
/**
* If true all column numbers are 1-based (default).
* <p>
* This is an optional property.
*/
private Boolean columnsStartAt1;
/**
* Determines in what format paths are specified. The default is 'path', which is the native format.
* <p>
* This is an optional property.
* <p>
* Possible values include - but not limited to those defined in {@link InitializeRequestArgumentsPathFormat}
*/
private String pathFormat;
/**
* Client supports the optional type attribute for variables.
* <p>
* This is an optional property.
*/
private Boolean supportsVariableType;
/**
* Client supports the paging of variables.
* <p>
* This is an optional property.
*/
private Boolean supportsVariablePaging;
/**
* Client supports the runInTerminal request.
* <p>
* This is an optional property.
*/
private Boolean supportsRunInTerminalRequest;
/**
* Client supports memory references.
* <p>
* This is an optional property.
*/
private Boolean supportsMemoryReferences;
/**
* Client supports progress reporting.
* <p>
* This is an optional property.
*/
private Boolean supportsProgressReporting;
/**
* Client supports the invalidated event.
* <p>
* This is an optional property.
*/
private Boolean supportsInvalidatedEvent;
/**
* The ID of the (frontend) client using this adapter.
* <p>
* This is an optional property.
*/
@Pure
public String getClientID() {
return this.clientID;
}
/**
* The ID of the (frontend) client using this adapter.
* <p>
* This is an optional property.
*/
public void setClientID(final String clientID) {
this.clientID = clientID;
}
/**
* The human readable name of the (frontend) client using this adapter.
* <p>
* This is an optional property.
*/
@Pure
public String getClientName() {
return this.clientName;
}
/**
* The human readable name of the (frontend) client using this adapter.
* <p>
* This is an optional property.
*/
public void setClientName(final String clientName) {
this.clientName = clientName;
}
/**
* The ID of the debug adapter.
*/
@Pure
@NonNull
public String getAdapterID() {
return this.adapterID;
}
/**
* The ID of the debug adapter.
*/
public void setAdapterID(@NonNull final String adapterID) {
this.adapterID = Preconditions.checkNotNull(adapterID, "adapterID");
}
/**
* The ISO-639 locale of the (frontend) client using this adapter, e.g. en-US or de-CH.
* <p>
* This is an optional property.
*/
@Pure
public String getLocale() {
return this.locale;
}
/**
* The ISO-639 locale of the (frontend) client using this adapter, e.g. en-US or de-CH.
* <p>
* This is an optional property.
*/
public void setLocale(final String locale) {
this.locale = locale;
}
/**
* If true all line numbers are 1-based (default).
* <p>
* This is an optional property.
*/
@Pure
public Boolean getLinesStartAt1() {
return this.linesStartAt1;
}
/**
* If true all line numbers are 1-based (default).
* <p>
* This is an optional property.
*/
public void setLinesStartAt1(final Boolean linesStartAt1) {
this.linesStartAt1 = linesStartAt1;
}
/**
* If true all column numbers are 1-based (default).
* <p>
* This is an optional property.
*/
@Pure
public Boolean getColumnsStartAt1() {
return this.columnsStartAt1;
}
/**
* If true all column numbers are 1-based (default).
* <p>
* This is an optional property.
*/
public void setColumnsStartAt1(final Boolean columnsStartAt1) {
this.columnsStartAt1 = columnsStartAt1;
}
/**
* Determines in what format paths are specified. The default is 'path', which is the native format.
* <p>
* This is an optional property.
* <p>
* Possible values include - but not limited to those defined in {@link InitializeRequestArgumentsPathFormat}
*/
@Pure
public String getPathFormat() {
return this.pathFormat;
}
/**
* Determines in what format paths are specified. The default is 'path', which is the native format.
* <p>
* This is an optional property.
* <p>
* Possible values include - but not limited to those defined in {@link InitializeRequestArgumentsPathFormat}
*/
public void setPathFormat(final String pathFormat) {
this.pathFormat = pathFormat;
}
/**
* Client supports the optional type attribute for variables.
* <p>
* This is an optional property.
*/
@Pure
public Boolean getSupportsVariableType() {
return this.supportsVariableType;
}
/**
* Client supports the optional type attribute for variables.
* <p>
* This is an optional property.
*/
public void setSupportsVariableType(final Boolean supportsVariableType) {
this.supportsVariableType = supportsVariableType;
}
/**
* Client supports the paging of variables.
* <p>
* This is an optional property.
*/
@Pure
public Boolean getSupportsVariablePaging() {
return this.supportsVariablePaging;
}
/**
* Client supports the paging of variables.
* <p>
* This is an optional property.
*/
public void setSupportsVariablePaging(final Boolean supportsVariablePaging) {
this.supportsVariablePaging = supportsVariablePaging;
}
/**
* Client supports the runInTerminal request.
* <p>
* This is an optional property.
*/
@Pure
public Boolean getSupportsRunInTerminalRequest() {
return this.supportsRunInTerminalRequest;
}
/**
* Client supports the runInTerminal request.
* <p>
* This is an optional property.
*/
public void setSupportsRunInTerminalRequest(final Boolean supportsRunInTerminalRequest) {
this.supportsRunInTerminalRequest = supportsRunInTerminalRequest;
}
/**
* Client supports memory references.
* <p>
* This is an optional property.
*/
@Pure
public Boolean getSupportsMemoryReferences() {
return this.supportsMemoryReferences;
}
/**
* Client supports memory references.
* <p>
* This is an optional property.
*/
public void setSupportsMemoryReferences(final Boolean supportsMemoryReferences) {
this.supportsMemoryReferences = supportsMemoryReferences;
}
/**
* Client supports progress reporting.
* <p>
* This is an optional property.
*/
@Pure
public Boolean getSupportsProgressReporting() {
return this.supportsProgressReporting;
}
/**
* Client supports progress reporting.
* <p>
* This is an optional property.
*/
public void setSupportsProgressReporting(final Boolean supportsProgressReporting) {
this.supportsProgressReporting = supportsProgressReporting;
}
/**
* Client supports the invalidated event.
* <p>
* This is an optional property.
*/
@Pure
public Boolean getSupportsInvalidatedEvent() {
return this.supportsInvalidatedEvent;
}
/**
* Client supports the invalidated event.
* <p>
* This is an optional property.
*/
public void setSupportsInvalidatedEvent(final Boolean supportsInvalidatedEvent) {
this.supportsInvalidatedEvent = supportsInvalidatedEvent;
}
@Override
@Pure
public String toString() {
ToStringBuilder b = new ToStringBuilder(this);
b.add("clientID", this.clientID);
b.add("clientName", this.clientName);
b.add("adapterID", this.adapterID);
b.add("locale", this.locale);
b.add("linesStartAt1", this.linesStartAt1);
b.add("columnsStartAt1", this.columnsStartAt1);
b.add("pathFormat", this.pathFormat);
b.add("supportsVariableType", this.supportsVariableType);
b.add("supportsVariablePaging", this.supportsVariablePaging);
b.add("supportsRunInTerminalRequest", this.supportsRunInTerminalRequest);
b.add("supportsMemoryReferences", this.supportsMemoryReferences);
b.add("supportsProgressReporting", this.supportsProgressReporting);
b.add("supportsInvalidatedEvent", this.supportsInvalidatedEvent);
return b.toString();
}
@Override
@Pure
public boolean equals(final Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
InitializeRequestArguments other = (InitializeRequestArguments) obj;
if (this.clientID == null) {
if (other.clientID != null)
return false;
} else if (!this.clientID.equals(other.clientID))
return false;
if (this.clientName == null) {
if (other.clientName != null)
return false;
} else if (!this.clientName.equals(other.clientName))
return false;
if (this.adapterID == null) {
if (other.adapterID != null)
return false;
} else if (!this.adapterID.equals(other.adapterID))
return false;
if (this.locale == null) {
if (other.locale != null)
return false;
} else if (!this.locale.equals(other.locale))
return false;
if (this.linesStartAt1 == null) {
if (other.linesStartAt1 != null)
return false;
} else if (!this.linesStartAt1.equals(other.linesStartAt1))
return false;
if (this.columnsStartAt1 == null) {
if (other.columnsStartAt1 != null)
return false;
} else if (!this.columnsStartAt1.equals(other.columnsStartAt1))
return false;
if (this.pathFormat == null) {
if (other.pathFormat != null)
return false;
} else if (!this.pathFormat.equals(other.pathFormat))
return false;
if (this.supportsVariableType == null) {
if (other.supportsVariableType != null)
return false;
} else if (!this.supportsVariableType.equals(other.supportsVariableType))
return false;
if (this.supportsVariablePaging == null) {
if (other.supportsVariablePaging != null)
return false;
} else if (!this.supportsVariablePaging.equals(other.supportsVariablePaging))
return false;
if (this.supportsRunInTerminalRequest == null) {
if (other.supportsRunInTerminalRequest != null)
return false;
} else if (!this.supportsRunInTerminalRequest.equals(other.supportsRunInTerminalRequest))
return false;
if (this.supportsMemoryReferences == null) {
if (other.supportsMemoryReferences != null)
return false;
} else if (!this.supportsMemoryReferences.equals(other.supportsMemoryReferences))
return false;
if (this.supportsProgressReporting == null) {
if (other.supportsProgressReporting != null)
return false;
} else if (!this.supportsProgressReporting.equals(other.supportsProgressReporting))
return false;
if (this.supportsInvalidatedEvent == null) {
if (other.supportsInvalidatedEvent != null)
return false;
} else if (!this.supportsInvalidatedEvent.equals(other.supportsInvalidatedEvent))
return false;
return true;
}
@Override
@Pure
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((this.clientID== null) ? 0 : this.clientID.hashCode());
result = prime * result + ((this.clientName== null) ? 0 : this.clientName.hashCode());
result = prime * result + ((this.adapterID== null) ? 0 : this.adapterID.hashCode());
result = prime * result + ((this.locale== null) ? 0 : this.locale.hashCode());
result = prime * result + ((this.linesStartAt1== null) ? 0 : this.linesStartAt1.hashCode());
result = prime * result + ((this.columnsStartAt1== null) ? 0 : this.columnsStartAt1.hashCode());
result = prime * result + ((this.pathFormat== null) ? 0 : this.pathFormat.hashCode());
result = prime * result + ((this.supportsVariableType== null) ? 0 : this.supportsVariableType.hashCode());
result = prime * result + ((this.supportsVariablePaging== null) ? 0 : this.supportsVariablePaging.hashCode());
result = prime * result + ((this.supportsRunInTerminalRequest== null) ? 0 : this.supportsRunInTerminalRequest.hashCode());
result = prime * result + ((this.supportsMemoryReferences== null) ? 0 : this.supportsMemoryReferences.hashCode());
result = prime * result + ((this.supportsProgressReporting== null) ? 0 : this.supportsProgressReporting.hashCode());
return prime * result + ((this.supportsInvalidatedEvent== null) ? 0 : this.supportsInvalidatedEvent.hashCode());
}
}