Package net.ssehub.comani.core
Class AbstractManager
- java.lang.Object
-
- java.lang.Thread
-
- net.ssehub.comani.core.AbstractManager
-
- All Implemented Interfaces:
java.lang.Runnable
- Direct Known Subclasses:
AnalysisManager
,ExtractionManager
public abstract class AbstractManager extends java.lang.Thread
This abstract class defines common methods and elements of the specific commit extraction and analysis managers.- Author:
- Christian Kroeher
-
-
Field Summary
Fields Modifier and Type Field Description protected CommitQueue
commitQueue
TheCommitQueue
for transferring commits from an extractor to an analyzer.protected boolean
isReady
protected Logger
logger
The logger for displaying messages on the console.protected java.lang.String
operatingSystem
The name of the operating system on which the tool is currently executed.protected java.lang.String
outputDirectory
The string defining the output directory in which extracted commits or analysis results will be saved.protected java.lang.String
plugInClassName
The fully-qualified class name of the desired extractor or analyzer (plug-in).protected java.util.Properties
properties
The properties determining the extraction or analysis process, e.g., the fully-qualified class name of the respective plug-ins to use, or the path to the directory, in which extracted commits and analysis results shall be saved.protected java.lang.String
versionControlSystem
The name of the version control system from which the commits are extracted.
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractManager(java.lang.String operatingSystem, java.lang.String versionControlSystem, java.util.Properties properties, CommitQueue commitQueue)
Constructs an abstract manager.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract boolean
go()
Starts the extraction or analysis process using the properties given during construction of this object.protected boolean
isReady()
boolean
noErrors()
Returns whether errors occurred during extraction or analysis (false
) or not (true
).void
run()
protected abstract boolean
setup()
Performs the necessary setup and configuration of this manager before it is ready torun()
.-
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, suspend, toString, yield
-
-
-
-
Field Detail
-
logger
protected Logger logger
The logger for displaying messages on the console.
-
operatingSystem
protected java.lang.String operatingSystem
The name of the operating system on which the tool is currently executed.
-
versionControlSystem
protected java.lang.String versionControlSystem
The name of the version control system from which the commits are extracted.
-
plugInClassName
protected java.lang.String plugInClassName
The fully-qualified class name of the desired extractor or analyzer (plug-in). The default value isnull
, which should be changed by the specific managers based on their respective properties.
-
properties
protected java.util.Properties properties
The properties determining the extraction or analysis process, e.g., the fully-qualified class name of the respective plug-ins to use, or the path to the directory, in which extracted commits and analysis results shall be saved. This properties object contains all properties defined in the properties file, which start with the prefix:- "extraction." for extraction properties and
- "analysis." for analysis properties
-
commitQueue
protected CommitQueue commitQueue
TheCommitQueue
for transferring commits from an extractor to an analyzer.
-
outputDirectory
protected java.lang.String outputDirectory
The string defining the output directory in which extracted commits or analysis results will be saved. The default value isnull
, which should avoid saving commits or results to a file. This is changed in accordance to the respective properties if they are defined.
-
isReady
protected boolean isReady
-
-
Constructor Detail
-
AbstractManager
protected AbstractManager(java.lang.String operatingSystem, java.lang.String versionControlSystem, java.util.Properties properties, CommitQueue commitQueue)
Constructs an abstract manager.- Parameters:
operatingSystem
- the name of the operating system on which the tool is currently executedversionControlSystem
- the name of the version control system from which the commits are extractedproperties
- the properties of the properties file determining the particular process and the configuration of the specific plug-in to usecommitQueue
- theCommitQueue
for transferring commits from an extractor to an analyzer
-
-
Method Detail
-
run
public void run()
- Specified by:
run
in interfacejava.lang.Runnable
- Overrides:
run
in classjava.lang.Thread
-
noErrors
public boolean noErrors()
Returns whether errors occurred during extraction or analysis (false
) or not (true
).- Returns:
true
if no errors occurred;false
otherwise
-
isReady
protected boolean isReady()
Returns whether this manager is ready torun()
(true
) or not (false
). If the values isfalse
run()
will do nothing. Executing this method will change the value if setting up and configuring the manager was successful.- Returns:
true
if this manager is ready for execution;false
otherwise
-
setup
protected abstract boolean setup()
Performs the necessary setup and configuration of this manager before it is ready torun()
.- Returns:
true
this manager is ready for execution;false
otherwise
-
go
protected abstract boolean go()
Starts the extraction or analysis process using the properties given during construction of this object. Note that method is only called ifsetup()
returnedtrue
.- Returns:
true
if the extraction or analysis process was successful;false
otherwise
-
-


Class OptionsTargetContainerExtensions
Contains extension methods for getting and setting container options which are used to control the behaviour, chiefly, of the various well-known ITargetContainer implementations.
Inherited Members
Namespace: Rezolver
Assembly: Rezolver.dll
Syntax
public static class OptionsTargetContainerExtensions
Remarks
Options are different to target container behaviours (ITargetContainerConfig) in that options are actively read by the various ITargetContainer-related types throughout the Rezolver framework to control how certain standard functionality operates.
The ITargetContainerConfig, however, can be used both to configure those options and to add extra registrations (both ITarget and, more commonly, other ITargetContainers via the RegisterContainer(Type, ITargetContainer) method).
The automatic building of IEnumerable<T> sequences from all the targets registered for a type, for example, is enabled by attaching the InjectEnumerables to the target container. Whereas, the ability to actually register more than one target for a particular service in the first place is controlled by the AllowMultiple option.
Types of options
Ultimately an option can be of any type, but most of the built-in options use the ContainerOption<TOption> type to wrap simple types (Boolean, String, Int32 and so on) as a human-readably named type that differentiates that option from others of the same underlying value type. Note that the phrase 'value type' there doesn't mean that all options must be literal value types (i.e. ValueType).
Rezolver has several built-in option types - including AllowMultiple, EnableEnumerableInjection, EnableContravariance plus many more. These use the ContainerOption<TOption> type to enable reading and writing simple boolean-like option values which switch behaviour on and off.
In addition, the ConstructorTarget and GenericConstructorTarget classes use the options API to discover IMemberBindingBehaviour objects to use when deciding whether to bind properties and/or fields when creating new objects.
So you really can use anything you want as an option.
Methods
| Improve this Doc View SourceGetOption<TOption>(ITargetContainer, TOption)
Gets a globally-defined option of the type TOption
from the targets
target container,
returning the default
if the option has not been explicitly set.
Declaration
public static TOption GetOption<TOption>(this ITargetContainer targets, TOption default = null)
where TOption : class
Parameters
| Type | Name | Description |
|---|---|---|
| ITargetContainer | targets | Required. The target container from which the option is to be read. |
| TOption | default | The default value to return if the option has not been set. |
Returns
| Type | Description |
|---|---|
| TOption | An option value which was either previously set, or the |
Type Parameters
| Name | Description |
|---|---|
| TOption | The type of option to retrieve |
GetOption<TOption>(ITargetContainer, Type, TOption)
Gets an option either specific to the serviceType
, or a global option (if EnableGlobalOptions is
enabled), of the type TOption
from the targets
target container, returning the default
if the option has not been explicitly set.
Declaration
public static TOption GetOption<TOption>(this ITargetContainer targets, Type serviceType, TOption default = null)
where TOption : class
Parameters
| Type | Name | Description |
|---|---|---|
| ITargetContainer | targets | Required. The target container from which the option is to be read. |
| Type | serviceType | A type for which the option is to be retrieved. Note that the default behaviour is to search for an option which is specific to this service, and then to search for more generally-defined options. See the remarks section for more. |
| TOption | default | The default value to return if the option has not been set. |
Returns
| Type | Description |
|---|---|
| TOption | An option value which was either previously set, or the |
Type Parameters
| Name | Description |
|---|---|
| TOption | The type of option to retrieve |
Remarks
Options are frequently used to control how a Rezolver container interprets registrations. Take, for example, the AllowMultiple option - which is used to control whether a target container accepts multiple registrations for a given type.
When defined globally (i.e. without a service type) it determines whether multiple registrations can be performed for all types. However,
it can also be defined on a per-service basis - so, for example, if you want to restrict an application only to register one target for a
particular service - e.g. IMyApplication
- then you can set the AllowMultiple option to false
specifically against
that type, and multiple registrations will result in a runtime error.
When searching for service-specific options, generics are automatically processed in descending order of specificity - i.e. IFoo<Bar>
is more specific than IFoo<>
- so you can set options for a specific closed generic, or its open generic.
Global Fallback
In the absence of a service-specific option, a globally-defined option will instead be used if the EnableGlobalOptions option
is set to true
for the targets
target container. By default, this is enabled.
GetOption<TOption, TService>(ITargetContainer, TOption)
Generic equivalent of GetOption<TOption>(ITargetContainer, Type, TOption). See documentation on that method for more.
Declaration
public static TOption GetOption<TOption, TService>(this ITargetContainer targets, TOption default = null)
where TOption : class
Parameters
| Type | Name | Description |
|---|---|---|
| ITargetContainer | targets | That target container from which the option is to be read. |
| TOption | default | The default value to be returned if the option is not set. |
Returns
| Type | Description |
|---|---|
| TOption | An option value which was either previously set, or the |
Type Parameters
| Name | Description |
|---|---|
| TOption | The type of option to retrieve |
| TService | The service type for which the option is to be retrieved |
GetOptions<TOption>(ITargetContainer)
Gets all globally-defined options of the type TOption
from the targets
target container,
returning an empty enumerable if none have been set.
Declaration
public static IEnumerable<TOption> GetOptions<TOption>(this ITargetContainer targets)
where TOption : class
Parameters
| Type | Name | Description |
|---|---|---|
| ITargetContainer | targets | Required. The target container from which the options are to be read. |
Returns
| Type | Description |
|---|---|
| IEnumerable<TOption> | An enumerable of the type |
Type Parameters
| Name | Description |
|---|---|
| TOption | The type of option to retrieve |
GetOptions<TOption>(ITargetContainer, Type)
Get all options of the type TOption
which have been set for the service type serviceType
or any of its derivatives. Globally-defined options will also be included in the results unless the EnableGlobalOptions
option has been set to false
on the targets
target container.
Declaration
public static IEnumerable<TOption> GetOptions<TOption>(this ITargetContainer targets, Type serviceType)
where TOption : class
Parameters
| Type | Name | Description |
|---|---|---|
| ITargetContainer | targets | Required. The target container from which the options are to be read. |
| Type | serviceType | Required. The service type for which options are to be retrieved. |
Returns
| Type | Description |
|---|---|
| IEnumerable<TOption> | An enumerable of the type |
Type Parameters
| Name | Description |
|---|---|
| TOption | The type of option to be retrieved |
GetOptions<TOption, TService>(ITargetContainer)
Generic version of the GetOptions<TOption>(ITargetContainer, Type) method. See the documentation on that method for more.
Declaration
public static IEnumerable<TOption> GetOptions<TOption, TService>(this ITargetContainer targets)
where TOption : class
Parameters
| Type | Name | Description |
|---|---|---|
| ITargetContainer | targets | Required. The target container from which the options are to be read. |
Returns
| Type | Description |
|---|---|
| IEnumerable<TOption> | An enumerable of the type |
Type Parameters
| Name | Description |
|---|---|
| TOption | The type of option to be retrieved |
| TService | The service type for which options are to be retrieved. |
SetOption<TOption>(ITargetContainer, TOption)
Sets the passed option
into the targets
target container.
The value can later be retrieved through a call to GetOption<TOption>(ITargetContainer, TOption) or one of its overloads.
Declaration
public static ITargetContainer SetOption<TOption>(this ITargetContainer targets, TOption option)
where TOption : class
Parameters
| Type | Name | Description |
|---|---|---|
| ITargetContainer | targets | The target container into which the option will be set. |
| TOption | option | The option value to be set |
Returns
| Type | Description |
|---|---|
| ITargetContainer | The target container on which the method is called, to enable method chaining. |
Type Parameters
| Name | Description |
|---|---|
| TOption | The type of option to be set. |
SetOption<TOption>(ITargetContainer, TOption, Type)
Sets the passed option
into the targets
target container, associating
it with the given serviceType
.
The value can later be retrieved through a call to GetOption<TOption, TService>(ITargetContainer, TOption) or GetOption<TOption>(ITargetContainer, Type, TOption), passing the same type, or a derived type.
Declaration
public static ITargetContainer SetOption<TOption>(this ITargetContainer targets, TOption option, Type serviceType)
where TOption : class
Parameters
| Type | Name | Description |
|---|---|---|
| ITargetContainer | targets | The target container into which the option will be set. |
| TOption | option | The option value to be set |
| Type | serviceType | The type against which the option is to be set. It's called 'serviceType' because the majority
of the time, you will used this method and its generic overload to customise behaviour for specific types. If |
Returns
| Type | Description |
|---|---|
| ITargetContainer | The target container on which the method is called, to enable method chaining. |
Type Parameters
| Name | Description |
|---|---|
| TOption | The type of option to be set. |
SetOption<TOption, TService>(ITargetContainer, TOption)
Sets the passed option
into the targets
target container, associating
it with the given TService
.
The value can later be retrieved through a call to GetOption<TOption, TService>(ITargetContainer, TOption) or GetOption<TOption>(ITargetContainer, Type, TOption), passing the same type, or a derived type.
Declaration
public static ITargetContainer SetOption<TOption, TService>(this ITargetContainer targets, TOption option)
where TOption : class
Parameters
| Type | Name | Description |
|---|---|---|
| ITargetContainer | targets | The target container into which the option will be set. |
| TOption | option | The option value to be set |
Returns
| Type | Description |
|---|---|
| ITargetContainer | The target container on which the method is called, to enable method chaining. |
Type Parameters
| Name | Description |
|---|---|
| TOption | The type of option to be set. |
| TService | The type against which the option is to be set. |


Linux Kernel Version: {{ kernel }} {% if kernel_exploits|length > 0 %} Outdated Kernel {% endif %}
Open Ports: {% for port in open_ports %} {{ port }} {% endfor %}
Found unusual processes running as root:
{% for p in root_processes %}{{ p }}
{% endfor %}Create users for these processes to avoid privilege escalation attacks
No unusual processes running as root
Found binaries that can be useful for hackers to gain shell access:
{% for bin in useful_bins %}{{ bin }}
{% endfor %}Consider removing these if they are not needed
No binaries found that can be useful for hackers
Serial ports open:
{% for p in serial_ports %}{{ p }}
{% endfor %}Consider removing these if they are not needed
No serial ports found that are open
| # | Component | CVE | Exploit name | Severity |
|---|---|---|---|---|
| {{ loop.index }} | {{ cve.service }} {{ cve.service_version }} | {{ cve.cve }} | {{ cve.name }} | {{ cve.severity }} |


14.7. Kafka Index Configuration¶
GeoMesa exposes a variety of configuration options that can be used to customize and optimize a given installation. Because a Kafka data store maintains an in-memory cache of features, most of these options can be configured on a consumer data store and take immediate effect.
14.7.1. Initial Load (Replay)¶
By default, a Kafka consumer data store will start consuming from the end of a topic. This means that it will
only see new updates that are written after it has spun up. Optionally, the consumer may start from the beginning
of the topic, by setting kafka.consumer.from-beginning
to true
in the data store parameters. This
allows a consumer to replay old messages and establish a baseline state. Note that a feature store will not return
any query results during this initial load, until it has caught up to head state.
Also see Kafka Topic Compaction for details on managing the size and history of the Kafka topic.
14.7.2. Feature Expiration¶
Generally, a Kafka consumer data store will keep any features that are written by a producer data store,
until they are explicitly deleted by the producer using a modifying feature writer. Optionally, a consumer
data store may expire features after a certain timeout, by specifying the kafka.cache.expiry
data store
parameter. When a producer writes an update to an existing feature, the consumer will reset the expiration timeout.
Once the timeout is hit without any updates, the feature will be removed from the consumer cache and will no
longer be returned when querying.
14.7.3. Feature Event Time¶
By default, expiration and updates are determined by Kafka message time. Feature updates will replace any prior feature message, and feature will expire based on when they were read. Alternatively, one or both of these values may be based on feature attributes.
To enable event time, specify a property name or CQL expression using the kafka.cache.event-time
data store
parameter. This expression will be evaluated on a per-feature basis, and must evaluate to either a date or a
number representing milliseconds since the Java epoch. This value will be combined with the kafka.cache.expiry
value to set an expiration time for the feature.
To also enable event time ordering, set the kafka.cache.event-time.ordering
data store parameter to true
.
When enabled, if a feature update is read that has an older event time than the current feature, the message
will be discarded. This can be useful for handling irregular update streams.
14.7.4. Spatial Index Resolution¶
The Kafka consumer data store uses an in-memory spatial index for querying. The spatial index breaks the world up
into a coarse grid, and then only examines the relevant grid cells when running a spatial query. The grid size
can be modified by setting the kafka.index.resolution.x
and/or kafka.index.resolution.y
data
store parameters. By default, the grid is 360 by 180 cells. Increasing the grid resolution may reduce the
number of false-positive features that must be considered when querying, and can reduce contention between
simultaneous updates, deletes and queries. However, it also requires more memory.
14.7.5. Spatial Index Tiering¶
For geometries with extents (i.e. non-points), the Kafka consumer data store uses a tiered in-memory spatial index
for querying. Geometries are stored in a tier based on their envelope size. The number and size (in degrees) of
tiers can be modified by setting the kafka.index.tiers
data store parameter. By default, four tiers are created
of sizes 1x1
, 4x4
, 32x32
and 360x180
. In general, you want the tiers to correspond to the size
of the geometries you are indexing. Geometries which are larger than any of the available tiers will not be
indexable; thus it is standard to include a ‘catch-all’ tier that encompases the whole world.
Tiers may be specified by comma-separated pairs of numbers, where each pair is separated with a :
. For example,
the default tiers would be specified as 1:1,4:4,32:32,360:180
.
14.7.6. CQEngine Indexing¶
By default, a Kafka consumer data store only creates a spatial index. Any other queries (for example, date queries) will have to iterate over all the features in the index. Generally the number of features is reasonable, and this is still a fast operation.
For more advanced use-cases, additional in-memory index structures can be created to satisfy non-spatial queries.
This can be enabled by setting the kafka.index.cqengine
data store parameter. The value should
be a comma-delimited list of name:type
, where name is an attribute name and type is a CQEngine index
type. See In-Memory Indexing for more information. Note that when using CQEngine, the default geometry will
not be indexed without an explicit configuration (e.g. geom:geometry
in the parameter value). In addition,
CQEngine may require more processing than the standard index.
As an example, consider the schema name:String,age:Int,dtg:Date,*geom:Point:srid=4326
. To create an index
on each attribute, you could set kafka.index.cqengine
to
name:radix,age:default,dtg:navigable,geom:geometry
. See In-Memory Indexing for an explanation of the
index types.
14.7.7. Lazy Deserialization¶
By default, a Kafka consumer data store will use lazy (on-demand) deserialization of feature attributes. For
rendering maps (which usually only require the geometry attribute) or for write-heavy workflows, this can avoid
the overhead of deserializing and instantiating attributes that may never be read. If writes are infrequent, or
all features and attributes are consistently read, then lazy deserialization can be disabled by setting the
kafka.serialization.lazy
data store parameter to false
. Lazy deserialization incurs a very small
runtime (query) penalty, as each attribute has to be checked for deserialization before being returned.


 It is written in VanillaJS and with high performance in mind.
Simply add the JS to your website and put the class
lazyload
to all elements, which should be lazy loaded. For a short API description go to the readme.md.
automatic sizes feature: In case of lazy loading images the sizes
attribute of the img
/source
elements can be calculated with JS.
This automatic sizes feature is directly included in lazySizes. Simply use the keyword auto
inside of the data-sizes
attributes (data-sizes="auto"
).
Important: How sizes
is calculated: The automatic sizes calculation takes the width of the image if it is over 40
(see also minSize
option). In case it's below the minSize
threshold, it traverses up the DOM tree until it finds a parent which is over 40
and uses this number. Often the following general CSS rule might help: img[data-sizes="auto"] { display: block; }
.
For responsive images support you must use either use a full polyfill like picturefill or use the extreme lightweight partial respimg polyfill plugin or use the Responsive Images as a Service extension.
While other lazy loaders or responsive images solution need to be called, if new elements are added to the DOM or do become visible through a special user interaction or a JavaScript behavior.
LazySizes does automatically detect any changes to the DOM and the visibility of .lazyload
elements.


Use commas to compare multiple terms (max 5)
Adjustments
Each data point is adjusted to account for HN's growth. The
adjustment factor is the difference between the most recent quarter's
total items (submissions + comments) and the total items in the point's
quarter.
So, for example, Q1 2007 had 7,683 total items and Q1 2011 had 311,190
total items. The adjustment factor for data points in Q1 2007 is 40.5
(until Q2 2011 begins, at which point it changes).
A big thanks to retube
for the adjustment scheme.
The actual number of mentions is included with each point for
reference purposes.
Tech
This little ditty wouldn't be possible without a handful of awesome
open source projects, including:
CoffeeScript, Node.js, Redis, jQuery, and Highcharts
Hosting
The site is proudly hosted on Heroku's Cedar Stack with the Redis To Go
add-on.


#include <db.h>int lock_open(const char *dir, u_int32_t flags, int mode, DB_ENV *dbenv, DB_LOCKTAB **regionp);
The dir pathname argument is interpreted as described in Berkeley DB File Naming.
The flags and mode arguments specify how files will be opened and/or created if they do not already exist. The flags value is specified by logically OR'ing together one or more of the following values:
All files created by the lock subsystem are created with mode mode (as described in chmod(2)) and modified by the process' umask value at the time of creation (see umask(2)))). The group ownership of created files is based on the system and directory defaults, and is not further specified by Berkeley DB.
The locking subsystem is configured based on the dbenv argument to lock_open which is a pointer to a structure of type DB_ENV. Applications normally use the same DB_ENV structure (initialized by db_appinit) as an argument to all of the subsystems in the Berkeley DB package.
References to the DB_ENV structure are maintained by Berkeley DB, so it may not be discarded until the last close function, corresponding to an open function for which it was an argument, has returned. To ensure compatibility with future releases of Berkeley DB, all fields of the DB_ENV structure that are not explicitly set should be initialized to 0 before the first time the structure is used. Do this by declaring the structure external or static, or by calling one of the C library routines bzero(3) or memset(3).
The fields of the DB_ENV structure used by lock_open are described below. If dbenv is NULL or any of its fields are set to 0, defaults appropriate for the system are used where possible.
The following fields in the DB_ENV structure may be initialized before calling lock_open:
lk_conflicts[requested_mode][held_mode]
indicates that requested_mode and held_mode conflict.
The not-granted mode must be represented by 0.
If lk_conflicts is NULL, the conflicts array
db_rw_conflicts is used; see Standard Lock Modes for a description of that array.
The lock_open function returns the value of errno on failure, and 0 on success.
The lock_open function may fail and return errno for any of the errors specified for the following Berkeley DB and C library functions: abort(3), close(3), db_version, fcntl(3), fflush(3), fprintf(3), free(3), fstat(3), fsync(3), getenv(3), getpid(3), getuid(3), isdigit(3), lock_unlink, lseek(3), malloc(3), memcpy(3), memset(3), mmap(3), munmap(3), open(3), pstat_getdynamic(3), read(3), shmat(3), shmctl(3), shmdt(3), sigfillset(3), sigprocmask(3), stat(3), strerror(3), strlen(3), sysconf(3), unlink(3), vfprintf(3), vsnprintf(3), and write(3).
In addition, the lock_open function may fail and return errno for the following conditions:
The DB_THREAD flag was specified and spinlocks are not implemented for this architecture.


/*
This file is part of Ext JS 4
Copyright (c) 2011 Sencha Inc
Contact: http://www.sencha.com/contact
Commercial Usage
Licensees holding valid commercial licenses may use this file in accordance with the Commercial Software License Agreement provided with the Software or, alternatively, in accordance with the terms contained in a written agreement between you and Sencha.
If you are unsure which license is appropriate for your use, please contact the sales department at http://www.sencha.com/contact.
*/
/**
* @class Ext.form.action.DirectSubmit
* @extends Ext.form.action.Submit
*
Provides Ext.direct support for submitting form data.

*
This example illustrates usage of Ext.direct.Direct to submit a form through Ext.Direct.

*

var myFormPanel = new Ext.form.Panel({
// configs for FormPanel
title: 'Basic Information',
renderTo: document.body,
width: 300, height: 160,
padding: 10,
buttons:[{
text: 'Submit',
handler: function(){
myFormPanel.getForm().submit({
params: {
foo: 'bar',
uid: 34
}
});
}
}],
// configs apply to child items
defaults: {anchor: '100%'},
defaultType: 'textfield',
items: [{
fieldLabel: 'Name',
name: 'name'
},{
fieldLabel: 'Email',
name: 'email'
},{
fieldLabel: 'Company',
name: 'company'
}],
// configs for BasicForm
api: {
// The server-side method to call for load() requests
load: Profile.getBasicInfo,
// The server-side must mark the submit handler as a 'formHandler'
submit: Profile.updateBasicInfo
},
// specify the order for the passed params
paramOrder: ['uid', 'foo']
});
*

* The data packet sent to the server will resemble something like:
*

{
"action":"Profile","method":"updateBasicInfo","type":"rpc","tid":"6",
"result":{
"success":true,
"id":{
"extAction":"Profile","extMethod":"updateBasicInfo",
"extType":"rpc","extTID":"6","extUpload":"false",
"name":"Aaron Conran","email":"aaron@sencha.com","company":"Sencha Inc."
}
}
}
*

* The form will process a data packet returned by the server that is similar
* to the following:
*

// sample success packet (batched requests)
[
{
"action":"Profile","method":"updateBasicInfo","type":"rpc","tid":3,
"result":{
"success":true
}
}
]
// sample failure packet (one request)
{
"action":"Profile","method":"updateBasicInfo","type":"rpc","tid":"6",
"result":{
"errors":{
"email":"already taken"
},
"success":false,
"foo":"bar"
}
}
*

* Also see the discussion in {@link Ext.form.action.DirectLoad}.
*/
Ext.define('Ext.form.action.DirectSubmit', {
extend:'Ext.form.action.Submit',
requires: ['Ext.direct.Manager'],
alternateClassName: 'Ext.form.Action.DirectSubmit',
alias: 'formaction.directsubmit',
type: 'directsubmit',
doSubmit: function() {
var me = this,
callback = Ext.Function.bind(me.onSuccess, me),
formEl = me.buildForm();
me.form.api.submit(formEl, callback, me);
Ext.removeNode(formEl);
},
// Direct actions have already been processed and therefore
// we can directly set the result; Direct Actions do not have
// a this.response property.
processResponse: function(result) {
return (this.result = result);
},
onSuccess: function(response, trans) {
if (trans.type === Ext.direct.Manager.self.exceptions.SERVER) {
response = {};
}
this.callParent([response]);
}
});


[gecode-users] Some Feedback on GecodeJ
andrew cooke
andrew at acooke.org
Sun Sep 14 18:27:48 CEST 2008
Hi,
I've been trying out GecodeJ and have a few suggestions. To set this in
context, I am a software engineer. I don't have any CompSci related
qualification, but I earn a living programming in Java. And these
comments are mainly related to making this software easier to use by
people like me (so it's all about conventions and accessibility).
First, doxygen is cool, but Javadoc is the standard. The first thing I
(or any other engineer) does when assessing a package is look at the
JavaDocs. I've looked at hundreds, maybe thousands of them. It's got to
the point where my subconscious expects that format; where I can get an
immediate intuitive grasp of the system by clicking around without (much)
conscious thought. You broke that.
And if I try to generate Javadoc myself I get a pile of doxygen markup
junk in the text.
I'm serious here. You might think it's a silly point, but this is a basic
user interface issue. By using doxygen rather than javadoc you're doing
the equivalent of making a web page with Flash - looks great, but noone
can use it without pain.
And it's not just my subconscious. When I start writing code in Eclipse
(or IntelliJ), and use the IDE context-sensitive help, I see the doxygen
markup again. Why couldn't you have used HTML (which the IDEs can
handle)? Sure some of the maths might look a little less pretty, but it
would be one heck more usable.
Again, this makes things less usable. You may be cool dudes that use
Emacs, but you're in a tiny minority (heck, when I switched, years ago, I
was in a minority even then).
OK, end of Javadoc rant. A couple more things.
- Static import functions scare the cattle. Sure, you want FP in Java and
using static imports are like functions (woot). But Java isn't FP and
you're going to confuse old folks (you threw me). Especially when the
majority of the calls (I'm talking about calling Gecode.* methods from
within a Space) take a first argument of "this" (have you made a wrong
term somewhere and ended up in Python land?!). Why aren't these methods
in some subclass of Space?
- You provide Iterator<> access to search results (neat), but I can't see
an Iterable<> (I may have missed this). In general, prefer Iterable<> to
Iterator<> where possible (despite the extra work on your part) because it
fits in better with the "for ( : )" syntax:
for (Foo foo: foos) { ...foo... }
rather than
while (foos.hasNext()) { ...foos.next()... }
- There seems to be something a bit odd with requiring a copy constructor
in subclasses of Space. Couldn't you make the type be something like
Space<C extends Space<C>> and then have an abstract method that returns C?
(called clone or copy or whatever you haven't already used). Having a
(poorly documented - by defn, since there are no Javadocs...) constructor
convention that uses ideas from C++ ("copy constructor" is not a Java
idiom) isn't a great idea.
Apologies if I've missed something that explains any of the above - I'm
still very much feeling my way around.
OK, that's all.
This looks like a really cool package. Thanks for providing it. Oh, also
- some better documentation would help (if nothing else, pointing people
to the excellent chapter 2 of Christian Schulte's thesis would help)!
I guess this looks like one big moan, but this is a really useful piece of
software and I am only trying to suggest things that might help make it
more popular...
Cheers + thanks again,
Andrew
More information about the gecode-users
mailing list


This is an inline span Hello World element inside a paragraph.
The SPAN element is an inline element, and will not start on a new line and only takes up as much width as necessary.


Eth messaging
Send message
Receiver:
Message:
Send as anonymous
Send message
Import private key
Received messages
New message
Import private key
Use the private key related to the connected account provided in the README.md. Do not set your personal Ethereum private key.


Git Fetcher
Minimum Followers:
Maximum Followers:
Most Starred
Most Followed On Github
Done By
Unnikrishnan N P


FitHub
Home
FAQ's
Can I Sign up if I am below 18 years?
No. You need to be 18+ to Sign up
Will it always be free?
No. We are coming up with our subscription plans soon
Support
Create user account and login
Step 1. Click on create account button
Step 2. Fill out the onformation and click continue
Step 3. Click OK on pop up
Step 4. You will be redirected to the home page
Step 5. Click on Login button
Step 6. Fill out credentials and click login
Step 7. You will be redirected to the profile pge
Find a buddy
Step 1. Log in
Step 2. Click on "Find a buddy"
Step 3. Click on "Search Filters"
Step 4. Select desired filters and click on "Search"
Step 5. Click on Dumbell icon to view user's profile
Step 6. Click on Tick to send workout Request and Cross to view next profile


Consuming REST-based Web Services (XAM150)
Users expect to access their information anytime from any location using any device. This leads most app developers to store data in the cloud and retrieve it as needed from client devices. REST-based web services are the dominant strategy for this type of device-to-server communication. In this course, you will see how to consume REST-based web services with HttpClient using both the managed networking stack and the platform-specific handlers that boost performance. You will also learn some common strategies for dealing with the unique challenges that mobile devices face when communicating over the network.
Upon completion you will be able to:
- Obtain the device's network capabilities
- Describe the strengths of using REST-based services
- Consume REST services in Xamarin-based applications
- Leverage the platform-specific networking stacks
Course exercise download
Exercise materials are available from GitHub. The code can be cloned through a desktop Git client or downloaded directly as a ZIP file.
If you are using Windows, try to select a location with a shorter path length to make sure you don't exceed the 260 character limit.
Lecture
Here are the lecture slides.
Exercises
-
Exercise 1: Determine the network connectivity
The primary goal of this lab will be to create a new Xamarin.Forms application and utilize the Xam.Plugin.Connectivity component to detect the network availability and state. You will display the current network status on two pages as shown in the screenshots below.
-
Exercise 2: Communicate with a book service
In this exercise you will extend a provided Xamarin.Forms application to work with an existing REST service which manages a library of books. You will authenticate with the service, retrieve existing books, add new books, update books and delete books from your bookshelf.
-
Exercise 3: Use the native platform network stack
In this final exercise, we will modify the bookshelf client to use the native platform's networking stack to improve the performance of the network activity and allow us to integrate tighter to the platform. You can either continue from the prior exercise, or use the completed project from the prior exercise if you'd like to start fresh.


In this demo you will go through the steps required to configure auto-scaling in a Microsoft Azure Web App and demostrate this feature using a Visual Studio Load test. Additionally, you will see how to scale a site using Azure Storage.
In this demo, you will see how to:
Follow these steps to setup your environment for the demo.
Create a Azure Storage account (e.g. geekquiz), create a blob container named images and upload the logo-big.png image located inside the source\assets folder.
Open the GeekQuiz.sln solution located under the source\end folder. Find the <system.webServer>
element in the web.config file located in wwwroot and change the url of the Redirect action using the Azure Storage account you have just created.
Updating the Rewrite Rule
Open the GeekQuiz.sln solution located under the source\end folder in Visual Studio and publish it to a new (free) Azure Web App. In the Create App Service dialog box, select an existing Database server or create a new one.
Create App Service dialog box
Note: Make sure to update the ConnectionString value located in the appsettings.json file with the connection string of your database before deploying.
Register a new user account.
Open the StressGeekQuiz.sln solution located under source\end.
In the Solution Explorer, double-click WebTest1.webtest.
Select the http://geekquizdemo.azurewebsites.net node, as shown in the following figure.
Selecting the Loop child node
In the Properties window, update the Url field to point to the site you just created.
Changing the Url
Save all files and close the solution.
This demo is composed of the following segments:
Open the Azure Portal and log in with your credentials.
Select the App Services tab and filter the list by your site name.
Filtering App Services
Click the app service where you deployed GeekQuiz during the setup steps.
Open the App Service Plan blade.
Opening the App Service Plan blade
Openning
Opening the App Service Plan blade
Change the web app's pricing tier to S1 Standard.
Changing the pricing tier
Show that there is only one instance.
Showing that there is only one instance
Select the CPU Percentage metric for scaling.
Selecting the CPU Percentage metric for scaling
Change the Instances to 1-3 and Target range to 5-25.
Changing the CPU Percentage
Speaking point: Explain that this is done as we cannot ensure that a bigger load is generated with VS.
Save the changes.
Note: Don't close the management portal.
Open the StressGeekQuiz.sln solution located under source\end.
In the Solution Explorer, double-click LoadTest1.loadtest.
Run the load test.
Running the load test
Open a new instance of Visual Studio.
Speaking point: Let's take a look at how that solution can be built.
Open the New Project dialog.
Select Test in the templates tree, and select Web Performance and Load Test project.
Creating the new load test project
Click OK.
Right-click WebTest1 and select Add Request.
Adding a request
Select the new node.
In the Properties window, update the Url field to point to the Azure web app.
Changing the Url property
Right-click WebTest1 and select Add Loop....
Adding a loop
Select the For Loop rule.
Selecting the For Loop
Update the following values:
Increment Value: 1.
Updating the configuration values
Select the GeekQuiz request as the first and last item of the loop.
Selecting the items for the loop
Click OK.
In the Solution Explorer, right-click the WebAndLoadTestProject1 project, expand the Add menu and select Load Test.... A wizard will start.
Adding a Load Test
In the New Load Test Wizard dialog, click Next.
Select Do not use think times and click Next.
Selecting not to use Think times
Change the User Count to 250 users and click Next.
Changing the user count
Select Based on sequential test order and click Next.
Selecting the test mix model
Click Add....
Double-click Web Test 1 and click OK.
Adding the test
Click Next.
In the Network Mix page, click Next.
Select Internet Explorer 11.0 as the browser type and click Next.
Selecting the Browser Type
In the Counter Sets page, click Next.
Set the load test duration to 10 minutes and click Finish.
Setting the load test duration
Close the current instance of Visual Studio.
Open Microsoft Edge.
Navigate to the image that you uploaded to Azure Storage during setup. For example, if the name of the storage account is geekquiz the URL for the image will be http://geekquiz.blob.core.windows.net/images/logo-big.png.
Showing the logo
Open the GeekQuilz.sln solution located under source\end.
Open the site's web.config file located at wwwroot for edition.
Find the <system.webServer>
element.
Highlight the URL rewrite rule as shown in the following figure.
Highlighting the Rewrite Rule
Back in Microsoft Edge, open the deployed GeekQuiz site (log in if necessary).
Showing the Geek Quiz website with the image
Press F12 to launch the development tools, select the Network tab and start recording.
Starting the network recording
Press CTRL + F5 to refresh the web page.
Once the page has finished loading, switch back to the development tools and show that the request for the image was redirected to Azure Storage.
Showing the redirect in Dev Tools
Back in the management portal, press CTRL + F5 to refresh the page.
Show that a new instance was automatically deployed.
Showing that the new instance
By completing this demo you should have:


Sweet systems
MAIN MENU
Dashboard
Charts
Reports
Tables
Profile
Settings
Password
Tasks
OPTIONS
Calendar
Messages
5
Help
Collapse
Loading...


An image of Saturn along with the rest of the planets in our Solar System
Saturns rings are what make the planet very interesting and quite unique. Scientists believe that the rings on Saturn were from pieces of comets, shattered moons, and asteroids that were torn apart before they reached the planet due to the immense gravitational pull. It is believed that Saturn's rings are made of billions of pieces of ice and rock caoted in dust. The sizes ranged from tiny dust particles to house sized rocks with very few being as big as mountains.
The rings appear to be mostly white and each ring has a different orbit with different speeds. The rings would extend up to 175,000 miles from the planet itself with the vertical height being about 30 feet inside the main rings. The rings are named alphabetically and are relatively close to eachother with an exception of the Cassini Division which has a gap of 2,920 miles and seperates rings A and B. The main rings are A, B, and C with D, E, F, and G being more faint and recently discovered. From Saturn going outwards the rings order by the D ring, C ring, B ring, the Cassini Division, A ring, F ring, G ring, and the E ring. There is an additional ring that orbits Phoebe, one of Saturns many moons.
Saturn's magnetic field is smaller than of Jupiter's; however, it is 578 times as powerful as Earth's. Everything including the rings and satellites are all within the magnetosphere. When charged particles spiral into a planet's atmosphere along the magnetic field lines, an Aurorae appears. For Earth, this happens because of the solar winds. However, for Saturn's Aurorae it doesn't seem to be affected by the solar winds, but instead, a combination of particles laucnhed from Saturn's moons and Saturn's magnetic field's rapid rotation rate.


Love Island's X Factor stars needed therapy to work through their trust issues
The group have been participating in numerous bonding exercises including being blindfolded and made to fall backwards
by Kelly AllenYou would have thought all that time in the Love Island villa might have brought the Celebrity X Factor group No Love Lost closer together.
Apparently not. Mentor Simon Cowell has sent Wes Nelson , Zara McDermott , Samira Mighty and Eyal Booker to therapy to work on their “trust issues” with each other.
“Simon called in professional therapists,” explains an insider.
“There are a few problems behind the scenes which need to be ironed out, and so the pros were involved who could address these issues and make them more of a unit.”
One bonding exercise involved the All or Nothing singers being blindfolded, falling backwards and trusting the others to catch them. But model and influencer Eyal, 24, denied a rift.
He revealed: “Despite us spending 16 hours together a day and writing our own tracks in the studio until after midnight, the show got us doing some bonding exercises.
“We found the whole thing hilarious. We didn’t think we could get any closer – but it goes to show we are the strongest we’ve ever been as a band.”
They need as much help as they can get. Bookmakers Coral have revealed No Love Lost are 2-1 to be given the chop.
Interviewer Martin Bashir is facing worse odds of 1-2, while TOWIE star Megan McKenna has odds of 50-1 she will be next to leave the ITV show.
Perhaps those falling exercises will help prepare the Love Islanders if they do crash out on Saturday.
Do you have a story to sell? Get in touch with us at<EMAIL_ADDRESS>or call us direct 0207 29 33033


|
MISA++ Core
1.0.0
MISA++ core library
|
#include <memory_cache.h>
Public Member Functions | |
| memory_cache ()=default | |
| memory_cache (Value value) | |
| Value & | get () override |
| const Value & | get () const override |
| void | set (Value value) override |
| bool | has () const override |
| bool | can_pull () const override |
| void | pull () override |
| void | stash () override |
| void | push () override |
| Public Member Functions inherited from misaxx::utils::cache< Value > | |
| cache ()=default | |
| virtual | ~cache () noexcept |
| cache (const cache< Value > &t_src)=delete | |
| cache (cache< Value > &&t_src) noexcept | |
| std::unique_lock< std::shared_mutex > | exclusive_lock () |
| std::shared_lock< std::shared_mutex > | shared_lock () |
| Value & | access () |
| void | try_stash () |
| void | try_stash (std::unique_lock< std::shared_mutex > existing_lock) |
| void | try_stash (std::shared_lock< std::shared_mutex > existing_lock) |
Additional Inherited Members | |
| Public Types inherited from misaxx::utils::cache< Value > | |
| using | value_type = Value |
Convenience class that caches a value in memory, but allows thread-safe interaction
| Value |
|
default |
|
inlineexplicit |
|
inlineoverridevirtual |
Returns true if the cache can pull data Not thread-safe!
Implements misaxx::utils::cache< Value >.
|
inlineoverridevirtual |
Gets the value. If it is not available, an exception is thrown. Not thread-safe!
Implements misaxx::utils::cache< Value >.
|
inlineoverridevirtual |
Gets the value. If it is not available, an exception is thrown. Not thread-safe!
Implements misaxx::utils::cache< Value >.
|
inlineoverridevirtual |
Returns true if the value is currently in memory Not thread-safe!
Implements misaxx::utils::cache< Value >.
|
inlineoverridevirtual |
Pulls the value into the memory Not thread-safe!
Implements misaxx::utils::cache< Value >.
|
inlineoverridevirtual |
Free the memory of the value and put it back into the permanent storage Please make sure that there is no other object accessing the data! Not thread-safe!
Implements misaxx::utils::cache< Value >.
|
inlineoverridevirtual |
Sets the value in this cache from memory Not thread-safe!
| value |
Implements misaxx::utils::cache< Value >.
|
inlineoverridevirtual |
Discard the current value and do not write it into the permanent storage Please make sure that there is no other object accessing the data! Not thread-safe!
Implements misaxx::utils::cache< Value >.


Vue Good Table
Demonstrations
Simple
A simple two-column table with click-sortable headers.
Not so simple
More columns, with filters, pagination, and line numbers.
Github


More of our man-made island
Our indoor lagoon
Our Founder and Inspiration: Jeffrey Epstein:
Home
Book Today!
See our other activities
Find out how to get here
View Our Accommodations


Gateway
BOT
29-Jul-18 03:25 AM
[telegram] <Henderson821> How many kmd do i need to get receive rewards?
[telegram] <Henderson821> Anyone?
[telegram] <Michael> A deposit of 10 I believe
[telegram] <Michael> Into agama wallet claim every month at least
[telegram] <Michael> Version 2.41
[telegram] <Henderson821> So if i have for example 10kmd in my MEW do i get it dropped there?
[telegram] <Michael> Interest collection or ChainZilla airdrop?
[telegram] <Henderson821> Sorry new to komodo... just looking for other projects
[telegram] <Michael> You have to hold it in agama wallet for interest, 5.1% annually
[telegram] <Henderson821> 5.1 annually?..ok...thanks..
[telegram] <Henderson821> Not that bad... comparing to regular stock portfolios.. 7 to 10% annually
[telegram] <Michael> Yep and that’s kmd token
[telegram] <Michael> So when price goes up
[telegram] <Michael> If your holding
[telegram] <Michael> You tech gain more money
[telegram] <Henderson821> Yep...
[telegram] <Regnar> Hey sign up here, we'd love to get your help! We post bounties for things we'd like done too. Spread the word too!
https://forum.komodoplatform.com/c/jobs-bounties/KIN (re @changemymindk: Idk. Have Taylor Swift say she accepts kmd at concerts )
(edited)
KOMODO INFLUENCERS NETWORK (KIN)
[telegram] <Regnar> Hey join here we definitely want more community involvement in marketing efforts!
https://forum.komodoplatform.com/c/jobs-bounties/KIN (re @CryptoMessiah4me: I guess the advertising budget is not enough. But the solution is simple. volunteers.. we create the pool to do advertising. (Pool wallet) Everyone send some kmd. ivan recognized kmd.)
(edited)
KOMODO INFLUENCERS NETWORK (KIN)
[telegram] <Regnar> Join here. I'm definitely spamming the channel with this link right now but am having a hard time tagging everyone from my phone haha
https://forum.komodoplatform.com/c/jobs-bounties/KIN (re @mo7881: Marketing fund sounds great - I can donate my 5% rewards)
(edited)
KOMODO INFLUENCERS NETWORK (KIN)
[telegram] <Regnar> Hey join our marketing efforts we can use all the help we can get.
https://forum.komodoplatform.com/c/jobs-bounties/KIN (re @akashshunya13: Komodo needs a dedicated marketing team to preach it's tech.)
(edited)
KOMODO INFLUENCERS NETWORK (KIN)
[telegram] <Regnar> Hey Digital, sent you the link in Discord, and posted it a bunch ^^^ but I'll post it in this tag too :P
https://forum.komodoplatform.com/c/jobs-bounties/KIN (re @Digital: That’s a great idea.
I would be willing to contribute some KMD to the cause as well.
A marketing fund?)
KOMODO INFLUENCERS NETWORK (KIN)
[telegram] <Beecata> Send me a komodo t-shirt. I'll help!
[telegram] <Beecata> Swapping atomics baby
[telegram] <Beecata> Where can I buy a komodo costume.
[telegram] <Beecata> Hand out coins
[telegram] <Regnar> EVERYONE This link is for everyone else in here. We are looking to build a community of people who can help with marketing efforts. Posting to social media, Create your own marketing ideas and bounties, perform translations, design GUIs, etc. and the cool part is you CAN GET PAID IN KOMODO!!!
just follow the guidelines in the posts and be rewarded. If you have a cool idea for a bounty that will help Komodo marketing, post it up! you could get rewarded!
So go sign up!
https://forum.komodoplatform.com/c/jobs-bounties/KIN
KOMODO INFLUENCERS NETWORK (KIN)
[telegram] <Regnar> haha I don't know of a place yet. (re @Beecata: Where can I buy a komodo costume.)
[telegram] <Beecata> I'll find one (re @Regnar: haha I don't know of a place yet.)
[telegram] <Beecata> I do need to buy more kmd though. I've seen what the project is aiming for. Crazy that the price is this low


The twenty-fifth National Conference on Communications (NCC 2019) will be held at the Indian Institute of Science (IISc), Bangalore, during 20-23 February 2019. The conference will feature three symposia in the following areas.
| COMMUNICATIONS | NETWORKS | SIGNAL PROCESSING |
|---|
Previously unpublished contributions from a broad range of topics in these areas are solicited, including (but not limited to) the following:
| Communication theory and systems | Next generation networks | Signal processing for communications |
| Information theory | Optical networks and systems | Image and video signal processing |
| Coding theory | Sensor networks | Multimedia applications |
| Wireless communications | Ad hoc networks | DSP algorithms and architectures |
| Optical communications | Wireless and wireline networks | Speech and audio processing |
| RF and microwave communications | Security | Biomedical applications |
| Satellite communications | Networks and services management | Language identification |
| Cognitive radio | Performance analysis | Machine learning, pattern analysis, and classification |
| Energy harvesting and green communications | Complex networks | Large dimensional signal processing |
| Machine learning for communications | Biological networks | Sparse signal processing |
| 5G and beyond communication systems | Cyber-physical systems/IoT | Graph signal processing |
| Quantum communications |
Researchers working in emerging fields of these areas are encouraged to submit their original findings. Submitted papers should be 5 pages in length in standard IEEE conference format and will be peer-reviewed by experts in the field. Detailed information on paper submission, technical program, accommodation, tutorials, and travel will be posted on the conference website: http://ece.iisc.ac.in/~ncc2019/.
First call for papers can be downloaded from here.
Paper submission deadline : 15 September 2018
Acceptance notification : 30 November 2018
Final paper submission : 30 December 2018
Conference dates : 20-23 February 2019
For more information about the conference, please visit http://ece.iisc.ac.in/~ncc2019/
Neelesh B. Mehta (IISc Bangalore)
A. Chockalingam (IISc Bangalore)
Chandra R. Murthy (IISc Bangalore)
Navin Kashyap (IISc Bangalore)
Dilip Krishnaswamy (Reliance Jio)


# Nock - Get Route Testing
```
test.cb('check artist id route', t => {
const artistObj = {
name: 'Izal',
type: 'artist'
}
let scope = nock('https://api.spotify.com')
.get('/v1/artists/2hazSY4Ef3aB9ATXW7F5w3')
.reply(200, artistObj)
request(app)
.get('/api/v1/spotify/artists/2hazSY4Ef3aB9ATXW7F5w3')
.expect(200)
.then((res) => {
scope.done()
t.is(res.body.name, 'Izal')
t.is(res.body.type, 'artist')
t.end()
})
})
```
When mocking a post route with Nock we first set up the mock route that is to be hit instead, configuring the post route and its response.
Once this is done we can attempt to hit our own post route API. What we are testing in this case is that the post route API works correctly and hits the external API that we are posting to.
### Example Code - Commented:
```
test.cb('check artist id route', t => {
const artistObj = {
name: 'Izal',
type: 'artist'
}
let scope = nock('https://api.spotify.com')
.get('/v1/artists/2hazSY4Ef3aB9ATXW7F5w3')
.reply(200, artistObj)
request(app)
.get('/api/v1/spotify/artists/2hazSY4Ef3aB9ATXW7F5w3')
.expect(200)
.then((res) => {
scope.done()
t.is(res.body.name, 'Izal')
t.is(res.body.type, 'artist')
t.end()
})
})
```
# Nock - Post Route Testing
```
test.cb('check createPlaylist post route', t => {
let scope = nock('https://api.spotify.com')
.post(`/v1/users/some_username/playlists`)
.reply(201, {test: "73a"})
let token = createToken({id: "some_username"}, app.get('JWT_SECRET'))
request(app)
.post('/api/v1/spotify/users/playlist')
.set('Cookie', `token=${token}`)
.then((result) => {
scope.done()
t.is(result.body.test, "73a")
t.end()
})
})
```
When mocking a post route with Nock we first set up the mock route that is to be hit instead, configuring the post route and its response.
Once this is done we can attempt to hit our own post route API. What we are testing in this case is that the post route API works correctly and hits the external API that we are posting to.
### Example Code - Commented:
```
test.cb('check createPlaylist post route', t => {
let scope = nock('https://api.spotify.com')
.post(`/v1/users/some_username/playlists`)
.reply(201, {test: "73a"})
// These three lines set up our mocked external API. This means that when our test function tries to hit api.spotify.com at the specified post route
// Nock will intercept it and reply with the status code and response object that we tell it to on the line above.
let token = createToken({id: "some_username"}, app.get('JWT_SECRET'))
// Because we are dealing with an authenticated route, this line will take care of creating an authentication token for us
// From now on we just test as we normally would with Supertest, save for the scope.done() which will hang if the API request does not complete.
request(app)
.post('/api/v1/spotify/users/playlist')
.set('Cookie', `token=${token}`)
.then((result) => {
scope.done()
t.is(result.body.test, "73a")
t.end()
})
})
```


It is possible for research group members to log in directly to the ADMIRAL Linux host and access the file system directly. Generally, this is not necessary and is of use only to those familiar with Linux commands. SCP can sometimes be used to read and write files in circumstances where other methods cannot be used, and has the advantage of being a very secure mechanism for remote file access. There are a small number of administrative tasks that depend on direct system access, though we plan to provide simple web interfaces for these tasks in due course.
Protocols used for direct access are:
Once logged in, a user will be able to read/write files in their own private area,
and also to read all files in the shared
and collab
areas.
For Windows there are several freely available tools, including:
MacOS has a built-in ssh
command for creating SSH sessions, which can be used thus from the Terminal
application:
ssh username@%{HOSTFULLNAME}(Finder can be used to find the
Terminal
application in directory Applications/Utilities
.)
It also provides a command-line SCP file copying command, which is used similarly:
scp username@%{HOSTFULLNAME}:/home/username/filename localfilename scp localfilename username@%{HOSTFULLNAME}:/home/username/filename
For SCP file copying, there is a shareware GUI application called Cyberduck (http://cyberduck.ch/). The name and logo image may seem a bit trite, but it is a reliable and easy-to-use application.
Linux has built-in commands ssh
and scp
which can be run from a terminal window.
Here are some examples of their use:
ssh username@%{HOSTFULLNAME} scp username@%{HOSTFULLNAME}:/home/username/filename localfilename scp localfilename username@%{HOSTFULLNAME}:/home/username/filename


Game Builder: Tips and Tricks (API v2)
Card memory or actor memory?
State can be stored in two places: actor memory or card memory. Actor memory is state that the actor as a whole remembers; card memory is state for a specific instance of a card.
You will normally want to store your state in card memory, since that means your variables won't get overwritten by other cards. If, however, you do want to share variables with other cards, you can use actor memory.
Card memory is accessible through the card global, like this:
export function onCollision() { // Only log this message once. if (!card.saidHi) { card.saidHi = true; log("Hi!"); } } export function onInit() { card.saidHi = false; }
The code above uses card memory to store a saidHi boolean to indicate whether or not we already printed "Hi!" to the console. Note that it resets it on onInit() too.
Initializing
You should always initialize any variables in card or actor memory before using them. The best place to do this is the onInit function.
The onInit function gets called on game reset, and also when your card has just been added to an actor.
export function onCollide() { // Increment a variable. card.hitCount++; } export function onInit() { // Reset variable. card.hitCount = 0; }
Note: if you want to do something only when the game is reset but not when the card is added, use onResetGame instead.
Creating UI
APIv2 introduces the ability to do basic screen-space UI.
The UI is drawn in "immediate mode" meaning that the UI elements don't have a permanent existence: they must be drawn on every tick.
Here is an example:
// Always use onLocalTick() for UI instead of onTick(): export function onLocalTick() { // Show the text "Hello world" at position 200,200: uiText(200, 200, "Hello world!"); }
A caveat is that in a multiplayer game UI code executes on everybody's machines, so you will draw the UI on everybody's screen. The onLocalTick function executes locally on each machine, so the UI you draw there will draw for everybody, which is normally what you want.
The coordinate system is based on a 1600x900 "virtual screen" that is overlaid on top of the user's screen. So coordinate (800,450) will always be the center of the screen, regardless of the actual resolution.
For more information, see uiText and uiRect.html.
Creating an Action card
So you want to create a new Action card that's compatible with the panel system? It's super easy. To do that, click any Action deck property (say, the "What do I do when I see the player" panel on a slime), which will create a new action card
Now, the only function you have to fill in is the onAction function, which gets called when the card is activated. Try this:
export function onAction() { setTintHex("#0000ff"); // blue } export function onInit() { setTintHex("#00ff00"); // green }
Now give your card a name (click on the card picture on the left to edit the name and description). Suggested name: Turn Blue. Suggested description: "Makes the actor turn blue".
Now stand in front of the slime, and it will turn blue. Reset the game and it will be green again.
If you save that card to the library, you can now use it on other objects too, wherever you'd normally use an action card.
Testing multiplayer games in single-player
If you are building a multiplayer game and you want to test it in single-player mode, you can use the console commands vpjoin, vpswitch and vpleave to simulate joining, switching or leaving your game.
- Bring up the console using the tilde (~) key.
- Type vpjoin. This will "join" the game as a second player.
- To switch between players 1 and 2 you can now type vpswitch 1 and vpswitch 2.
- Need more players? Use vpjoin again to add more!
- To test what happens if the player leaves, use vpleave.
How can I make all players be copies of the same template?
Tired of editing each of the players in a multiplayer game? You can make them all copies of the same template.
- Delete players 2, 3, 4, etc. Leave just player 1 (you).
- Go into the Player Controls panel for player 1.
- Enable Auto Assign and Auto Color.
- Now copy and paste Player 1 as many times as you want players (so make 3 copies for a 4-player game).
- Done! Now when someone joins your game they will inhabit one of those copies. Since they are copies, every change you make to Player 1 will auto propagate to the others.
How do I transfer the player between actors?
There is a new card called Transfer Player that you can use to transfer the player from one actor to another. For example, you could have a robot and a fox on your game and add an IF-THEN panel to the player saying that if the player presses Q, they switch from being the robot to being the fox.
- Set the Robot to be Player 1
- Set the Fox to be Player 2
- Add an IF-THEN panel to the Robot
- In the IF part add the Player Button card and set it to the desired button/key, for example Q
- In the THEN part add the Transfer Player card and set up its parameters to point to the fox.
Now if you press Q you should switch to the fox.
If you want to add a way to switch back, just add a similar IF-THEN to the fox.
(Advanced) What's the file format for the terrain?
So you want to generate terrain externally using your own tools? That's cool! Here is a quick description of our terrain file format. Note, however, that we reserve the right to change this format in future versions, so be aware that it can break!
Can I edit cards in an external IDE?
Yes. There is a (very experimental!) console command that will hot-load a given directory with JS files into Game Builder as cards. As you modify the JS and meta files in that directory, Game Builder will re-import them automatically. Check out these instructions..
How does multiplayer actually work?
Refer to this article for an overview of how multiplayer works in Game Builder "under the hood".


France Says to Summon Turkish Envoy After Erdogan's 'Insults'
France's Foreign Ministry will summon Turkey's ambassador following insulting comments made by President Recep Tayyip Erdogan, a French presidency official said on Friday.
Erdogan commented on Emmanuel Macron's warning that NATO was suffering from "brain death" saying that he should check whether he was not brain dead himself.
"I'm addressing Mr. Macron from Turkey and I will say it at NATO: You should check whether you are brain dead first," Erdogan said.
For his part the French official said: "On the latest excesses by the Turkish president, these are not statements, these are insults."
"We are expecting president Erdogan to clarify," he added, Reuters reported.


This example shows how you can use the events that ProgressBar fires.
We have created a ProgressBar and then set listeners for the events it fires. We have also provided a slider to make the ProgressBar change and so to fire those events. Leaving aside the code to set and respond to the Slider control, the code for the ProgressBar is:
We are instantiating the ProgressBar and configuring it so that the initial value is 127 which is halfway to the maximum we set of 255, starting from the default minimum of 0. The range is set so that they translate directly into color values. It will be animated, it will show its state using the text given in the template and it will do it right here: (you will see it change while the bar moves).
The ProgressBar uses the Animation utility so to configure it we have to fetch the instance the ProgressBar
uses and set its duration and easing method. We are using an animated ProgressBar with a long duration
so we can see the events firing, otherwise, it all happens too fast. We are listening to all three events,
the one that signals the start of the movement, one that is fired several times while it is moving and the
one that signals the completion of the movement. Without animation, the complete
event
fires immediately after the start
event with no progress
ever fired.
We are doing simple actions with the events. We set the background of the container upon receiving the
start
event, we change the color of the bar itself according to the value
received in progress
(all events provide the value
) and finally, in the
complete
event we are setting the final color of the bar and setting the background to white once again.
The value
argument provides the nominal value of the ProgresBar, not the size of the bar itself.
A value of 50 will always be halfway in a range o 0 to 100, whether the ProgressBar is 100 or 500 pixels wide.
We need to confirm the color value of the bar on completion of the animation. The progress
event
is unreliable, it is derived from the onTween
event fired by the animation. Animation will try
to complete the animation within the time limit given doing it in as many steps as they fit on the alloted time.
On a busy machine it might be able to do less steps than on a faster machine.
It will fire onTween
for each step, but how many steps
it will be able to fit within the duration
given cannot be predicted. You cannot trust
that there will be a progress
event close in time to the final point to leave things properly set
so we need to confirm the final state in the complete
event.
Just as we have the barEl
configuration attribute, which we used here, we have attributes holding the references
to the main elements that make the ProgressBar. They are all read-only except for captionEl
which can be set to a reference or id of any DOM element in the page. We have set this attribute
to point to a <span> element a few paragraphs above. This element is filled with the text
produced based on the textTemplate
both on each progress
and complete
event.
By default, captionEl
is set to a container right at the center of the ProgressBar itself,
that has its display
CSS attribute set to none
. If you set the captionEl
to some other container, it will follow the style of this new container.


The code for this contact form as well as all the images are available to you for free. You can download the files from
rossiss.com
.


{{define "title"}}Goonpraisal - About.{{end}} {{define "description"}}Price check Eve Online stuff.{{end}} {{define "content"}}
This is a tool for Eve Online aimed at being able to quickly price check items in bulk.
Prices calculated from recent market data from Eve Online's ESI API. Items with low (or no) market volume use CCP's pricing estimates.
Purple rows are items that Goonpraisal had a hard time finding an accurate and current price for. This is usually caused by low (or no) market volume for that item.
Yes! A very simple one, but it will probably get you what you want. Click here to see the API Documentation.
This is a fork of evepraisal.com, which is originally written by "Magerawr", and it's not bad. I just wanted to add 1DQ1-A to it. I can't promise I'll backport new features continuously.
He gets a lot of mail so I don't have the time to respond to everyone.


🔥 1241 signed up for the demo in the last month
Can be to make site look like the demo make your start and into the world easy possible included.
Can be to make site look like the demo make your start and into the world easy possible included.
Can be to make site look like the demo make your start and into the world easy possible included.
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.


Below are links to blog posts I’ve written, as well as some other projects. I can also be found on Twitter and LinkedIn.
The Air Quality Index doesn’t make any sense (19 Jun 2023)
The El Chapo model of AI containment (12 May 2023)
Double descent in human learning (21 Apr 2023)
A map of laboratory-acquired infections (01 Nov 2022)
Small correlations can drive large increases in teen depression (10 May 2022)
The uncertainty pill (17 Apr 2022)
Ke (2021) is not logarithmic (16 Feb 2022)
10x the live viral count, 10x the infectiousness (10 Feb 2022)
Waning immunity and the little paradox of R0 (01 Jan 2022)
Pandemic virus prediction: All risk and minimal benefit (18 Dec 2021)
Teens, loneliness, and the social media paradox (14 Aug 2021)
The FDA is 5X too worried about long term credibility (25 Jul 2021)
Autism, folic acid, and the trend without a blip (27 Jun 2021)
You’re probably measuring your treatment effect incorrectly (28 Mar 2021)
Instrumental variables analysis for non-economists (13 Mar 2021)
Things that confused me about cross-entropy (26 Dec 2020)
Contagiousness sensitivity: The metric that could control the pandemic (29 Nov 2020)
Upgrading to MathJax 3.0 after the Kramdown update in Github Pages (05 Sep 2020)
Why low sensitivity antigen tests are better than slow PCR tests (15 Jul 2020)
Everything I’ve learned about solar storm risk and EMP attacks (18 Jun 2020)
Coronavirus and fragmented data pipelines (14 Apr 2020)
The shower problem (08 Feb 2020)
Optimizing sample sizes in A/B testing, Part III: Aggregate time-discounted expected lift (10 Jan 2020)
Optimizing sample sizes in A/B testing, Part II: Expected lift (10 Jan 2020)
Optimizing sample sizes in A/B testing, Part I: General summary (10 Jan 2020)
Variance after scaling and summing: One of the most useful facts from statistics (18 May 2019)
Using your ears and head to escape the Cone Of Confusion (06 Aug 2018)
Hyperbolic discounting — The irrational behavior that might be rational after all (04 Feb 2018)
Religions as firms (02 Dec 2017)
Three questions for social scientists: Internet virtue edition (19 Jun 2017)
Keyboard shortcuts I couldn’t live without (22 May 2017)
Learning by flip-flopping (08 May 2017)
Empirical Bayes for multiple sample sizes (03 May 2017)
Optimizing things in the USSR (11 May 2016)
Comparing the opinions of economic experts and the general public (10 Apr 2016)
Four pitfalls of hill climbing (28 Feb 2016)
How to make polished Jupyter presentations with optional code visibility (13 Feb 2016)
New Blog Address (16 Sep 2015)
10 classic dialogues you can find on the internet (08 Aug 2015)
Across industries, we’re getting better at picking metrics (31 May 2015)
Independent t-tests and the 83% confidence interval: A useful trick for eyeballing your data. (30 Nov 2014)
Jumping quickly between deep directories (16 Oct 2014)
How failed replications change our effect size estimates (10 Jul 2014)
Jason Mitchell’s essay (07 Jul 2014)
How I use Twitter (14 May 2014)
High School STEM curriculum wishlist (22 Feb 2014)
Is your job in another state? (08 Feb 2014)
My Insight Data Science Project (12 Oct 2013)
FAQ for Which Famous Economist (19 Aug 2013)
New model of binocular rivalry (30 Mar 2013)
Canadian funding models for all (21 Mar 2013)
Eight Lessons from the Reproducibility Crisis (15 Jan 2013)
In defense of correlation/causation blowhards (09 Jan 2013)
New paper on autism (29 Dec 2012)
Why are contrast response functions linear in fMRI and nonmonotonic in EEG? (04 Oct 2012)
National labs for all the sciences (29 May 2012)
FAQ (18 Apr 2012)
It’s the incentive structure, people! Why science reform must come from the granting agencies. (17 Apr 2012)


| HADOOP-2486 |
Dropping records at reducer. InMemoryFileSystem NPE. |
Blocker |
. |
Koji Noguchi |
Devaraj Das |
| HADOOP-2460 |
NameNode could delete wrong edits file when there is an error |
Major |
. |
Raghu Angadi |
dhruba borthakur |
| HADOOP-2456 |
German locale makes NameNode web interface crash |
Minor |
. |
Matthias Friedrich |
Matthias Friedrich |
| HADOOP-2437 |
final map output not evenly distributed across multiple disks |
Blocker |
. |
Christian Kunz |
Arun C Murthy |
| HADOOP-2422 |
dfs -cat multiple files fail with 'Unable to write to output stream.' |
Blocker |
. |
Koji Noguchi |
Raghu Angadi |
| HADOOP-2378 |
last TaskCompletionEvent gets added to the job after the job is marked as completed |
Blocker |
. |
Alejandro Abdelnur |
Devaraj Das |
| HADOOP-2246 |
In CHANGES.txt, move HADOOP-1851 & HADOOP-1231 to INCOMPATIBLE CHANGES section |
Blocker |
documentation |
Devaraj Das |
Arun C Murthy |
| HADOOP-2238 |
TaskGraphServlet does not set Content-Type |
Major |
. |
Paul Saab |
|
| HADOOP-2228 |
Jobs fail because job.xml exists |
Major |
. |
Johan Oskarsson |
Johan Oskarsson |
| HADOOP-2227 |
wrong usage of mapred.local.dir.minspacestart |
Critical |
. |
Christian Kunz |
Amareshwari Sriramadasu |
| HADOOP-2158 |
hdfsListDirectory in libhdfs does not scale |
Blocker |
. |
Christian Kunz |
Christian Kunz |
| HADOOP-2129 |
distcp between two clusters does not work if it is run on the target cluster |
Critical |
util |
Murtaza A. Basrai |
Doug Cutting |


--- layout: page permalink: /voucher/tapas/ offer: tapasoffer title: Receipt subtitle: Follow these instructions to redeem your offer. masthead-img: false masthead-img-pat: false author: john categories: - Special Offer - BowTie - Example Site elsewhere: elsewhere-url: comments: false exclude_from_nav: true share: false --- {% if page.offer %} {% assign offer = site.data.offers[page.offer] %} {% else %} {% assign offer = site.data.offers.defaultoffer %} {% endif %}
Thanks for purchasing {{ offer.name }}. Your receipt is below:
{{ offer.name }}
{{ offer.redemptionnotice }}
Your Price: $ {{ offer.price | divided_by: 100 }} /{{ offer.unit }} (You saved {{ offer.savings }}!)
{{ offer.redemption-details }}


public class ListContainer.Layout
extends totalcross.lang.Object
| Modifier and Type | Field and Description |
|---|---|
boolean[] |
boldItems
The items that will have a bold font.
|
boolean |
centerVertically
Set to true to center the labels vertically if there are empty lines ("") before or after the items array.
|
int |
controlGap
The gap between the left/right controls and the text.
|
int[] |
defaultItemColors
The default colors of all items.
|
Image |
defaultLeftImage
If the left and/or right control is a fixed Image, set it here and it will be replicated on all lines.
|
Image |
defaultLeftImage2
If the left and/or right control is a fixed Image, set it here and it will be replicated on all lines.
|
protected int |
defaultLeftImageH |
protected int |
defaultLeftImageW |
Image |
defaultRightImage
If the left and/or right control is a fixed Image, set it here and it will be replicated on all lines.
|
Image |
defaultRightImage2
If the left and/or right control is a fixed Image, set it here and it will be replicated on all lines.
|
protected int |
defaultRightImageH |
protected int |
defaultRightImageW |
String[] |
fontNames
The font names to be used when creating the fonts.
|
protected Font[] |
fonts |
int |
imageGap
The gap between the image and the item's top/bottom.
|
Insets |
insets
The gap between the Item and the borders can be set using this field.
|
protected int |
itemCount |
protected int |
itemH |
protected int |
itemsPerLine |
protected int[] |
itemY |
protected ListContainerEvent |
lce |
boolean |
leftImageEnlargeIfSmaller
Specify what to do if the left or right controls are images.
|
int |
lineGap
The line spacing between two consecutive lines.
|
int[] |
positions
The x position of the label, relative to the column's width.
|
int[] |
relativeFontSizes
The default relative font sizes.
|
boolean |
rightImageEnlargeIfSmaller
Specify what to do if the left or right controls are images.
|
| Constructor and Description |
|---|
Layout(int itemCount,
int itemsPerLine)
Constructs a Layout component with the given columns and item count.
|
| Modifier and Type | Method and Description |
|---|---|
void |
setup()
After you set the properties, you must call this method to setup the internal coordinates.
|
public boolean leftImageEnlargeIfSmaller
public boolean rightImageEnlargeIfSmaller
public Image defaultLeftImage
public Image defaultRightImage
protected int defaultLeftImageW
protected int defaultLeftImageH
protected int defaultRightImageW
protected int defaultRightImageH
public Image defaultLeftImage2
public Image defaultRightImage2
public int[] defaultItemColors
public boolean[] boldItems
public int[] relativeFontSizes
public int[] positions
public String[] fontNames
public int controlGap
public int imageGap
public Insets insets
public int lineGap
controlGap
public boolean centerVertically
protected int itemCount
protected int itemsPerLine
protected int[] itemY
protected Font[] fonts
protected int itemH
protected ListContainerEvent lce