| Jump to DART Documentation Main Index |
DART radar observation module, including the observation operators for the
two primary radar-observation types -- Doppler velocity and reflectivity --
plus other utility subroutines and functions. A number of simplifications
are employed for the observation operators. Most notably, the model state
is mapped to a "point" observation, whereas a real radar observation is a
volumetric sample. The implications of this approximation have not been
investigated fully, so in the future it might be worth developing and testing
more sophisticated observation operators that produce volumetric power-
weighted samples.
This module is able to compute reflectivity and precipitation fall speed
(needed for computing Doppler radial velocity) from the prognostic model
fields only for simple single-moment microphysics schemes such as the Kessler
and Lin schemes. If a more complicated microphysics scheme is used, then
reflectivity and fall speed must be accessible instead as diagnostic fields
in the model state.
Author and Contact information:
For users of previous versions of the radar obs_def code, here are a list of changes beginning with subversion revision 3616 which are not backward compatible:
types_mod utilities_mod location_mod (threed_sphere) assim_model_mod obs_kind_mod
| use obs_def_radar_mod, only : | read_radar_ref |
| get_expected_radar_ref | |
| read_radial_vel | |
| write_radial_vel | |
| interactive_radial_vel | |
| get_expected_radial_vel | |
| get_obs_def_radial_vel | |
| set_radial_vel |
Namelist interface &obs_def_radar_mod_nml is read from file input.nml.
A note about documentation style. Optional arguments are enclosed in brackets [like this].
real(r8), intent(inout) :: obsvalue integer, intent(out) :: refkey
Reflectivity observations have no auxiliary data to read or write, but there are namelist options that can alter the observation value at runtime. This routine tests the observation value and alters it if required.
| obsvalue | Observation value. |
| refkey | Set to 0 to avoid uninitialized values, but otherwise unused. |
real(r8), intent(in) :: state_vector(:) type(location_type), intent(in) :: location real(r8), intent(out) :: ref integer, intent(out) :: istatus
Given a location and the state vector from one of the ensemble members,
compute the model-predicted radar reflectivity that would be observed
at that location. The returned value is in dBZ.
If apply_ref_limit_to_fwd_op is .TRUE. in the namelist,
reflectivity values less than
reflectivity_limit_fwd_op
will be set to lowest_reflectivity_fwd_op.
| state_vector | A one dimensional representation of the model state vector |
| location | Location of this observation |
| ref | The returned radar reflectivity value |
| istatus | Returned integer status code describing problems with applying forward operator. 0 is a good value; any positive value indicates an error; negative values are reserved for internal DART use only. |
integer, intent(out) :: velkey integer, intent(in) :: ifile character(len=*), optional, intent(in) :: fform
Reads the additional auxiliary information associated with a radial velocity observation. This includes the location of the radar source, the beam direction, and the nyquist velocity.
| velkey | Unique identifier associated with this radial velocity observation. In this code it is an integer index into module local arrays which hold the additional data. This routine increments it and returns the new value. |
| ifile | File unit descriptor for input file |
| fform | File format specifier: FORMATTED or UNFORMATTED; default FORMATTED |
integer, intent(in) :: velkey integer, intent(in) :: ifile character(len=*), optional, intent(in) :: fform
Writes the additional auxiliary information associated with a radial velocity observation. This includes the location of the radar source, the beam direction, and the nyquist velocity.
| velkey | Unique identifier associated with this radial velocity observation. In this code it is an integer index into module local arrays which hold the additional data. This routine uses the value to select the appropriate data to write for this observation. |
| ifile | File unit descriptor for output file |
| fform | File format specifier: FORMATTED or UNFORMATTED; default FORMATTED |
integer, intent(in) :: velkey type(location_type), intent(out) :: radar_location real(r8), intent(out) :: beam_direction(3) real(r8), intent(out) :: nyquist_velocity
Returns the auxiliary information associated with a given radial velocity observation.
| velkey | Unique identifier associated with this radial velocity observation. In this code it is an integer index into module local arrays which hold the additional data. This routine uses the value to select the appropriate data to return. |
| radar_location | Location of the radar. |
| beam_orientation | Orientation of the radar beam at the observation location. The three values are: sin(azimuth)*cos(elevation), cos(azimuth)*cos(elevation), and sin(elevation). |
| nyquist_velocity | Nyquist velocity at the observation point in meters/second. |
integer, intent(out) :: velkey type(location_type), intent(in) :: radar_location real(r8), intent(in) :: beam_direction(3) real(r8), intent(in) :: nyquist_velocity
Sets the auxiliary information associated with a radial velocity observation. This routine increments and returns the new key associated with these values.
| velkey | Unique identifier associated with this radial velocity observation. In this code it is an integer index into module local arrays which hold the additional data. This routine returns the incremented value associated with this data. |
| radar_location | Location of the radar. |
| beam_orientation | Orientation of the radar beam at the observation location. The three values are: sin(azimuth)*cos(elevation), cos(azimuth)*cos(elevation), and sin(elevation). |
| nyquist_velocity | Nyquist velocity at the observation point in meters/second. |
integer, intent(out) :: velkey
Prompts the user for the auxiliary information needed for a radial velocity observation, and returns the new key associated with this data.
| velkey | Unique identifier associated with this radial velocity observation. In this code it is an integer index into module local arrays which hold the additional data. This routine returns the incremented value associated with this data. |
real(r8), intent(in) :: state_vector(:) type(location_type), intent(in) :: location integer, intent(in) :: velkey real(r8), intent(out) :: radial_vel integer, intent(out) :: istatus
Given a location and the state vector from one of the ensemble members,
compute the model-predicted radial velocity in meters/second
that would be observed at that location. velkey
is the unique index for this particular radial velocity observation.
The value is returned in radial_vel,
istatus is the return code.
The along-beam component of the 3-d air velocity is computed from the
u, v, and w fields plus the beam_direction. The along-beam component
of power-weighted precipitation fall velocity is added to the result.
| state_vector | A one dimensional representation of the model state vector |
| location | Location of this observation |
| velkey | Unique identifier associated with this radial velocity observation |
| radial_vel | The returned radial velocity value in meters/second |
| istatus | Returned integer status code describing problems with applying forward operator. 0 is a good value; any positive value indicates an error; negative values are reserved for internal DART use only. |
This namelist is read from the file input.nml. Namelists start with an ampersand '&' and terminate with a slash '/'. Character strings that contain a '/' must be enclosed in quotes to prevent them from prematurely terminating the namelist.
&obs_def_radar_mod_nml apply_ref_limit_to_obs = .false., reflectivity_limit_obs = -10.0, lowest_reflectivity_obs = -10.0, apply_ref_limit_to_fwd_op = .false., reflectivity_limit_fwd_op = -10.0, lowest_reflectivity_fwd_op = -10.0, max_radial_vel_obs = 1000000, allow_wet_graupel = .false., microphysics_type = 2 , allow_dbztowt_conv = .false., dielectric_factor = 0.224, n0_rain = 8.0e6, n0_graupel = 4.0e6, n0_snow = 3.0e6, rho_rain = 1000.0, rho_graupel = 400.0, rho_snow = 100.0 /
| Item | Type | Description |
|---|---|---|
| apply_ref_limit_to_obs | logical | If .TRUE. replace all reflectivity values less than "reflectivity_limit_obs" with "lowest_reflectivity_obs" value. If .FALSE. leave all values as-is. |
| reflectivity_limit_obs | real(r8) | The threshold value. Observed reflectivity values less than this threshold will be set to the "lowest_reflectivity_obs" value. Units are dBZ. |
| lowest_reflectivity_obs | real(r8) | The 'set-to' value. Observed reflectivity values less than the threshold will be set to this value. Units are dBZ. |
| apply_ref_limit_to_fwd_op | logical | Same as "apply_ref_limit_to_obs", but for the forward operator. |
| reflectivity_limit_fwd_op | real(r8) | Same as "reflectivity_limit_obs", but for the forward operator values. |
| lowest_reflectivity_fwd_op | real(r8) | Same as "lowest_reflectivity_obs", but for the forward operator values. |
| max_radial_vel_obs | integer | Maximum number of observations of this type to support at run time. This is combined total of all obs_seq files, for example the observation diagnostic program potentially opens multiple obs_seq.final files, or the obs merge program can also open multiple obs files. |
| allow_wet_graupel | logical | It is difficult to predict/diagnose whether graupel/hail has a wet or dry surface. Even when the temperature is above freezing, evaporation and/or absorption can still result in a dry surface. This issue is important because the reflectivity from graupel with a wet surface is significantly greater than that from graupel with a dry surface. Currently, the user has two options for how to compute graupel reflectivity. If allow_wet_graupel is .false. (the default), then graupel is always assumed to be dry. If allow_wet_graupel is .true., then graupel is assumed to be wet (dry) when the temperature is above (below) freezing. A consequence is that a sharp gradient in reflectivity will be produced at the freezing level. In the future, it might be better to provide the option of having a transition layer. |
| microphysics_type | integer | If the state vector contains the reflectivity or the power
weighted fall speed, interpolate directly from those regardless of
the setting of this item. If the state vector does not
contain the fields, this value should be set to be
compatible with whatever microphysical scheme is being
used by the model. If the model is using a different
microphysical scheme but has compatible fields to the ones
listed below, setting this value will select the scheme to use.
|
| allow_dbztowt_conv | logical | Flag to enable use of the dbztowt routine where reflectivity is available, but not the power-weighted fall velocity. This scheme uses emperical relations between reflectivity and fall velocity, with poor accuracy for highly reflective, low density particles (such as water coated snow aggregates). Expect questionable accuracy in radial velocity from the forward operator with high elevation angles where ice is present in the model state. |
| dielectric_factor | real(r8) | According to Smith (1984), there are two choices for the dielectric factor depending on how the snow particle sizes are specified. If melted raindrop diameters are used, then the factor is 0.224. If equivalent ice sphere diameters are used, then the factor is 0.189. The default is set to use the common convention of melted raindrop diameters. |
| n0_rain | real(r8) | Intercept parameters (m^-4) for size distributions of each hydrometeor. The default of 8.0e6 is for the Lin et al. microphysics scheme with the Hobbs settings for graupel/hail. (The Hobbs graupel settings are also the default for the Lin scheme in WRF 2.2 and 3.0.) |
| n0_graupel | real(r8) | Intercept parameters (m^-4) for size distributions of each hydrometeor. The default of 4.0e6 is for the Lin et al. microphysics scheme with the Hobbs settings for graupel/hail. (The Hobbs graupel settings are also the default for the Lin scheme in WRF 2.2 and 3.0.) |
| n0_snow | real(r8) | Intercept parameters (m^-4) for size distributions of each hydrometeor. The default of 3.0e6 is for the Lin et al. microphysics scheme with the Hobbs settings for graupel/hail. (The Hobbs graupel settings are also the default for the Lin scheme in WRF 2.2 and 3.0.) |
| rho_rain | real(r8) | Density (kg m^-3) of each hydrometeor type. The default of 1000.0 is for the Lin et al. microphysics scheme with the Hobbs setting for graupel/hail. |
| rho_graupel | real(r8) | Density (kg m^-3) of each hydrometeor type. The default of 400.0 is for the Lin et al. microphysics scheme with the Hobbs setting for graupel/hail. |
| rho_snow | real(r8) | Density (kg m^-3) of each hydrometeor type. The default of 100.0 is for the Lin et al. microphysics scheme with the Hobbs setting for graupel/hail. |
| Routine | Message | Comment |
|---|---|---|
| initialize_module | initial allocation failed for radial vel obs data, itemcount = (max_radial_vel_obs) | Need to increase max_radial_vel_obs count in namelist |
| read_radial_vel | Expected location header "platform" in input file | The format of the input file is not consistent. |
| velkey_out_of_range | velkey (val) exceeds max_radial_vel_obs (maxval) | The number of radial velocity observations exceeds the array size allocated in the module. Need to increase max_radial_vel_obs count in namelist. |
| read_nyquist_velocity | bad value for nyquist velocity | The format of the input obs_seq file is not consistent. |
| read_beam_direction | beam_direction value must be between -1 and 1, got () | The format of the input obs_seq file is not consistent. |
| read_beam_direction | Expected orientation header "dir3d" in input file | The format of the input obs_seq file is not consistent. |
none at this time
none at this time
Reads the namelist, allocates space for the auxiliary data associated wtih radial velocity observations, initializes the constants used in subsequent computations (possibly altered by values in the namelist), and prints out the list of constants and the values in use. These may need to change depending on which microphysics scheme is being used.
real(r8), dimension(3) :: read_beam_direction integer, intent(in) :: ifile logical, intent(in) :: is_asciiformat
Reads the beam direction at the observation location. Auxiliary data for doppler radial velocity observations.
| read_beam_direction | Returns three real values for the radar beam orientation |
| ifile | File unit descriptor for input file |
| is_asciiformat | File format specifier: .TRUE. if file is formatted/ascii, or .FALSE. if unformatted/binary. Default .TRUE. |
real(r8), :: read_nyquist_velocity integer, intent(in) :: ifile logical, intent(in) :: is_asciiformat
Reads nyquist velocity for a doppler radial velocity observation.
| read_nyquist_velocity | Returns a real value for the nyquist velocity value |
| ifile | File unit descriptor for input file |
| is_asciiformat | File format specifier: .TRUE. if file is formatted/ascii, or .FALSE. if unformatted/binary. Default .TRUE. |
integer, intent(in) :: ifile real(r8), dimension(3), intent(in) :: beam_direction logical, intent(in) :: is_asciiformat
Writes the beam direction at the observation location. Auxiliary data for doppler radial velocity observations.
| ifile | File unit descriptor for output file |
| beam_direction | Three components of the radar beam orientation |
| is_asciiformat | File format specifier: .TRUE. if file is formatted/ascii, or .FALSE. if unformatted/binary. Default .TRUE. |
integer, intent(in) :: ifile real(r8), intent(in) :: nyquist_velocity logical, intent(in) :: is_asciiformat
Writes nyquist velocity for a doppler radial velocity observation.
| ifile | File unit descriptor for output file |
| nyquist_velocity | The nyquist velocity value for this observation |
| is_asciiformat | File format specifier: .TRUE. if file is formatted/ascii, or .FALSE. if unformatted/binary. Default .TRUE. |
real(r8), dimension(3), intent(out) :: beam_direction
Prompts the user for input for the azimuth and elevation of the radar beam at the observation location. Will be converted to the three values actually stored in the observation sequence file.
| beam_direction | Three components of the radar beam orientation |
real(r8), intent(out) :: nyquist_velocity
Prompts the user for input for the nyquist velocity value associated with a doppler radial velocity observation.
| nyquist_velocity | Nyquist velocity value for the observation. |
real(r8), intent(in) :: qr real(r8), intent(in) :: qg real(r8), intent(in) :: qs real(r8), intent(in) :: rho real(r8), intent(in) :: temp real(r8), intent(out) :: ref
Computes the equivalent radar reflectivity factor in mm6 m-3 for simple single-moment microphysics schemes such as Kessler and Lin, et al. See the references for more details.
| qr | Rain water content (kg kg-1) |
| qg | Graupel/hail content (kg kg-1) |
| qs | Snow content (kg kg-1) |
| rho | Air density (kg m-3) |
| temp | Air temperature (K) |
| ref | The returned radar reflectivity value |
real(r8), intent(in) :: qr real(r8), intent(in) :: qg real(r8), intent(in) :: qs real(r8), intent(in) :: rho real(r8), intent(in) :: temp real(r8), intent(out) :: precip_fall_speed
Computes power-weighted precipitation fall speed in m s-1 for simple single-moment microphysics schemes such as Kessler and Lin, et al. See the references for more details.
| qr | Rain water content (kg kg-1) |
| qg | Graupel/hail content (kg kg-1) |
| qs | Snow content (kg kg-1) |
| rho | Air density (kg m-3) |
| temp | Air temperature (K) |
| precip_fall_speed | The returned precipitation vall speed |
Set values for a collection of constants used throughout the module during the various calculations. These are set once in this routine and are unchanged throughout the rest of the execution. They cannot be true Fortran parameters because some of the values can be overwritten by namelist entries, but once they are set they are treated as read-only parameters.
Print out the names and values of all constant parameters used by this module. The error handler message facility is used to print the message, which by default goes to both the DART log file and to the standard output of the program.
real(r8), intent(in) :: c_val character(len=*), intent(in) :: c_str
Calls the DART error handler routine to print out a string label and a real value to both the log file and to the standard output.
| Value of constant | A real value. |
| Name of constant | A character string. |
integer, intent(in) :: velkey
Range check key and trigger a fatal error if larger than the allocated array for observation auxiliary data.
| velkey | Integer key into a local array of auxiliary observation data. |
logical, intent(in) :: apply_ref_limit_to_obs real(r8), intent(in) :: reflectivity_limit_obs real(r8), intent(in) :: lowest_reflectivity_obs logical, intent(in) :: apply_ref_limit_to_fwd_op real(r8), intent(in) :: reflectivity_limit_fwd_op real(r8), intent(in) :: lowest_reflectivity_fwd_op
Check the values set in the namelist for consistency. Print out a message if the limits and set-to values are different; this may be intentional but is not generally expected to be the case. In all cases below, see the namelist documentation for a fuller explanation of each value.
| apply_ref_limit_to_obs | Logical. See namelist. |
| reflectivity_limit_obs | Real value. See namelist. |
| lowest_reflectivity_obs | Real value. See namelist. |
| apply_ref_limit_to_fwd_op | Logical. See namelist. |
| reflectivity_limit_fwd_op | Real value. See namelist. |
| lowest_reflectivity_fwd_op | Real value. See namelist. |
logical :: ascii_file_format character(len=*), intent(in), optional :: fform
Should be moved to DART utility module at some point. Returns .TRUE. if the optional argument is missing or if it is not one of the following values: "unformatted", "UNFORMATTED", "unf", "UNF".
| ascii_file_format | Return value. Logical. Default is .TRUE. |
| fform | Character string file format. |
DART software - Copyright UCAR. This open source software is provided by UCAR, "as is", without charge, subject to all terms of use at http://www.image.ucar.edu/DAReS/DART/DART_download


Electronic
Safety
Advisor for
Vaccines
25 ? '#e97769' : '#cff4fc'}">
Temperature
{{temperature || 0}} °C
Altitude
{{altitude || 0}} m
Speed
{{speed || 0}} Km/h


KGTorrent package¶
kgtorrent¶
-
KGTorrent.kgtorrent.
main
()¶ Entry-point function for KGTorrent. It orchestrates function/method calls to build and populate the KGTorrent database and dataset.
config¶
This is the configuration file of KGTorrent.
Here the main variables of the program are set, mostly by reading their values from environment variables.
See Configuration for details on the environment variables that must be set to run KGTorrent.
db_communication_handler¶
This module defines the class that handles the communication with the database via SQLAlchemy.
-
class
KGTorrent.db_communication_handler.
DbCommunicationHandler
(db_username, db_password, db_host, db_port, db_name)¶ Bases:
object
This class creates an SQLAlchemy engine and has methods for creating, populating and querying a database with MetaKaggle data.
-
create_new_db
(drop_if_exists=False)¶ This method creates a database with the provided name and builds schemas of MetaKaggle tables. It throws by default an exception when the database already exists in order to avoid an initialization called by mistake.
- Parameters
drop_if_exists – If True the database is dropped before creation. By default it is False.
-
db_exists
()¶ This method checks whether the database exists.
- Returns
True if the database exists, False otherwise.
- Return type
bool
-
get_nb_identifiers
(languages)¶ This method queries the database in order to retrieve slugs and identifiers of notebooks written in the provided languages.
- Parameters
languages – A string array of notebook languages present in Kaggle.
- Returns
The
pandas.DataFrame
containing notebook slugs and identifiers.- Return type
nb_identifiers
-
set_foreign_keys
(constraints_df)¶ This method sets the foreign key constraints based on information provided by the related
pandas.DataFrame
.- Parameters
constraints_df – The
pandas.DataFrame
which contains the foreign key constraints information
-
write_tables
(tables_dict)¶ This method writes tables to the database by using the
pandas.DataFrame.to_sql
method.- Parameters
tables_dict – The dictionary whose keys are the table names and whose values are the
pandas.DataFrame
tables.
-
downloader¶
This module defines the class that handles the actual download of Jupyter notebooks from Kaggle.
-
class
KGTorrent.downloader.
Downloader
(nb_identifiers, nb_archive_path)¶ Bases:
object
The
Downloader
class handles the download of Jupyter notebooks from Kaggle. It needs the notebook slugs and identifierspandas.DataFrame
in order to request notebooks from Kaggle. To do so it uses one of the following two strategies:HTTP
to download full notebooks via HTTP requests;
API
to download notebooks via calls to the official Kaggle API; Jupyter notebooks downloaded by using this strategy always miss the output of code cells.
Notebooks that are already present in the download folder are skipped. During the
refresh
procedure all those notebooks that are already present in the download folder but are no longer referenced in the KGTorrent database are deleted.-
download_notebooks
(strategy='HTTP')¶ This method executes the download procedure using the provided strategy after checking the destination folder.
- Parameters
strategy – The download strategy (
HTTP
orAPI
). By default it isHTTP
.
exceptions¶
This module defines exceptions that might be risen while building/updating KGTorrent using this package.
-
exception
KGTorrent.exceptions.
DatabaseExistsError
(message)¶ Bases:
KGTorrent.exceptions.Error
Exception raised when the database name already exists and has not been forced to remove.
-
message
¶ short message containing the explanation of the error.
- Type
str
-
-
exception
KGTorrent.exceptions.
Error
¶ Bases:
Exception
Base class for exceptions in this package.
-
exception
KGTorrent.exceptions.
TableNotPreprocessedError
(message)¶ Bases:
KGTorrent.exceptions.Error
Exception raised when the table that was just read was supposed to be already preprocessed (and serialized to .bz2 pickle file) but is not.
-
message
¶ short message containing the explanation of the error.
- Type
str
-


The following document contains the results of Checkstyle.
| Rules | Violations | Severity |
|---|---|---|
JavadocPackage
|
2 | Error |
| Translation | 0 | Error |
| FileLength | 0 | Error |
FileTabCharacter
|
0 | Error |
| JavadocMethod | 607 | Error |
| JavadocType | 26 | Error |
| JavadocVariable | 105 | Error |
| JavadocStyle | 8 | Error |
| ConstantName | 8 | Error |
| LocalFinalVariableName | 0 | Error |
| LocalVariableName | 0 | Error |
| MemberName | 0 | Error |
| MethodName | 0 | Error |
| PackageName | 0 | Error |
| ParameterName | 0 | Error |
| StaticVariableName | 1 | Error |
| TypeName | 0 | Error |
| AvoidStarImport | 0 | Error |
| IllegalImport | 0 | Error |
| RedundantImport | 0 | Error |
| UnusedImports | 8 | Error |
LineLength
|
18 | Error |
| MethodLength | 0 | Error |
| ParameterNumber | 0 | Error |
| EmptyForIteratorPad | 0 | Error |
| MethodParamPad | 0 | Error |
| NoWhitespaceAfter | 1 | Error |
| NoWhitespaceBefore | 0 | Error |
| OperatorWrap | 0 | Error |
| ParenPad | 0 | Error |
| TypecastParenPad | 0 | Error |
| WhitespaceAfter | 5 | Error |
| WhitespaceAround | 4 | Error |
| ModifierOrder | 5 | Error |
| RedundantModifier | 2 | Error |
| AvoidNestedBlocks | 0 | Error |
| EmptyBlock | 0 | Error |
| LeftCurly | 1 | Error |
| RightCurly | 0 | Error |
| AvoidInlineConditionals | 28 | Error |
| EmptyStatement | 1 | Error |
| EqualsHashCode | 0 | Error |
| IllegalInstantiation | 0 | Error |
| InnerAssignment | 0 | Error |
| MagicNumber | 16 | Error |
| MissingSwitchDefault | 0 | Error |
| RedundantThrows | 0 | Error |
| SimplifyBooleanExpression | 0 | Error |
| SimplifyBooleanReturn | 0 | Error |
| DesignForExtension | 77 | Error |
| FinalClass | 1 | Error |
| HideUtilityClassConstructor | 1 | Error |
| InterfaceIsType | 0 | Error |
| VisibilityModifier | 13 | Error |
| ArrayTypeStyle | 0 | Error |
| TodoComment | 0 | Error |
| UpperEll | 0 | Error |
| Violation | Message | Line |
|---|---|---|
| Name 'log' must match pattern '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'. | 25 | |
| Missing a Javadoc comment. | 27 | |
| Line is longer than 100 characters (found 102). | 46 | |
| Expected @param tag for 'operation'. | 89 | |
| Missing a Javadoc comment. | 105 | |
| Missing a Javadoc comment. | 106 | |
| Method 'count' is not designed for extension - needs to be abstract, final or empty. | 108 | |
| Missing a Javadoc comment. | 108 | |
| Method 'call' is not designed for extension - needs to be abstract, final or empty. | 119 | |
| Missing a Javadoc comment. | 125 | |
| Expected an @return tag. | 140 | |
| Expected @param tag for '<T>'. | 140 | |
| Expected an @return tag. | 152 | |
| Expected @param tag for '<T>'. | 152 | |
| Missing a Javadoc comment. | 162 | |
| Expected @param tag for '<T>'. | 185 | |
| Unused @param tag for 'object'. | 207 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 13 | |
| Missing a Javadoc comment. | 14 | |
| Variable 'methodCols' must be private and have accessor methods. | 14 | |
| Missing a Javadoc comment. | 15 | |
| Variable 'cls' must be private and have accessor methods. | 15 | |
| Missing a Javadoc comment. | 17 | |
| Missing a Javadoc comment. | 22 | |
| Missing a Javadoc comment. | 46 |
| Violation | Message | Line |
|---|---|---|
| Expected @param tag for 'b'. | 20 | |
| Expected @param tag for 'b'. | 30 | |
| Expected @param tag for 'obj'. | 39 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 30 | |
| Missing a Javadoc comment. | 31 | |
| Line is longer than 100 characters (found 101). | 237 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 18 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 15 | |
| Method 'get' is not designed for extension - needs to be abstract, final or empty. | 26 |
| Violation | Message | Line |
|---|---|---|
| First sentence should end with a period. | 15 | |
| Missing a Javadoc comment. | 20 | |
| Missing a Javadoc comment. | 22 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 11 |
| Violation | Message | Line |
|---|---|---|
| Expected @param tag for 'url'. | 32 | |
| Expected @param tag for 'minPoolSize'. | 32 | |
| Expected @param tag for 'maxPoolSize'. | 32 | |
| Missing a Javadoc comment. | 37 | |
| Expected an @return tag. | 65 |
| Violation | Message | Line |
|---|---|---|
| First sentence should end with a period. | 20 |
| Violation | Message | Line |
|---|---|---|
| Unused import - java.sql.PreparedStatement. | 9 | |
| Unused import - java.sql.Types. | 10 | |
| Unused import - javax.naming.Context. | 12 | |
| 'public' modifier out of order with the JLS suggestions. | 36 | |
| Name 'log' must match pattern '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'. | 41 | |
| Line is longer than 100 characters (found 110). | 53 | |
| Line is longer than 100 characters (found 116). | 59 | |
| Missing a Javadoc comment. | 61 | |
| Missing a Javadoc comment. | 63 | |
| Name 'rsCache' must match pattern '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'. | 63 | |
| Missing a Javadoc comment. | 65 | |
| Name 'autoMapCache' must match pattern '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'. | 65 | |
| Line is longer than 100 characters (found 114). | 71 | |
| Line is longer than 100 characters (found 101). | 91 | |
| Expected an @return tag. | 107 | |
| Line is longer than 100 characters (found 101). | 114 | |
| Expected an @return tag. | 171 | |
| First sentence should end with a period. | 190 | |
| Expected an @return tag. | 197 | |
| Expected @param tag for 'jndiResource'. | 197 | |
| First sentence should end with a period. | 201 | |
| Expected an @return tag. | 208 | |
| Expected @param tag for 'dataSource'. | 208 | |
| Expected an @return tag. | 220 | |
| Expected @param tag for 'cp'. | 220 | |
| Expected an @return tag. | 233 | |
| Expected an @return tag. | 242 | |
| 'static' modifier out of order with the JLS suggestions. | 249 | |
| Missing a Javadoc comment. | 251 | |
| Missing a Javadoc comment. | 252 | |
| Missing a Javadoc comment. | 253 | |
| Missing a Javadoc comment. | 254 | |
| Missing a Javadoc comment. | 255 | |
| Missing a Javadoc comment. | 256 | |
| Missing a Javadoc comment. | 258 | |
| Missing a Javadoc comment. | 259 | |
| Variable 'minSize' must be private and have accessor methods. | 259 | |
| Missing a Javadoc comment. | 260 | |
| Variable 'maxSize' must be private and have accessor methods. | 260 | |
| Missing a Javadoc comment. | 262 | |
| Expected an @return tag. | 281 | |
| Expected @param tag for 'cp'. | 281 | |
| Expected an @return tag. | 292 | |
| Expected @param tag for 'url'. | 292 | |
| Missing a Javadoc comment. | 297 | |
| Missing a Javadoc comment. | 302 | |
| Expected an @return tag. | 316 | |
| Expected @param tag for 'minPoolSize'. | 316 | |
| Expected @param tag for 'maxPoolSize'. | 316 | |
| Expected an @return tag. | 328 | |
| Expected @param tag for 'url'. | 328 | |
| '10' is a magic number. | 329 | |
| Expected an @return tag. | 339 | |
| Expected @param tag for 'factory'. | 339 | |
| Expected an @return tag. | 350 | |
| Expected an @return tag. | 360 | |
| Expected an @return tag. | 377 | |
| Expected an @return tag. | 423 | |
| Expected @param tag for 'dependency'. | 423 | |
| Expected an @return tag. | 434 | |
| Expected an @return tag. | 457 | |
| First sentence should end with a period. | 461 | |
| Expected @param tag for '<T>'. | 467 | |
| First sentence should end with a period. | 471 | |
| Expected @param tag for '<T>'. | 477 | |
| Missing a Javadoc comment. | 481 | |
| Expected an @return tag. | 501 | |
| Expected @param tag for 'commit'. | 501 | |
| Expected @param tag for 'depends'. | 501 | |
| Missing a Javadoc comment. | 511 | |
| Expected an @return tag. | 531 | |
| Expected an @return tag. | 541 | |
| Expected an @return tag. | 556 | |
| Expected an @return tag. | 568 | |
| Expected an @return tag. | 580 | |
| Expected an @return tag. | 634 | |
| Expected @param tag for '<T>'. | 634 | |
| Expected @param tag for 'isCommit'. | 634 | |
| Expected @param tag for '<T>'. | 650 | |
| Expected @param tag for '<T>'. | 661 | |
| Expected @param tag for '<T>'. | 673 | |
| Expected an @return tag. | 687 | |
| Expected @param tag for '<T>'. | 687 | |
| Missing a Javadoc comment. | 691 | |
| Missing a Javadoc comment. | 695 | |
| Missing a Javadoc comment. | 699 | |
| Expected an @return tag. | 722 | |
| Missing a Javadoc comment. | 726 | |
| Missing a Javadoc comment. | 735 | |
| Expected an @return tag. | 766 | |
| Expected @param tag for '<T>'. | 766 | |
| Expected @param tag for 'isCommit'. | 766 | |
| Expected @param tag for 'db'. | 767 | |
| Expected @param tag for 'source'. | 767 | |
| Line is longer than 100 characters (found 102). | 779 | |
| Missing a Javadoc comment. | 779 | |
| Expected an @return tag. | 796 | |
| Expected @param tag for 'commands'. | 796 | |
| Expected an @return tag. | 811 | |
| Expected an @return tag. | 830 | |
| Expected @param tag for 'is'. | 830 | |
| Expected @param tag for 'delimiter'. | 830 | |
| Expected an @return tag. | 844 | |
| Expected @param tag for 'is'. | 844 | |
| Expected @param tag for 'charset'. | 844 | |
| Expected @param tag for 'delimiter'. | 844 | |
| Expected @param tag for 'nonTransactionalScheduler'. | 865 | |
| Expected @param tag for 'nonTransactionalSchedulerFactory'. | 881 | |
| Missing a Javadoc comment. | 894 | |
| Missing a Javadoc comment. | 896 | |
| Missing a Javadoc comment. | 912 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 6 | |
| Utility classes should not have a public or default constructor. | 6 | |
| Missing a Javadoc comment. | 8 | |
| Missing a Javadoc comment. | 48 | |
| Missing a Javadoc comment. | 49 | |
| Missing a Javadoc comment. | 50 | |
| Missing a Javadoc comment. | 52 | |
| Empty statement. | 54 | |
| Method 'sql' is not designed for extension - needs to be abstract, final or empty. | 57 | |
| Missing a Javadoc comment. | 57 | |
| Method 'names' is not designed for extension - needs to be abstract, final or empty. | 61 | |
| Missing a Javadoc comment. | 61 |
| Violation | Message | Line |
|---|---|---|
| Unused import - rx.Observable.Operator. | 3 | |
| Missing a Javadoc comment. | 22 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 10 | |
| Expected @param tag for 'value'. | 21 | |
| Missing a Javadoc comment. | 25 | |
| Expected an @return tag. | 35 | |
| Missing a Javadoc comment. | 39 | |
| Missing a Javadoc comment. | 43 |
| Violation | Message | Line |
|---|---|---|
| Line is longer than 100 characters (found 133). | 20 | |
| Missing a Javadoc comment. | 20 | |
| Expected @param tag for 'query'. | 50 | |
| Expected @param tag for 'query'. | 60 | |
| Expected @param tag for 'query'. | 72 | |
| Expected an @return tag. | 85 | |
| Expected @param tag for 'query'. | 85 |
| Violation | Message | Line |
|---|---|---|
| Unused import - rx.Scheduler. | 6 | |
| Expected an @return tag. | 37 | |
| Expected an @return tag. | 45 | |
| Expected an @return tag. | 53 |
| Violation | Message | Line |
|---|---|---|
| Expected @param tag for 'sql'. | 43 | |
| Expected @param tag for 'db'. | 43 | |
| Expected @param tag for '<T>'. | 56 | |
| Expected @param tag for 'params'. | 56 | |
| Expected @param tag for 'objects'. | 67 | |
| Expected @param tag for 'value'. | 79 | |
| Expected @param tag for 'dependency'. | 111 | |
| Missing a Javadoc comment. | 161 | |
| Missing a Javadoc comment. | 165 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 11 | |
| Expected @param tag for 'db'. | 19 | |
| Expected an @return tag. | 28 | |
| Expected an @return tag. | 37 | |
| Missing a Javadoc comment. | 41 | |
| Missing a Javadoc comment. | 46 | |
| Missing a Javadoc comment. | 50 | |
| Missing a Javadoc comment. | 54 |
| Violation | Message | Line |
|---|---|---|
| Unused import - java.sql.ResultSet. | 6 | |
| 'public' modifier out of order with the JLS suggestions. | 26 | |
| Missing a Javadoc comment. | 29 | |
| Missing a Javadoc comment. | 31 | |
| Missing a Javadoc comment. | 32 | |
| Missing a Javadoc comment. | 33 | |
| Missing a Javadoc comment. | 34 | |
| Expected @param tag for 'depends'. | 47 | |
| Expected @param tag for 'context'. | 48 | |
| Expected an @return tag. | 96 | |
| Expected @param tag for '<T>'. | 96 | |
| Expected @param tag for 'function'. | 96 | |
| Expected an @return tag. | 109 | |
| Expected @param tag for '<T>'. | 109 | |
| Expected @param tag for 'function'. | 110 | |
| Expected an @return tag. | 127 | |
| Expected @param tag for '<T>'. | 127 | |
| Expected @param tag for 'function'. | 128 | |
| Expected @param tag for 'sql'. | 149 | |
| Expected @param tag for 'db'. | 149 | |
| Expected @param tag for '<T>'. | 161 | |
| Expected @param tag for 'parameters'. | 161 | |
| Expected @param tag for 'objects'. | 174 | |
| Expected @param tag for 'value'. | 187 | |
| Expected an @return tag. | 202 | |
| Expected @param tag for 'dependency'. | 214 | |
| Expected an @return tag. | 238 | |
| Expected @param tag for '<T>'. | 238 | |
| Expected @param tag for 'function'. | 238 | |
| Missing a Javadoc comment. | 242 | |
| Unclosed HTML tag found: <ul> | 257 | |
| Expected an @return tag. | 277 | |
| Expected @param tag for '<T>'. | 277 | |
| Expected @param tag for 'cls'. | 277 | |
| Missing a Javadoc comment. | 281 | |
| Expected an @return tag. | 293 | |
| Expected @param tag for '<S>'. | 293 | |
| Expected @param tag for 'cls'. | 293 | |
| Expected an @return tag. | 304 | |
| Expected @param tag for '<S>'. | 304 | |
| Expected @param tag for 'cls'. | 304 | |
| Expected an @return tag. | 315 | |
| Expected @param tag for '<S>'. | 315 | |
| Expected an @return tag. | 327 | |
| Expected @param tag for '<T1>'. | 327 | |
| Expected @param tag for '<T2>'. | 327 | |
| Expected @param tag for 'cls1'. | 327 | |
| Expected @param tag for 'cls2'. | 327 | |
| Expected an @return tag. | 340 | |
| Expected @param tag for '<T1>'. | 340 | |
| Expected @param tag for '<T2>'. | 340 | |
| Expected @param tag for '<T3>'. | 340 | |
| Expected @param tag for 'cls1'. | 340 | |
| Expected @param tag for 'cls2'. | 340 | |
| Expected @param tag for 'cls3'. | 341 | |
| Expected an @return tag. | 355 | |
| Expected @param tag for '<T1>'. | 355 | |
| Expected @param tag for '<T2>'. | 355 | |
| Expected @param tag for '<T3>'. | 355 | |
| Expected @param tag for '<T4>'. | 355 | |
| Expected @param tag for 'cls1'. | 355 | |
| Expected @param tag for 'cls2'. | 356 | |
| Expected @param tag for 'cls3'. | 356 | |
| Expected @param tag for 'cls4'. | 356 | |
| Expected an @return tag. | 371 | |
| Expected @param tag for '<T1>'. | 371 | |
| Expected @param tag for '<T2>'. | 371 | |
| Expected @param tag for '<T3>'. | 371 | |
| Expected @param tag for '<T4>'. | 371 | |
| Expected @param tag for '<T5>'. | 371 | |
| Expected @param tag for 'cls1'. | 371 | |
| Expected @param tag for 'cls2'. | 372 | |
| Expected @param tag for 'cls3'. | 372 | |
| Expected @param tag for 'cls4'. | 372 | |
| Expected @param tag for 'cls5'. | 372 | |
| Expected an @return tag. | 388 | |
| Expected @param tag for '<T1>'. | 388 | |
| Expected @param tag for '<T2>'. | 388 | |
| Expected @param tag for '<T3>'. | 388 | |
| Expected @param tag for '<T4>'. | 388 | |
| Expected @param tag for '<T5>'. | 388 | |
| Expected @param tag for '<T6>'. | 388 | |
| Expected @param tag for 'cls1'. | 389 | |
| Expected @param tag for 'cls2'. | 389 | |
| Expected @param tag for 'cls3'. | 389 | |
| Expected @param tag for 'cls4'. | 389 | |
| Expected @param tag for 'cls5'. | 389 | |
| Expected @param tag for 'cls6'. | 390 | |
| Expected an @return tag. | 407 | |
| Expected @param tag for '<T1>'. | 407 | |
| Expected @param tag for '<T2>'. | 407 | |
| Expected @param tag for '<T3>'. | 407 | |
| Expected @param tag for '<T4>'. | 407 | |
| Expected @param tag for '<T5>'. | 407 | |
| Expected @param tag for '<T6>'. | 407 | |
| Expected @param tag for '<T7>'. | 407 | |
| Expected @param tag for 'cls1'. | 408 | |
| Expected @param tag for 'cls2'. | 408 | |
| Expected @param tag for 'cls3'. | 408 | |
| Expected @param tag for 'cls4'. | 408 | |
| Expected @param tag for 'cls5'. | 408 | |
| Expected @param tag for 'cls6'. | 409 | |
| Expected @param tag for 'cls7'. | 409 | |
| Missing a Javadoc comment. | 413 | |
| Expected an @return tag. | 443 | |
| Missing a Javadoc comment. | 454 | |
| Missing a Javadoc comment. | 455 | |
| Expected @param tag for 'builder'. | 463 | |
| Expected @param tag for 'operatorType'. | 463 | |
| Expected an @return tag. | 474 | |
| Method 'get' is not designed for extension - needs to be abstract, final or empty. | 474 | |
| Expected @param tag for '<T>'. | 474 | |
| Expected @param tag for 'function'. | 474 | |
| Expected an @return tag. | 484 | |
| Method 'autoMap' is not designed for extension - needs to be abstract, final or empty. | 484 | |
| Expected @param tag for '<S>'. | 484 | |
| Expected @param tag for 'cls'. | 484 | |
| Expected an @return tag. | 495 | |
| Method 'getAs' is not designed for extension - needs to be abstract, final or empty. | 495 | |
| Expected @param tag for '<S>'. | 495 | |
| Expected @param tag for 'cls'. | 495 | |
| Expected an @return tag. | 506 | |
| Method 'getTupleN' is not designed for extension - needs to be abstract, final or empty. | 506 | |
| Expected @param tag for '<S>'. | 506 | |
| Expected @param tag for 'cls'. | 506 | |
| Expected an @return tag. | 517 | |
| Method 'getTupleN' is not designed for extension - needs to be abstract, final or empty. | 517 | |
| Expected @param tag for '<S>'. | 517 | |
| Expected an @return tag. | 529 | |
| Method 'getAs' is not designed for extension - needs to be abstract, final or empty. | 529 | |
| Expected @param tag for '<T1>'. | 529 | |
| Expected @param tag for '<T2>'. | 529 | |
| Expected @param tag for 'cls1'. | 529 | |
| Expected @param tag for 'cls2'. | 529 | |
| Expected an @return tag. | 542 | |
| Method 'getAs' is not designed for extension - needs to be abstract, final or empty. | 542 | |
| Expected @param tag for '<T1>'. | 542 | |
| Expected @param tag for '<T2>'. | 542 | |
| Expected @param tag for '<T3>'. | 542 | |
| Expected @param tag for 'cls1'. | 542 | |
| Expected @param tag for 'cls2'. | 542 | |
| Expected @param tag for 'cls3'. | 543 | |
| Expected an @return tag. | 557 | |
| Method 'getAs' is not designed for extension - needs to be abstract, final or empty. | 557 | |
| Expected @param tag for '<T1>'. | 557 | |
| Expected @param tag for '<T2>'. | 557 | |
| Expected @param tag for '<T3>'. | 557 | |
| Expected @param tag for '<T4>'. | 557 | |
| Expected @param tag for 'cls1'. | 557 | |
| Expected @param tag for 'cls2'. | 558 | |
| Expected @param tag for 'cls3'. | 558 | |
| Expected @param tag for 'cls4'. | 558 | |
| Expected an @return tag. | 573 | |
| Method 'getAs' is not designed for extension - needs to be abstract, final or empty. | 573 | |
| Expected @param tag for '<T1>'. | 573 | |
| Expected @param tag for '<T2>'. | 573 | |
| Expected @param tag for '<T3>'. | 573 | |
| Expected @param tag for '<T4>'. | 573 | |
| Expected @param tag for '<T5>'. | 573 | |
| Expected @param tag for 'cls1'. | 573 | |
| Expected @param tag for 'cls2'. | 574 | |
| Expected @param tag for 'cls3'. | 574 | |
| Expected @param tag for 'cls4'. | 574 | |
| Expected @param tag for 'cls5'. | 574 | |
| Expected an @return tag. | 590 | |
| Method 'getAs' is not designed for extension - needs to be abstract, final or empty. | 590 | |
| Expected @param tag for '<T1>'. | 590 | |
| Expected @param tag for '<T2>'. | 590 | |
| Expected @param tag for '<T3>'. | 590 | |
| Expected @param tag for '<T4>'. | 590 | |
| Expected @param tag for '<T5>'. | 590 | |
| Expected @param tag for '<T6>'. | 590 | |
| Expected @param tag for 'cls1'. | 591 | |
| Expected @param tag for 'cls2'. | 591 | |
| Expected @param tag for 'cls3'. | 591 | |
| Expected @param tag for 'cls4'. | 591 | |
| Expected @param tag for 'cls5'. | 591 | |
| Expected @param tag for 'cls6'. | 592 | |
| Expected an @return tag. | 609 | |
| Method 'getAs' is not designed for extension - needs to be abstract, final or empty. | 609 | |
| Expected @param tag for '<T1>'. | 609 | |
| Expected @param tag for '<T2>'. | 609 | |
| Expected @param tag for '<T3>'. | 609 | |
| Expected @param tag for '<T4>'. | 609 | |
| Expected @param tag for '<T5>'. | 609 | |
| Expected @param tag for '<T6>'. | 609 | |
| Expected @param tag for '<T7>'. | 609 | |
| Expected @param tag for 'cls1'. | 610 | |
| Expected @param tag for 'cls2'. | 610 | |
| Expected @param tag for 'cls3'. | 610 | |
| Expected @param tag for 'cls4'. | 610 | |
| Expected @param tag for 'cls5'. | 610 | |
| Expected @param tag for 'cls6'. | 611 | |
| Expected @param tag for 'cls7'. | 611 |
| Violation | Message | Line |
|---|---|---|
| Type Javadoc comment is missing an @param <T> tag. | 19 | |
| Missing a Javadoc comment. | 21 | |
| Name 'log' must match pattern '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'. | 21 | |
| Unused @param tag for 'params'. | 27 | |
| Expected an @return tag. | 31 | |
| Expected @param tag for '<T>'. | 31 | |
| Expected @param tag for 'query'. | 31 | |
| Expected @param tag for 'parameters'. | 31 | |
| Expected @param tag for 'function'. | 32 | |
| Missing a Javadoc comment. | 36 | |
| Missing a Javadoc comment. | 37 | |
| Missing a Javadoc comment. | 38 | |
| Missing a Javadoc comment. | 39 | |
| Expected @param tag for 'query'. | 47 | |
| Expected @param tag for 'parameters'. | 47 | |
| Expected @param tag for 'function'. | 48 | |
| Missing a Javadoc comment. | 82 | |
| Expected @param tag for 'subscriber'. | 100 | |
| Expected @param tag for 'state'. | 100 | |
| Expected @throws tag for 'SQLException'. | 101 | |
| Line is longer than 100 characters (found 119). | 107 | |
| ',' is not followed by whitespace. | 107 | |
| Expected @param tag for 'subscriber'. | 123 | |
| Expected @param tag for 'state'. | 123 | |
| Expected @throws tag for 'SQLException'. | 123 | |
| Expected @param tag for 'e'. | 141 | |
| Expected @param tag for 'subscriber'. | 141 | |
| Expected @param tag for 'state'. | 156 |
| Violation | Message | Line |
|---|---|---|
| Type Javadoc comment is missing an @param <R> tag. | 16 | |
| Missing a Javadoc comment. | 18 | |
| Expected @param tag for 'builder'. | 27 | |
| Expected @param tag for 'function'. | 28 | |
| Expected @param tag for 'operatorType'. | 28 | |
| Class ApplyQuerySelect should be declared as final. | 38 | |
| Missing a Javadoc comment. | 38 | |
| Missing a Javadoc comment. | 40 | |
| Missing a Javadoc comment. | 41 | |
| Missing a Javadoc comment. | 42 | |
| Missing a Javadoc comment. | 44 | |
| '{' should be on the previous line. | 59 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 17 | |
| Missing a Javadoc comment. | 19 | |
| Name 'log' must match pattern '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'. | 19 | |
| Missing a Javadoc comment. | 21 | |
| Missing a Javadoc comment. | 22 | |
| Missing a Javadoc comment. | 23 | |
| Missing a Javadoc comment. | 24 | |
| Missing a Javadoc comment. | 25 | |
| Missing a Javadoc comment. | 26 | |
| Missing a Javadoc comment. | 28 | |
| Missing a Javadoc comment. | 30 | |
| Missing a Javadoc comment. | 51 | |
| Missing a Javadoc comment. | 64 | |
| Missing a Javadoc comment. | 93 | |
| Expected @param tag for 'subscriber'. | 108 | |
| Expected @throws tag for 'SQLException'. | 108 | |
| Expected @param tag for 'subscriber'. | 124 | |
| Expected @param tag for 'e'. | 139 | |
| Expected @param tag for 'subscriber'. | 139 | |
| Expected @param tag for 'subscriber'. | 167 |
| Violation | Message | Line |
|---|---|---|
| Unused import - java.sql.ResultSet. | 6 | |
| 'public' modifier out of order with the JLS suggestions. | 31 | |
| Missing a Javadoc comment. | 33 | |
| Missing a Javadoc comment. | 34 | |
| Missing a Javadoc comment. | 35 | |
| Missing a Javadoc comment. | 36 | |
| Missing a Javadoc comment. | 38 | |
| Expected @param tag for 'sql'. | 50 | |
| Expected @param tag for 'parameters'. | 50 | |
| Expected @param tag for 'depends'. | 50 | |
| Expected @param tag for 'context'. | 51 | |
| Expected an @return tag. | 101 | |
| Missing a Javadoc comment. | 106 | |
| Missing a Javadoc comment. | 110 | |
| Missing a Javadoc comment. | 114 | |
| Expected an @return tag. | 127 | |
| Expected an @return tag. | 151 | |
| Expected @param tag for 'parameters'. | 151 | |
| 'public' modifier out of order with the JLS suggestions. | 158 | |
| Expected @param tag for 'sql'. | 171 | |
| Expected @param tag for 'db'. | 171 | |
| Expected @param tag for '<T>'. | 183 | |
| Expected @param tag for 'parameters'. | 183 | |
| Expected @param tag for 'objects'. | 196 | |
| Expected @param tag for 'value'. | 209 | |
| Expected an @return tag. | 224 | |
| Expected @param tag for 'bytes'. | 253 | |
| Expected @param tag for 'dependency'. | 265 | |
| Expected an @return tag. | 303 | |
| Missing a Javadoc comment. | 349 | |
| Missing a Javadoc comment. | 351 | |
| Missing a Javadoc comment. | 353 | |
| Expected an @return tag. | 363 | |
| Method 'get' is not designed for extension - needs to be abstract, final or empty. | 363 | |
| Expected @param tag for '<T>'. | 363 | |
| Expected @param tag for 'function'. | 363 | |
| Unclosed HTML tag found: <ul> | 378 | |
| Expected an @return tag. | 398 | |
| Method 'autoMap' is not designed for extension - needs to be abstract, final or empty. | 398 | |
| Expected @param tag for '<T>'. | 398 | |
| Expected @param tag for 'cls'. | 398 | |
| Expected an @return tag. | 410 | |
| Method 'getAs' is not designed for extension - needs to be abstract, final or empty. | 410 | |
| Expected @param tag for '<T>'. | 410 | |
| Expected @param tag for 'cls'. | 410 | |
| Expected an @return tag. | 421 | |
| Method 'getTupleN' is not designed for extension - needs to be abstract, final or empty. | 421 | |
| Expected @param tag for '<T>'. | 421 | |
| Expected @param tag for 'cls'. | 421 | |
| Expected an @return tag. | 432 | |
| Method 'getTupleN' is not designed for extension - needs to be abstract, final or empty. | 432 | |
| Expected an @return tag. | 444 | |
| Method 'getAs' is not designed for extension - needs to be abstract, final or empty. | 444 | |
| Expected @param tag for '<T1>'. | 444 | |
| Expected @param tag for '<T2>'. | 444 | |
| Expected @param tag for 'cls1'. | 444 | |
| Expected @param tag for 'cls2'. | 444 | |
| Expected an @return tag. | 457 | |
| Method 'getAs' is not designed for extension - needs to be abstract, final or empty. | 457 | |
| Expected @param tag for '<T1>'. | 457 | |
| Expected @param tag for '<T2>'. | 457 | |
| Expected @param tag for '<T3>'. | 457 | |
| Expected @param tag for 'cls1'. | 457 | |
| Expected @param tag for 'cls2'. | 457 | |
| Expected @param tag for 'cls3'. | 458 | |
| Expected an @return tag. | 472 | |
| Method 'getAs' is not designed for extension - needs to be abstract, final or empty. | 472 | |
| Expected @param tag for '<T1>'. | 472 | |
| Expected @param tag for '<T2>'. | 472 | |
| Expected @param tag for '<T3>'. | 472 | |
| Expected @param tag for '<T4>'. | 472 | |
| Expected @param tag for 'cls1'. | 472 | |
| Expected @param tag for 'cls2'. | 473 | |
| Expected @param tag for 'cls3'. | 473 | |
| Expected @param tag for 'cls4'. | 473 | |
| Expected an @return tag. | 488 | |
| Method 'getAs' is not designed for extension - needs to be abstract, final or empty. | 488 | |
| Expected @param tag for '<T1>'. | 488 | |
| Expected @param tag for '<T2>'. | 488 | |
| Expected @param tag for '<T3>'. | 488 | |
| Expected @param tag for '<T4>'. | 488 | |
| Expected @param tag for '<T5>'. | 488 | |
| Expected @param tag for 'cls1'. | 488 | |
| Expected @param tag for 'cls2'. | 489 | |
| Expected @param tag for 'cls3'. | 489 | |
| Expected @param tag for 'cls4'. | 489 | |
| Expected @param tag for 'cls5'. | 489 | |
| Expected an @return tag. | 505 | |
| Method 'getAs' is not designed for extension - needs to be abstract, final or empty. | 505 | |
| Expected @param tag for '<T1>'. | 505 | |
| Expected @param tag for '<T2>'. | 505 | |
| Expected @param tag for '<T3>'. | 505 | |
| Expected @param tag for '<T4>'. | 505 | |
| Expected @param tag for '<T5>'. | 505 | |
| Expected @param tag for '<T6>'. | 505 | |
| Expected @param tag for 'cls1'. | 506 | |
| Expected @param tag for 'cls2'. | 506 | |
| Expected @param tag for 'cls3'. | 506 | |
| Expected @param tag for 'cls4'. | 506 | |
| Expected @param tag for 'cls5'. | 506 | |
| Expected @param tag for 'cls6'. | 507 | |
| Expected an @return tag. | 524 | |
| Method 'getAs' is not designed for extension - needs to be abstract, final or empty. | 524 | |
| Expected @param tag for '<T1>'. | 524 | |
| Expected @param tag for '<T2>'. | 524 | |
| Expected @param tag for '<T3>'. | 524 | |
| Expected @param tag for '<T4>'. | 524 | |
| Expected @param tag for '<T5>'. | 524 | |
| Expected @param tag for '<T6>'. | 524 | |
| Expected @param tag for '<T7>'. | 524 | |
| Expected @param tag for 'cls1'. | 525 | |
| Expected @param tag for 'cls2'. | 525 | |
| Expected @param tag for 'cls3'. | 525 | |
| Expected @param tag for 'cls4'. | 525 | |
| Expected @param tag for 'cls5'. | 525 | |
| Expected @param tag for 'cls6'. | 526 | |
| Expected @param tag for 'cls7'. | 526 | |
| Method 'count' is not designed for extension - needs to be abstract, final or empty. | 530 | |
| Missing a Javadoc comment. | 530 |
| Violation | Message | Line |
|---|---|---|
| Type Javadoc comment is missing an @param <T> tag. | 21 | |
| Missing a Javadoc comment. | 23 | |
| Name 'log' must match pattern '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'. | 23 | |
| Missing a Javadoc comment. | 25 | |
| Unused @param tag for 'params'. | 41 | |
| Expected an @return tag. | 45 | |
| Expected @param tag for '<T>'. | 45 | |
| Expected @param tag for 'query'. | 45 | |
| Expected @param tag for 'parameters'. | 45 | |
| Expected @param tag for 'query'. | 67 | |
| Expected @param tag for 'parameters'. | 67 | |
| Missing a Javadoc comment. | 99 | |
| Missing a Javadoc comment. | 108 | |
| Missing a Javadoc comment. | 112 | |
| Expected @param tag for 'state'. | 124 | |
| Expected @param tag for 'subscriber'. | 156 | |
| Expected @param tag for 'state'. | 156 | |
| Expected @param tag for 'subscriber'. | 184 | |
| Expected @param tag for 'state'. | 184 | |
| Expected @param tag for 'subscriber'. | 205 | |
| Expected @param tag for 'state'. | 205 | |
| Expected @throws tag for 'SQLException'. | 206 | |
| Missing a Javadoc comment. | 254 | |
| Expected @param tag for 'subscriber'. | 280 | |
| Expected @param tag for 'e'. | 294 | |
| Expected @param tag for 'subscriber'. | 294 | |
| Expected @param tag for 'state'. | 307 |
| Violation | Message | Line |
|---|---|---|
| Type Javadoc comment is missing an @param <R> tag. | 13 | |
| Missing a Javadoc comment. | 15 | |
| Expected @param tag for 'builder'. | 23 | |
| Expected @param tag for 'operatorType'. | 23 |
| Violation | Message | Line |
|---|---|---|
| Type Javadoc comment is missing an @param <R> tag. | 13 | |
| Missing a Javadoc comment. | 15 | |
| Expected @param tag for 'builder'. | 23 | |
| Line is longer than 100 characters (found 101). | 25 | |
| Line is longer than 100 characters (found 103). | 28 | |
| Line is longer than 100 characters (found 103). | 41 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 11 | |
| Missing a Javadoc comment. | 13 | |
| Variable 'rs' must be private and have accessor methods. | 13 | |
| Missing a Javadoc comment. | 14 | |
| Variable 'colIndexes' must be private and have accessor methods. | 14 | |
| Missing a Javadoc comment. | 16 | |
| Missing a Javadoc comment. | 22 | |
| '=' is not preceded with whitespace. | 26 | |
| '=' is not followed by whitespace. | 26 | |
| ';' is not followed by whitespace. | 26 | |
| '<=' is not preceded with whitespace. | 26 | |
| '<=' is not followed by whitespace. | 26 | |
| ';' is not followed by whitespace. | 26 | |
| ',' is not followed by whitespace. | 27 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 6 | |
| Missing a Javadoc comment. | 8 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 8 | |
| Missing a Javadoc comment. | 9 | |
| Variable 'con' must be private and have accessor methods. | 9 | |
| Missing a Javadoc comment. | 10 | |
| Variable 'ps' must be private and have accessor methods. | 10 | |
| Missing a Javadoc comment. | 11 | |
| Variable 'rs' must be private and have accessor methods. | 11 | |
| Missing a Javadoc comment. | 12 | |
| Variable 'closed' must be private and have accessor methods. | 12 |
| Violation | Message | Line |
|---|---|---|
| Unused import - com.github.davidmoten.rx.jdbc.QuerySelect.Builder. | 38 | |
| Name 'log' must match pattern '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'. | 56 | |
| Expected an @return tag. | 65 | |
| Missing a Javadoc comment. | 73 | |
| Expected @param tag for 'ps'. | 109 | |
| Expected @param tag for 'connection'. | 144 | |
| Expected an @return tag. | 163 | |
| Expected @param tag for 'connection'. | 163 | |
| Expected @param tag for 'connection'. | 180 | |
| Expected @param tag for 'connection'. | 195 | |
| Expected @param tag for 'rs'. | 210 | |
| Expected an @return tag. | 229 | |
| Expected @param tag for 'con'. | 229 | |
| Line is longer than 100 characters (found 108). | 240 | |
| Name 'TO_EMPTY_PARAMETER_LIST' must match pattern '^[a-z][a-zA-Z0-9]*$'. | 240 | |
| Variable 'TO_EMPTY_PARAMETER_LIST' must be private and have accessor methods. | 240 | |
| Expected an @return tag. | 256 | |
| Expected @param tag for '<T>'. | 256 | |
| Expected @param tag for 'cls'. | 256 | |
| Expected @param tag for '<T>'. | 276 | |
| Expected @param tag for 'rs'. | 276 | |
| Missing a Javadoc comment. | 295 | |
| Missing a Javadoc comment. | 299 | |
| Redundant 'static' modifier. | 299 | |
| Missing a Javadoc comment. | 300 | |
| Missing a Javadoc comment. | 303 | |
| Missing a Javadoc comment. | 304 | |
| Variable 'name' must be private and have accessor methods. | 304 | |
| Missing a Javadoc comment. | 305 | |
| Missing a Javadoc comment. | 307 | |
| Missing a Javadoc comment. | 324 | |
| Missing a Javadoc comment. | 325 | |
| Variable 'index' must be private and have accessor methods. | 325 | |
| Missing a Javadoc comment. | 326 | |
| Missing a Javadoc comment. | 328 | |
| Missing a Javadoc comment. | 345 | |
| Missing a Javadoc comment. | 347 | |
| Missing a Javadoc comment. | 349 | |
| Missing a Javadoc comment. | 383 | |
| '{' is followed by whitespace. | 387 | |
| Missing a Javadoc comment. | 396 | |
| Missing a Javadoc comment. | 404 | |
| Expected @param tag for '<T>'. | 423 | |
| Line is longer than 100 characters (found 101). | 434 | |
| Missing a Javadoc comment. | 438 | |
| Line is longer than 100 characters (found 127). | 449 | |
| Expected an @return tag. | 459 | |
| Expected @param tag for 'list'. | 459 | |
| Missing a Javadoc comment. | 476 | |
| Expected an @return tag. | 503 | |
| Expected @param tag for '<T>'. | 504 | |
| Expected an @return tag. | 526 | |
| Expected @param tag for 'o'. | 526 | |
| Expected @param tag for 'cls'. | 526 | |
| Missing a Javadoc comment. | 606 | |
| Missing a Javadoc comment. | 610 | |
| Expected an @return tag. | 651 | |
| Expected an @return tag. | 672 | |
| Expected @param tag for 'c'. | 672 | |
| Expected an @return tag. | 694 | |
| Expected @param tag for 'blob'. | 694 | |
| Expected @param tag for 'is'. | 694 | |
| Expected an @return tag. | 725 | |
| Expected @param tag for 'clob'. | 725 | |
| Expected @param tag for 'reader'. | 725 | |
| Expected @param tag for 'ps'. | 755 | |
| Expected @param tag for 'params'. | 755 | |
| Expected @param tag for 'namesAllowed'. | 755 | |
| Expected @throws tag for 'SQLException'. | 756 | |
| Expected @param tag for 'ps'. | 810 | |
| Expected @param tag for 'i'. | 810 | |
| Expected @param tag for 'o'. | 810 | |
| Expected @param tag for 'cls'. | 810 | |
| Expected @throws tag for 'SQLException'. | 811 | |
| Expected @param tag for 'ps'. | 835 | |
| Expected @param tag for 'i'. | 835 | |
| Expected @param tag for 'o'. | 835 | |
| Expected @param tag for 'cls'. | 835 | |
| Expected @throws tag for 'SQLException'. | 836 | |
| Expected an @return tag. | 858 | |
| Expected @param tag for 'input'. | 858 | |
| Expected @param tag for 'output'. | 858 | |
| Expected an @return tag. | 873 | |
| Expected @param tag for 'input'. | 873 | |
| Expected @param tag for 'output'. | 873 | |
| Missing a Javadoc comment. | 896 | |
| Missing a Javadoc comment. | 897 | |
| Missing a Javadoc comment. | 905 | |
| Missing a Javadoc comment. | 909 | |
| Missing a Javadoc comment. | 931 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 8 | |
| Missing a Javadoc comment. | 12 | |
| Redundant 'public' modifier. | 12 | |
| Missing a Javadoc comment. | 14 |
| Violation | Message | Line |
|---|---|---|
| Missing package-info.java file. | 0 | |
| Missing a Javadoc comment. | 8 | |
| Unused Javadoc tag. | 15 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 9 | |
| Missing a Javadoc comment. | 12 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 5 | |
| Missing a Javadoc comment. | 7 | |
| Missing a Javadoc comment. | 9 | |
| Missing a Javadoc comment. | 13 |
| Violation | Message | Line |
|---|---|---|
| Missing package-info.java file. | 0 | |
| Missing a Javadoc comment. | 3 | |
| Missing a Javadoc comment. | 5 | |
| Missing a Javadoc comment. | 8 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 11 | |
| Missing a Javadoc comment. | 12 | |
| Expected @param tag for 'value1'. | 20 | |
| Expected @param tag for 'value2'. | 20 | |
| Expected an @return tag. | 32 | |
| Expected @param tag for '<R>'. | 32 | |
| Expected @param tag for '<S>'. | 32 | |
| Expected @param tag for 'r'. | 32 | |
| Expected @param tag for 's'. | 32 | |
| Expected an @return tag. | 41 | |
| Method 'value1' is not designed for extension - needs to be abstract, final or empty. | 41 | |
| Expected an @return tag. | 50 | |
| Method 'value2' is not designed for extension - needs to be abstract, final or empty. | 50 | |
| Method 'hashCode' is not designed for extension - needs to be abstract, final or empty. | 54 | |
| Avoid inline conditionals. | 58 | |
| Avoid inline conditionals. | 59 | |
| Method 'equals' is not designed for extension - needs to be abstract, final or empty. | 63 | |
| Method 'toString' is not designed for extension - needs to be abstract, final or empty. | 85 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 12 | |
| Missing a Javadoc comment. | 13 | |
| Missing a Javadoc comment. | 14 | |
| Expected @param tag for 'value1'. | 23 | |
| Expected @param tag for 'value2'. | 23 | |
| Expected @param tag for 'value3'. | 23 | |
| Method 'value1' is not designed for extension - needs to be abstract, final or empty. | 29 | |
| Missing a Javadoc comment. | 29 | |
| Method 'value2' is not designed for extension - needs to be abstract, final or empty. | 33 | |
| Missing a Javadoc comment. | 33 | |
| Method 'value3' is not designed for extension - needs to be abstract, final or empty. | 37 | |
| Missing a Javadoc comment. | 37 | |
| Method 'hashCode' is not designed for extension - needs to be abstract, final or empty. | 41 | |
| Avoid inline conditionals. | 45 | |
| Avoid inline conditionals. | 46 | |
| Avoid inline conditionals. | 47 | |
| Method 'equals' is not designed for extension - needs to be abstract, final or empty. | 51 | |
| Method 'toString' is not designed for extension - needs to be abstract, final or empty. | 78 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 13 | |
| Missing a Javadoc comment. | 14 | |
| Missing a Javadoc comment. | 15 | |
| Missing a Javadoc comment. | 16 | |
| Expected @param tag for 'value1'. | 26 | |
| Expected @param tag for 'value2'. | 26 | |
| Expected @param tag for 'value3'. | 26 | |
| Expected @param tag for 'value4'. | 26 | |
| Method 'value1' is not designed for extension - needs to be abstract, final or empty. | 33 | |
| Missing a Javadoc comment. | 33 | |
| Method 'value2' is not designed for extension - needs to be abstract, final or empty. | 37 | |
| Missing a Javadoc comment. | 37 | |
| Method 'value3' is not designed for extension - needs to be abstract, final or empty. | 41 | |
| Missing a Javadoc comment. | 41 | |
| Method 'value4' is not designed for extension - needs to be abstract, final or empty. | 45 | |
| Missing a Javadoc comment. | 45 | |
| Method 'hashCode' is not designed for extension - needs to be abstract, final or empty. | 49 | |
| Avoid inline conditionals. | 53 | |
| Avoid inline conditionals. | 54 | |
| Avoid inline conditionals. | 55 | |
| Avoid inline conditionals. | 56 | |
| Method 'equals' is not designed for extension - needs to be abstract, final or empty. | 60 | |
| Method 'toString' is not designed for extension - needs to be abstract, final or empty. | 92 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 14 | |
| Missing a Javadoc comment. | 15 | |
| Missing a Javadoc comment. | 16 | |
| Missing a Javadoc comment. | 17 | |
| Missing a Javadoc comment. | 18 | |
| Expected @param tag for 'value1'. | 29 | |
| Expected @param tag for 'value2'. | 29 | |
| Expected @param tag for 'value3'. | 29 | |
| Expected @param tag for 'value4'. | 29 | |
| Expected @param tag for 'value5'. | 29 | |
| Method 'value1' is not designed for extension - needs to be abstract, final or empty. | 37 | |
| Missing a Javadoc comment. | 37 | |
| Method 'value2' is not designed for extension - needs to be abstract, final or empty. | 41 | |
| Missing a Javadoc comment. | 41 | |
| Method 'value3' is not designed for extension - needs to be abstract, final or empty. | 45 | |
| Missing a Javadoc comment. | 45 | |
| Method 'value4' is not designed for extension - needs to be abstract, final or empty. | 49 | |
| Missing a Javadoc comment. | 49 | |
| Method 'value5' is not designed for extension - needs to be abstract, final or empty. | 53 | |
| Missing a Javadoc comment. | 53 | |
| Method 'hashCode' is not designed for extension - needs to be abstract, final or empty. | 57 | |
| Avoid inline conditionals. | 61 | |
| Avoid inline conditionals. | 62 | |
| Avoid inline conditionals. | 63 | |
| Avoid inline conditionals. | 64 | |
| Avoid inline conditionals. | 65 | |
| Method 'equals' is not designed for extension - needs to be abstract, final or empty. | 69 | |
| Method 'toString' is not designed for extension - needs to be abstract, final or empty. | 106 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 15 | |
| Missing a Javadoc comment. | 16 | |
| Missing a Javadoc comment. | 17 | |
| Missing a Javadoc comment. | 18 | |
| Missing a Javadoc comment. | 19 | |
| Missing a Javadoc comment. | 20 | |
| Expected @param tag for 'value1'. | 32 | |
| Expected @param tag for 'value2'. | 32 | |
| Expected @param tag for 'value3'. | 32 | |
| Expected @param tag for 'value4'. | 32 | |
| Expected @param tag for 'value5'. | 32 | |
| Expected @param tag for 'value6'. | 32 | |
| Method 'value1' is not designed for extension - needs to be abstract, final or empty. | 41 | |
| Missing a Javadoc comment. | 41 | |
| Method 'value2' is not designed for extension - needs to be abstract, final or empty. | 45 | |
| Missing a Javadoc comment. | 45 | |
| Method 'value3' is not designed for extension - needs to be abstract, final or empty. | 49 | |
| Missing a Javadoc comment. | 49 | |
| Method 'value4' is not designed for extension - needs to be abstract, final or empty. | 53 | |
| Missing a Javadoc comment. | 53 | |
| Method 'value5' is not designed for extension - needs to be abstract, final or empty. | 57 | |
| Missing a Javadoc comment. | 57 | |
| Method 'value6' is not designed for extension - needs to be abstract, final or empty. | 61 | |
| Missing a Javadoc comment. | 61 | |
| Method 'hashCode' is not designed for extension - needs to be abstract, final or empty. | 65 | |
| Avoid inline conditionals. | 69 | |
| Avoid inline conditionals. | 70 | |
| Avoid inline conditionals. | 71 | |
| Avoid inline conditionals. | 72 | |
| Avoid inline conditionals. | 73 | |
| Avoid inline conditionals. | 74 | |
| Method 'equals' is not designed for extension - needs to be abstract, final or empty. | 78 | |
| Method 'toString' is not designed for extension - needs to be abstract, final or empty. | 120 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 16 | |
| Missing a Javadoc comment. | 17 | |
| Missing a Javadoc comment. | 18 | |
| Missing a Javadoc comment. | 19 | |
| Missing a Javadoc comment. | 20 | |
| Missing a Javadoc comment. | 21 | |
| Missing a Javadoc comment. | 22 | |
| Expected @param tag for 'value1'. | 35 | |
| Expected @param tag for 'value2'. | 35 | |
| Expected @param tag for 'value3'. | 35 | |
| Expected @param tag for 'value4'. | 35 | |
| Expected @param tag for 'value5'. | 35 | |
| Expected @param tag for 'value6'. | 35 | |
| Expected @param tag for 'value7'. | 35 | |
| Method 'value1' is not designed for extension - needs to be abstract, final or empty. | 45 | |
| Missing a Javadoc comment. | 45 | |
| Method 'value2' is not designed for extension - needs to be abstract, final or empty. | 49 | |
| Missing a Javadoc comment. | 49 | |
| Method 'value3' is not designed for extension - needs to be abstract, final or empty. | 53 | |
| Missing a Javadoc comment. | 53 | |
| Method 'value4' is not designed for extension - needs to be abstract, final or empty. | 57 | |
| Missing a Javadoc comment. | 57 | |
| Method 'value5' is not designed for extension - needs to be abstract, final or empty. | 61 | |
| Missing a Javadoc comment. | 61 | |
| Method 'value6' is not designed for extension - needs to be abstract, final or empty. | 65 | |
| Missing a Javadoc comment. | 65 | |
| Method 'value7' is not designed for extension - needs to be abstract, final or empty. | 69 | |
| Missing a Javadoc comment. | 69 | |
| Method 'hashCode' is not designed for extension - needs to be abstract, final or empty. | 73 | |
| Avoid inline conditionals. | 77 | |
| Avoid inline conditionals. | 78 | |
| Avoid inline conditionals. | 79 | |
| Avoid inline conditionals. | 80 | |
| Avoid inline conditionals. | 81 | |
| Avoid inline conditionals. | 82 | |
| Avoid inline conditionals. | 83 | |
| Method 'equals' is not designed for extension - needs to be abstract, final or empty. | 87 | |
| Method 'toString' is not designed for extension - needs to be abstract, final or empty. | 134 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 13 | |
| Expected @param tag for 'list'. | 20 | |
| Method 'values' is not designed for extension - needs to be abstract, final or empty. | 24 | |
| Missing a Javadoc comment. | 24 | |
| Method 'hashCode' is not designed for extension - needs to be abstract, final or empty. | 29 | |
| Avoid inline conditionals. | 33 | |
| Method 'equals' is not designed for extension - needs to be abstract, final or empty. | 37 | |
| Method 'toString' is not designed for extension - needs to be abstract, final or empty. | 54 |
| Violation | Message | Line |
|---|---|---|
| Missing a Javadoc comment. | 25 | |
| Missing a Javadoc comment. | 37 | |
| Missing a Javadoc comment. | 49 | |
| '3' is a magic number. | 56 | |
| Missing a Javadoc comment. | 61 | |
| Line is longer than 100 characters (found 101). | 62 | |
| '3' is a magic number. | 68 | |
| '4' is a magic number. | 68 | |
| Missing a Javadoc comment. | 73 | |
| '3' is a magic number. | 81 | |
| '4' is a magic number. | 81 | |
| '5' is a magic number. | 82 | |
| Missing a Javadoc comment. | 87 | |
| '3' is a magic number. | 96 | |
| '4' is a magic number. | 97 | |
| '5' is a magic number. | 97 | |
| '6' is a magic number. | 98 | |
| Line is longer than 100 characters (found 105). | 103 | |
| Missing a Javadoc comment. | 103 | |
| '3' is a magic number. | 112 | |
| '4' is a magic number. | 113 | |
| '5' is a magic number. | 113 | |
| '6' is a magic number. | 114 | |
| '7' is a magic number. | 114 | |
| Missing a Javadoc comment. | 119 | |
| Missing a Javadoc comment. | 128 |


Base type: System.Entity
| Name | Type | Notes |
|---|---|---|
| NodeID | System.Guid | |
| CoreNodeID | System.Int32 | |
| NodeGroup | System.String | |
| NodeComments | System.String | |
| Username | System.String | |
| Password | System.String | |
| EnablePassword | System.String | |
| EnableLevel | System.String | |
| ExecProtocol | System.String | |
| CommandProtocol | System.String | |
| TransferProtocol | System.String | |
| LoginStatus | System.String | |
| UseHTTPS | System.Boolean | |
| UseUserDeviceCredentials | System.Boolean | |
| LastInventory | System.DateTime | |
| AllowIntermediary | System.Boolean | |
| TelnetPort | System.String | |
| SSHPort | System.String | |
| UseKeybInteractiveAuth | System.Boolean | |
| ConfigTypes | System.String | |
| ConnectionProfile | System.Int32 | |
| EndOfSupport | System.DateTime | |
| EndOfSales | System.DateTime | |
| EndOfSoftware | System.DateTime | |
| EosLink | System.String | |
| EosType | System.Int32 | |
| EosComments | System.String | |
| ReplacementPartNumber | System.String | |
| OldVulnerabilitiesCount | System.Int32 | |
| VulnerabilitiesCount | System.Int32 | |
| DisplayName | System.String | |
| Description | System.String | |
| InstanceType | System.Type | |
| Uri | System.String | |
| InstanceSiteId | System.Int32 | Default='0'. |
| VulnerabilitiesAnnouncementsNodes | NCM.VulnerabilitiesAnnouncementsNodes | Defined by relationship NCM.NodePropertiesRefVulnerabilitiesAnnouncementsNodes (System.Reference) |
| ArpTables | NCM.ArpTables | Defined by relationship NCM.NodePropertiesRefArpTables (System.Reference) |
| BridgePorts | NCM.BridgePorts | Defined by relationship NCM.NodePropertiesRefBridgePorts (System.Reference) |
| CatalystCards | NCM.CatalystCards | Defined by relationship NCM.NodePropertiesRefCatalystCards (System.Reference) |
| CiscoCards | NCM.CiscoCards | Defined by relationship NCM.NodePropertiesRefCiscoCards (System.Reference) |
| CiscoCdp | NCM.CiscoCdp | Defined by relationship NCM.NodePropertiesRefCiscoCdp (System.Reference) |
| CiscoChassis | NCM.CiscoChassis | Defined by relationship NCM.NodePropertiesRefCiscoChassis (System.Reference) |
| CiscoFlash | NCM.CiscoFlash | Defined by relationship NCM.NodePropertiesRefCiscoFlash (System.Reference) |
| CiscoFlashFiles | NCM.CiscoFlashFiles | Defined by relationship NCM.NodePropertiesRefCiscoFlashFiles (System.Reference) |
| CiscoImageMIB | NCM.CiscoImageMIB | Defined by relationship NCM.NodePropertiesRefCiscoImageMIB (System.Reference) |
| CiscoMemoryPools | NCM.CiscoMemoryPools | Defined by relationship NCM.NodePropertiesRefCiscoMemoryPools (System.Reference) |
| EntityLogical | NCM.EntityLogical | Defined by relationship NCM.NodePropertiesRefEntityLogical (System.Reference) |
| EntityPhysical | NCM.EntityPhysical | Defined by relationship NCM.NodePropertiesRefEntityPhysical (System.Reference) |
| Interfaces | NCM.Interfaces | Defined by relationship NCM.NodePropertiesRefInterfaces (System.Reference) |
| IpAddresses | NCM.IpAddresses | Defined by relationship NCM.NodePropertiesRefIpAddresses (System.Reference) |
| MacForwarding | NCM.MacForwarding | Defined by relationship NCM.NodePropertiesRefMacForwarding (System.Reference) |
| PortsTcp | NCM.PortsTcp | Defined by relationship NCM.NodePropertiesRefPortsTcp (System.Reference) |
| PortsUdp | NCM.PortsUdp | Defined by relationship NCM.NodePropertiesRefPortsUdp (System.Reference) |
| RouteTable | NCM.RouteTable | Defined by relationship NCM.NodePropertiesRefRouteTable (System.Reference) |
| VLANs | NCM.VLANs | Defined by relationship NCM.NodePropertiesRefVLANs (System.Reference) |
| TransferResults | NCM.TransferResults | Defined by relationship NCM.NodePropertiesRefTransferResults (System.Reference) |
| WindowsAccounts | NCM.WindowsAccounts | Defined by relationship NCM.NodePropertiesRefWindowsAccounts (System.Reference) |
| WindowsServices | NCM.WindowsServices | Defined by relationship NCM.NodePropertiesRefWindowsServices (System.Reference) |
| WindowsSoftware | NCM.WindowsSoftware | Defined by relationship NCM.NodePropertiesRefWindowsSoftware (System.Reference) |
| CATOSPorts | NCM.CATOSPorts | Defined by relationship NCM.NodePropertiesRefCATOSPorts (System.Hosting) |
| ConfigArchive | NCM.ConfigArchive | Defined by relationship NCM.NodePropertiesRefConfigArchive (System.Reference) |
| RTNAudit | NCM.RTNAudit | Defined by relationship NCM.NodePropertiesRefRTNAudit (System.Reference) |
| EntityPhysicalJuniper | NCM.EntityPhysicalJuniper | Defined by relationship NCM.NodePropertiesRefEntityPhysicalJuniper (System.Reference) |
| BrocadeAgentConfigModule | NCM.BrocadeAgentConfigModule | Defined by relationship NCM.NodePropertiesRefBrocadeAgentConfigModule (System.Reference) |
| BrocadeChassis | NCM.BrocadeChassis | Defined by relationship NCM.NodePropertiesRefBrocadeChassis (System.Reference) |
| BrocadeChassisUnit | NCM.BrocadeChassisUnit | Defined by relationship NCM.NodePropertiesRefBrocadeChassisUnit (System.Reference) |
| F5System | NCM.F5System | Defined by relationship NCM.NodePropertiesRefF5System (System.Reference) |
| F5LTMVirtualServers | NCM.F5LTMVirtualServers | Defined by relationship NCM.NodePropertiesRefF5LTMVirtualServers (System.Reference) |
| F5GTMVirtualServers | NCM.F5GTMVirtualServers | Defined by relationship NCM.NodePropertiesRefF5GTMVirtualServers (System.Reference) |
| F5LTMNodeAddresses | NCM.F5LTMNodeAddresses | Defined by relationship NCM.NodePropertiesRefF5LTMNodeAddresses (System.Reference) |
| Nodes | Orion.Nodes | Defined by relationship Orion.NodesHostsNodeProperties (System.Hosting) |


{% extends 'template-lab-4a.html' %} {% set mainClasses = 'nhsuk-u-padding-top-0' %} {% block pageTitle %} Symptoms - NHS {% endblock %} {% block beforeContent %} {% endblock %} {% block content %}
Everyone can get pins and needles but see a GP if you keep getting it or it lasts a long time.
Pins and needles feels like pricking, tingling or numbness on the skin.
It happens when the blood supply to the nerves is cut off. This is usually when you sit or sleep on part of your body. It only lasts a few minutes.
You often get pins and needles in your:
It usually stops when the weight is taken off the body part and your blood supply returns to the nerves.
Any treatment you might need for pins and needles will depend on the cause.
There are some possible medical causes of pins and needles. If you have other symptoms this might help to find the cause.
But do not self-diagnose – see a GP if you're worried.
| Symptoms | Possible condition |
|---|---|
| Pins and needles, pain or numbness in hands and feet | Diabetes |
| Pins and needles in fingers or toes that change colour | Raynaud's |
| Breathing too quickly, trembling hands, pins and needles | Hyperventilation |
| Pain and pins and needles that travels from your back, down your leg to your foot | Sciatica |
| Pins and needles in different parts of your body | Multiple sclerosis |
Long-lasting pins and needles may also be caused by:
Page last reviewed: 02 August 2019
Next review due: 02 August 2022


March 2019 : I tested my code on Wampserver3 (apache 2.4.37+php7.2.14) and came with these tips:
I chose 64bit edition (because I have 64bit Windows)
What a mission to install it on Windows10:
I had to google and download and isntall about:
3 different versions of vc_redist.x64
3 different versions of vc_redist.x86
vcredist_2008_sp1_atl_x64
vcredist_2008_sp1_atl_x86
vcredist_2008_sp1_mfc_x64
vcredist_2008_sp1_mfc_x86
vcredist_2008_sp1_x64
2 different versions ofvcredist_2013_upd5_x64
2 different versions of vcredist_2013_upd5_x86
2 different versions of vcredist_arm
vcredist_ia64
9x different versions of vcredist_x64
9x different versions of vcredist_x86
to get wampserver3.1.7_x64 to work!!!
And you download check_vcredist.exe to test it for you.
To have other PCs accessing your local server you do not need to modify httpd.conf anymore! And you only don;t need to put it "Online" anymore!
instead it uses a virtual host option.
Right-click on green wampserver, Allow VirtualHost Local IP saddresses other than 127*
Then edit httpd-vhosts.conf to look like this: (Find it in C:\wamp64\).
<VirtualHost *:80>
ServerName localhost
DocumentRoot c:/wamp64/www
<Directory "c:/wamp64/www/">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Installation Procedure for Apache webserver and PHP to make the PHP MySQL accounting software work:
(One can choose install WAMP or XAMPP or Apache+PHP+MySQL or IISExpress+PHP+MySQL:
Download and install the following software:
- An internet browser called Mozilla Firefox: https://www.mozilla.org/firefox
- Disable IISExpress if you have a Professional edition (eg Win8Pro or Win7pro)
- Disable or uninstall Skype temporarily to prevent a port conflict
- Download & install Wamp (www.wampserver.com) or Xampp (or LAMP for Linux)
- Download wkhtmltoimage program from http://wkhtmltopdf.org/, rename it to wkhtmltoimage.exe and copy it into your project.(To make a jpg copy out of your invoice).
- Setup an email program such as Mozilla Thunderbird or Outlook.
The next step is to set up php.ini.
Enable all this lovely stuff inside php.ini: (by default already enabled)
extension=php_mysqli.dll
extension=php_pdo.dll
Download & install NotepadPlusPlus: www.notepad-plus-plus.org (or Netbeans for PHP) You will need this for editing PHP files.
Take the faster 64 bit version if you have 64bit version of Windows.
Copy all our PHP files into C:\wamp\www (or C:\wamp64\www )
(Find your browser under C:\Program Files(x86)\Mozilla Firefox\firefox.exe)
Test your webserver in Firefox: http://localhost
(If you want to install Apache and PHP separately click here: Apache/IIS)
You might need .NETFrameworkV4 for wampserver: vcredist_x64.exe or vcredist_x86.exe
dotNetFx40_Full_x86_x64.exe for 64bit Windows (see above notes)
new mysql password: Itsmeagain007#
Open up phpmyadmin, create a database and call it kc
then select the database.
then click on SQL and run the script inside (6)STRUCTUREONLYYY.sql to create the structure
On Windows: to change or add the password for the MySQL 'root'@'localhost' account.
( Stop the MySQL server if it is running.
Services manager: Start , Control Panel, Administrative Tools,Services.
Find the MySQL service in the list and stop it.
or use Task Manager to force it to stop if it is not a service.)
Wampserver: MySQL > MysQSL console
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('Itsmeagain007#');
Query OK, 0 rows affected
Restart MySQl server: Wampserver: restart all services
(Otherwise:
Open a console window to get to the command prompt:
Wampserver: MySQL > MysQSL console
(or: Start> Run > enter cmd as the command to be run).
C:\> cd "C:\Program Files\MySQL\MySQL Server 5.0\bin"
C:\> mysqld-nt --init-file=C:\\mysql-init.txt
Now we want wampserver to be 'online' > available on the whole network
>>> SEE COMMENTS ABOVE <<<<
To do that launch the pink Wampserver icon on your desktop, then click "Online" (check notes above)
If the network name of your server is Alpha-PC, then open Explorer in any other PC on the network and type in \\Alpha-PC into the address bar.
(Alternatively use a static IP address on the server, then \\<IP_ADDRESS> )
Also change Windows Firewall in Control panel to allow Apache to work on private and public networks
C:\wamp\bin\apache\apache2.4.9\conf\httpd.conf [NO NEED TO CHANGE PLEASE USE VIRTUAL HOST INSTEAD FOR LATEST WAMPSERVER]
AllowOverride None
[NO NEED TO CHANGE PLEASE USE VIRTUAL HOST INSTEAD FOR LATEST WAMPSERVER]
Options None
[NO NEED TO CHANGE PLEASE USE VIRTUAL HOST INSTEAD FOR LATEST WAMPSERVER]
Order allow,deny
[NO NEED TO CHANGE PLEASE USE VIRTUAL HOST INSTEAD FOR LATEST WAMPSERVER]
Allow from all
[NO NEED TO CHANGE PLEASE USE VIRTUAL HOST INSTEAD FOR LATEST WAMPSERVER]
Now we need to change the password inside phpmyadmin as well:
Solved :: Wampserver : #1045 – Access denied for user ‘root’@’localhost’ (using password: NO)
Here is a simple way to solve #1045 – Access denied for user ‘root’@’localhost’ (using password: NO) error…
Just follow the steps:
Note: [WAMP_PATH] is the path to the wampserver directory in your computer so it can be anything. Default (C:\wamp).
First, go to [WAMP_PATH] > apps > phpmyadmin3.5.1.
Then find and open config.inc.php in your text editor
Now find $cfg['Servers'][$i]['password'] = ”; and change it with $cfg['Servers'][$i]['password'] = ‘admin’; (You can put anything in place of admin as your password, this is only a test password).
Now find $cfg['Servers'][$i]['AllowNoPassword'] = true; and replace it by $cfg['Servers'][$i]['AllowNoPassword'] = false;.
That's it now save that file.
Now restart the wampserver. To do this left-click the wamp icon in the windows taskbar (Notification one), a box will pop up then just click on Restart all Services.
$cfg['Servers'][$i]['password'] = 'Itsmeagain007#';
To be able to save invoices using Firefox you need to
install this add-on for Firefox:
https://addons.mozilla.org/en-US/firefox/user/gm/?src=api
TitleSave 0.3 by gm
https://addons.mozilla.org/en-US/firefox/addon/title-save
Also get this add-on: https://addons.mozilla.org/firefox/addon/ie-tab/
MySQL password:
http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html
http://developer.nokia.com/community/wiki/Setup_MySQL_in_WAMP_-_password_setting,_service_shutdown_%26_startup
Using Windows 7, I went into Control Panel -> Services
I changed the settings for "wampapache" and "wampmysql" to start: "Automatic" or "Delayed".
After that, when I restart my Win7 machine, both services start automatically before I even log into the machine
To Disable the Backspace key (Go back one page) in Firefox:
Open Mozilla Firefox
In the Address bar –> Type “about:config” and press enter
Press “I’ll be careful, I promise” button and press enter
In the filter box type “browser.backspace_action”
You will see a configuration in the display window below, with a value of “0”
Change this to “1” in order to disable backspace in firefox.
How to set View Source to open in editor of choice?
You can do this by changing 2 hidden preferences.
Type about:config into the location bar and press enter
Accept the warning message that appears, you will be taken to a list of preferences
In the filter box type view_source
Double-click on view_source.editor.external to change its value to true
Double-click on view_source.editor.path and set it to C:\Program Files\Notepad++\notepad++.exe (if Notepad++ is stored elsewhere change that to where it is stored)
For Firefox to prevent the backspace button from going back to previous page (then you lose entered data)
To modify a preference in a browser application such as Firefox or SeaMonkey, type about:config
To change an existing preference, double click on it.
browser.backspace_action
0
Pressing [Backspace] will go back a page in the session history and [Shift]+[Backspace] will go forward. (Default in Windows)
1
Pressing [Backspace] will scroll up a page in the current document and [Shift]+[Backspace] will scroll down. (Default in Linux builds before 2006-12-07)
(to run frameworks, get: Win32OpenSSL-1_0_1h.exe, Composer-Setup.exe)


Rabbit VM Implementation
Our emulator can exit or abort with a couple of status codes. They are as follows:
/* Exit/error codes and statuses. */ typedef enum rabbits { RB_SUCCESS = 0, RB_FAIL, RB_OVERFLOW, RB_ILLEGAL, } rabbits;
RB_SUCCESS
indicates no error. RB_FAIL
indicates a generic
failure. RB_OVERFLOW
indicates a stack overflow. RB_ILLEGAL
indicates an
illegal instruction.
Emulator structure
#include <stdio.h> #include <inttypes.h> #include <stdlib.h> #include <string.h> #include <sys/stat.h> #include "rabbit_types.h" #include "rabbit_io.h" #include "rabbit_codewords.h" {{{declarations}}} {{{builtin_functions}}} int main(int argc, char **argv) { {{{check_cli_arguments}}} {{{open_code_file}}} {{{stat_code_file}}} {{{allocate_memory}}} {{{read_code_into_memory}}} {{{fetch_decode_execute_loop}}} return 0; } {{{macro_cleanup}}}
Registers
/* Registers available for use. */ typedef enum rabbitr { RB_ZERO = 0, RB_R1, RB_R2, RB_R3, RB_R4, RB_R5, RB_R6, RB_R7, RB_R8, RB_R9, RB_IP, RB_SP, RB_RET, RB_TMP, RB_FLAGS, RB_NUMREGS, } rabbitr;
Instructions
There are four types of instructions:
instr %rA, %rB, %rC instr %rA, %rB instr %rA instr
There is only one instruction in the last category: halt
.
All instructions are represented as 32-bit words:
#ifndef RABBIT_TYPES_H #define RABBIT_TYPES_H #include <inttypes.h> typedef uint32_t rabbitw; #endif
These 32 bits are laid out as follows:
+-----Immediate bit |+----Addressing mode bit C ||+---Addressing mode bit B |||+--Addressing mode bit A |||| +Dead space+ regB vvvv vvvvvvvvvvvv vvvv IIII MDDD<PHONE_NUMBER>00 CCCCBBBBAAAA ^^^^ ^^^^ ^^^^ Opcode regC regA VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Immediate value
Note that every bit in “Dead space” must be turned off. If one is turned on, the result of executing that instruction is undefined.
Internally, the emulator uses structs with bit fields to represent instructions. It uses bit fields only to save space; they can be removed with no consequences.
/* Options for operand use. Is space C an immediate value or a register? Should * any of spaces A, B, and C be dereferenced? */ struct modes_s { uint8_t immediate : 1; uint8_t regc_deref : 1; uint8_t regb_deref : 1; uint8_t rega_deref : 1; };
The full unpacked representation of the instruction includes this unpacked modes struct along with the opcode and three operands.
/* Holds an unpacked representation of an instruction (sans immediate value, if * it has one). */ struct unpacked_s { struct modes_s modes; uint8_t opcode : 4; uint8_t regc : 4; uint8_t regb : 4; uint8_t rega : 4; };
The immediate value follows the instruction in memory; the emulator fetches it upon execution.
Decoding
With the knowledge of the instruction format and its in-emulator representation,
it is not difficult to write a decode
function that takes an instruction and
returns the unpacked representation.
First, decode
fetches the mode from the instruction. Its least significant bit
is 24 and it contains at most four bits.
/* Fetch the space modes from the instruction. */ uint8_t modes = (instr >> 24) & 0xF;
As the modes are stored in a bit vector, it’s useful to have masks for each of the addressing modes and the immediate mode.
/* Offsets of the space modes in the mode nibble. */ static const uint8_t RB_ADDRA_LSB = 0, RB_ADDRB_LSB = 1, RB_ADDRC_LSB = 2, RB_IMMED_LSB = 3;
From here it’s reasonably trivial to fill the unpacked_s
struct. instr
needs
to be shifted and masked a couple of times to fetch the opcode and registers,
but nothing major.
#include "rabbit_codewords.h" /* Transform the packed representation of an instruction into the unpacked * representation. */ struct unpacked_s decode(rabbitw instr) { {{{fetch_modes}}} {{{mode_offsets}}} return (struct unpacked_s) { .modes = { .immediate = (modes >> RB_IMMED_LSB) & 0x1, .regc_deref = (modes >> RB_ADDRC_LSB) & 0x1, .regb_deref = (modes >> RB_ADDRB_LSB) & 0x1, .rega_deref = (modes >> RB_ADDRA_LSB) & 0x1, }, .opcode = instr >> 28, .regc = (instr >> 8) & 0xF, .regb = (instr >> 4) & 0xF, .rega = instr & 0xF, }; }
Modes
Following mode rules
VM setup
Check CLI arguments
if (argc != 2) { fprintf(stderr, "Need to pass file to execute.\n"); return RB_FAIL; }
Open code file
char *fn = argv[1]; FILE *fp = fopen(fn, "rb"); if (fp == NULL) { fprintf(stderr, "Can't open `%s'.\n", fn); return RB_FAIL; }
Get size of code file
/* Get the size of the file so that we can allocate memory for it. */ struct stat st; if (fstat(fileno(fp), &st) != 0) { fprintf(stderr, "Can't stat `%s'.\n", fn); fclose(fp); return RB_FAIL; }
Allocate memory
/* Allocate memory with program first, stack second. */ size_t stacksize = 1000; off_t size = st.st_size; rabbitw *mem = malloc(stacksize + size * sizeof *mem); if (mem == NULL) { fprintf(stderr, "Not enough memory. Could not allocate stack of size" "%zu + program of size %lld.\n", stacksize, size); return RB_FAIL; }
Read code into memory
/* Read the file into memory. */ size_t i = 0; rabbitw word = 0; /* We cannot use fread because of endian-ness issues. */ while (read_word(fp, &word) != 0) { mem[i++] = word; } fclose(fp);
/* Instructions available for use. */ typedef enum rabbiti { RB_HALT = 0, RB_MOVE, RB_ADD, RB_SUB, RB_MUL, RB_DIV, RB_SHR, RB_SHL, RB_NAND, RB_XOR, RB_BR, RB_BRZ, RB_BRNZ, RB_IN, RB_OUT, RB_BIF, RB_NUMINSTRS, } rabbiti;
Fetch-decode-execute loop
struct abc_s abc; rabbitw regs[RB_NUMINSTRS] = { 0 }; regs[RB_SP] = i; /* Main fetch-decode-execute loop. */ while (1) { /* Fetch the current instruction word. */ rabbitw word = mem[regs[RB_IP]++]; /* Decode it. */ struct unpacked_s i = decode(word); /* Execute it. */ switch (i.opcode) { case RB_HALT: free(mem); return RB_SUCCESS; break; case RB_MOVE: { /* Move is special because it has one source instead of two * operands. */ rabbitw src = i.modes.immediate ? fetch_immediate() : regs[i.regc]; rabbitw *dst = i.modes.regb_deref ? &mem[regs[i.regb]] : ®s[i.regb]; *dst = i.modes.regc_deref ? mem[src] : src; break; } case RB_ADD: abc = getabc(regs, mem, i); *abc.dst = abc.b + abc.c; break; case RB_SUB: abc = getabc(regs, mem, i); rabbitw res = abc.b - abc.c; *abc.dst = res; if (res == 0) { /* Set zero flag. */ regs[RB_FLAGS] |= 0x2U; } break; case RB_MUL: abc = getabc(regs, mem, i); *abc.dst = abc.b * abc.c; break; case RB_DIV: abc = getabc(regs, mem, i); if (abc.c == 0) { free(mem); return RB_ILLEGAL; } *abc.dst = abc.b / abc.c; break; case RB_SHR: abc = getabc(regs, mem, i); *abc.dst = abc.b >> abc.c; break; case RB_SHL: abc = getabc(regs, mem, i); *abc.dst = abc.b << abc.c; break; case RB_NAND: abc = getabc(regs, mem, i); *abc.dst = ~(abc.b & abc.c); break; case RB_XOR: abc = getabc(regs, mem, i); *abc.dst = abc.b ^ abc.c; break; case RB_BR: { /* Branch is special because it only has one argument. */ rabbitw src = i.modes.immediate ? fetch_immediate() : regs[i.regc]; regs[RB_IP] = i.modes.regc_deref ? mem[src] : src; break; } case RB_BRZ: /* Branch if zero is special because it only has one argument. */ if ((regs[RB_FLAGS] & 0x2U) == 0) { rabbitw src = i.modes.immediate ? fetch_immediate() : regs[i.regc]; regs[RB_IP] = i.modes.regc_deref ? mem[src] : src; } break; case RB_BRNZ: /* Branch not zero is special because it only has one argument. */ if ((regs[RB_FLAGS] & 0x2U) != 0) { rabbitw src = i.modes.immediate ? fetch_immediate() : regs[i.regc]; regs[RB_IP] = i.modes.regc_deref ? mem[src] : src; } break; case RB_IN: { /* Input is special because it does not have an argument. */ rabbitw dst = i.modes.immediate ? fetch_immediate() : regs[i.regc]; rabbitw *dstp = i.modes.regc_deref ? &mem[regs[i.regc]] : ®s[i.regc]; *dstp = getchar(); break; } case RB_OUT: { /* Output is special because it has one argument and no * destination. */ rabbitw src = i.modes.immediate ? fetch_immediate() : regs[i.regc]; src = i.modes.regc_deref ? mem[src] : src; putchar(src); break; } case RB_BIF: { rabbitw src = i.modes.immediate ? fetch_immediate() : regs[i.regc]; src = i.modes.regc_deref ? mem[src] : src; if (src > NUM_BIFS) { fprintf(stderr, "Invalid bif: `%u'.\n", src); return RB_FAIL; } bif f = biftable[src].f; f(regs, mem); break; } /* case RB_CFF: break; */ default: free(mem); return RB_ILLEGAL; break; } }
Building the VM
CC=gcc CFLAGS=-Wall -Wextra -Wpedantic LFLAGS= RABBIT_OBJS=rabbit.o rabbit_io.o rabbit_codewords.o ASSEMBLER_OBJS=assembler.o rabbit_io.o DISASSEMBLER_OBJS=disassembler.o rabbit_io.o rabbit_codewords.o all: rabbit assembler disassembler clean: rm -f rabbit rabbit-asm rabbit-dis rm -f $(RABBIT_OBJS) $(ASSEMBLER_OBJS) $(DISASSEMBLER_OBJS) rabbit: $(RABBIT_OBJS) $(CC) $(CFLAGS) $(LFLAGS) $(RABBIT_OBJS) -o rabbit assembler: $(ASSEMBLER_OBJS) $(CC) $(CFLAGS) $(LFLAGS) $(ASSEMBLER_OBJS) -o rabbit-asm disassembler: $(DISASSEMBLER_OBJS) $(CC) $(CFLAGS) $(LFLAGS) $(DISASSEMBLER_OBJS) -o rabbit-dis %.o: %.c $(CC) $(CFLAGS) -o $@ -c $<


:
Pothole complaints reported
in the last 30 days:
:
No heat complaints reported
in the last 30 days:
:
Trash complaints reported
in the last 30 days
:
:
Fire response complaints reported
in the last 30 days:
:
Priority 3 call responses
in the last 30 days
:
:
Overgrowth complaints reported
in the last 30 days
:
:
One time potholes addressed
in the last year:
Target: %
:
One time back ups addressed
in the last year:
Target: %
:
One time blue bin requests addressed
in the last year:
Target: %
:
Water main complaints addressed
in the last year:
Target: %
:
One time trash complaints addressed
in the last year:
Target: %
:
One time overgrowth complaints addressed
in the last year:
Target: %
:
One time malfunctioning alarms addressed
in the last year:
Target: %


Local Positioning System Database (lpsdb)
Here is a database of datasets for calibrating local positioning systems.
Typically there is a set of receivers r_i in R^3 and a set of senders s_j in R^3.
Given some of the distance measurements d_ij = |r_i - s_j|
determine r_i and s_j.
- Download the matlab code from https://github.com/kalleastrom/LocoPositioningSystemSlam
- The folder structure should be:
- LocoPositioningSystemSlam
- matlab
- main.m
- other matlab code and folders
- data
- savefiles (this folder is used to save intermediate results)
- lpsgt (this folder contains ground truth for experiments)
- lpsdb (this folder should contain the experiments you want to try. However, this folder is empty when you download it from github)
- data1.mat (one experiment saved as a mat file)
- data2.mat (another experiment saved as a mat file)
- data3.mat
- ...
- tex
- index.html (tex file explaining some of the math and algorithms)
- LocoPositioningSystemSlam.tex (tex file explaining some of the math and algorithms)
- Download the raw sound files from this site http://vision.maths.lth.se/lpsdb/
and put the each experiment mat file in the folder data/sfsdb so that you get the right file structure.
- Run main.m
Local Positioning System Database (lpsdb)
- data4.mat


Please enter the issuer URL for the Solid-OIDC provider you wish to test.
Solid-OIDC Issuer:
Perform Tests


My name is Saïd GUERRAB, I'm 34 years old. I live in Montreal Canada. I'm a programmer, I develop web applications as well as desktop applications. I worked on various projects, whether as school projects or for small companies and organizations.
I can work alone, completely autonomous or with a team of developers and designers. I'm bilingual, I can work in french or in english. When I'm not programming, I love doing outdoor activities, like hiking. I also run and play soccer from time to time.