| Interface and Description |
|---|
| java.security.Certificate
A new certificate handling package is created in the Java platform.
This Certificate interface is entirely deprecated and
is here to allow for a smooth transition to the new
package.
|
| java.rmi.server.LoaderHandler
no replacement
|
| java.rmi.registry.RegistryHandler
no replacement
|
| java.rmi.server.RemoteCall
no replacement.
|
| java.rmi.server.ServerRef
No replacement. This interface is unused and is obsolete.
|
| java.rmi.server.Skeleton
no replacement. Skeletons are no longer required for remote
method calls in the Java 2 platform v1.2 and greater.
|
| Class and Description |
|---|
| java.security.Identity
This class is no longer used. Its functionality has been
replaced by
java.security.KeyStore , the
java.security.cert package, and
java.security.Principal . |
| java.security.IdentityScope
This class is no longer used. Its functionality has been
replaced by
java.security.KeyStore , the
java.security.cert package, and
java.security.Principal . |
| java.io.LineNumberInputStream
This class incorrectly assumes that bytes adequately represent
characters. As of JDK 1.1, the preferred way to operate on
character streams is via the new character-stream classes, which
include a class for counting line numbers.
|
| java.rmi.server.LogStream
no replacement
|
| java.rmi.server.Operation
no replacement
|
| java.rmi.server.RemoteStub
Statically generated stubs are deprecated, since
stubs are generated dynamically. See
UnicastRemoteObject
for information about dynamic stub generation. |
| java.rmi.RMISecurityManager
Use
SecurityManager instead. |
| java.security.Signer
This class is no longer used. Its functionality has been
replaced by
java.security.KeyStore , the
java.security.cert package, and
java.security.Principal . |
| java.io.StringBufferInputStream
This class does not properly convert characters into bytes. As
of JDK 1.1, the preferred way to create a stream from a
string is via the
StringReader class. |
| Exceptions and Description |
|---|
| java.rmi.RMISecurityException
Use
SecurityException instead.
Application code should never directly reference this class, and
RMISecurityManager no longer throws this subclass of
java.lang.SecurityException . |
| java.rmi.ServerRuntimeException
no replacement
|
| java.rmi.server.SkeletonMismatchException
no replacement. Skeletons are no longer required for remote
method calls in the Java 2 platform v1.2 and greater.
|
| java.rmi.server.SkeletonNotFoundException
no replacement. Skeletons are no longer required for remote
method calls in the Java 2 platform v1.2 and greater.
|
| java.rmi.server.SocketSecurityException
This class is obsolete. Use
ExportException instead. |
| Field and Description |
|---|
| java.awt.Frame.CROSSHAIR_CURSOR
replaced by
Cursor.CROSSHAIR_CURSOR . |
| java.awt.Frame.DEFAULT_CURSOR
replaced by
Cursor.DEFAULT_CURSOR . |
| java.awt.Frame.E_RESIZE_CURSOR
replaced by
Cursor.E_RESIZE_CURSOR . |
| java.util.jar.Attributes.Name.EXTENSION_INSTALLATION
Extension mechanism will be removed in a future release.
Use class path instead.
|
| java.util.logging.Logger.global
Initialization of this field is prone to deadlocks.
The field must be initialized by the Logger class initialization
which may cause deadlocks with the LogManager class initialization.
In such cases two class initialization wait for each other to complete.
The preferred way to get the global logger object is via the call
Logger.getGlobal() .
For compatibility with old JDK versions where the
Logger.getGlobal() is not available use the call
Logger.getLogger(Logger.GLOBAL_LOGGER_NAME)
or Logger.getLogger("global") . |
| java.awt.Frame.HAND_CURSOR
replaced by
Cursor.HAND_CURSOR . |
| java.net.HttpURLConnection.HTTP_SERVER_ERROR
it is misplaced and shouldn't have existed.
|
| java.util.jar.Attributes.Name.IMPLEMENTATION_URL
Extension mechanism will be removed in a future release.
Use class path instead.
|
| java.util.jar.Attributes.Name.IMPLEMENTATION_VENDOR_ID
Extension mechanism will be removed in a future release.
Use class path instead.
|
| java.lang.SecurityManager.inCheck
This type of security checking is not recommended.
It is recommended that the
checkPermission
call be used instead. |
| java.awt.Frame.MOVE_CURSOR
replaced by
Cursor.MOVE_CURSOR . |
| java.awt.Frame.N_RESIZE_CURSOR
replaced by
Cursor.N_RESIZE_CURSOR . |
| java.awt.Frame.NE_RESIZE_CURSOR
replaced by
Cursor.NE_RESIZE_CURSOR . |
| java.awt.Frame.NW_RESIZE_CURSOR
replaced by
Cursor.NW_RESIZE_CURSOR . |
| java.awt.datatransfer.DataFlavor.plainTextFlavor
as of 1.3. Use
DataFlavor.getReaderForText(Transferable)
instead of Transferable.getTransferData(DataFlavor.plainTextFlavor) . |
| java.awt.Cursor.predefined
As of JDK version 1.7, the
Cursor.getPredefinedCursor(int)
method should be used instead. |
| java.awt.Frame.S_RESIZE_CURSOR
replaced by
Cursor.S_RESIZE_CURSOR . |
| java.awt.Frame.SE_RESIZE_CURSOR
replaced by
Cursor.SE_RESIZE_CURSOR . |
| java.lang.Character.UnicodeBlock.SURROGATES_AREA
As of J2SE 5, use
Character.UnicodeBlock.HIGH_SURROGATES ,
Character.UnicodeBlock.HIGH_PRIVATE_USE_SURROGATES , and
Character.UnicodeBlock.LOW_SURROGATES . These new constants match
the block definitions of the Unicode Standard.
The Character.UnicodeBlock.of(char) and Character.UnicodeBlock.of(int) methods
return the new constants, not SURROGATES_AREA. |
| java.awt.Frame.SW_RESIZE_CURSOR
replaced by
Cursor.SW_RESIZE_CURSOR . |
| java.awt.Frame.TEXT_CURSOR
replaced by
Cursor.TEXT_CURSOR . |
| java.awt.Frame.W_RESIZE_CURSOR
replaced by
Cursor.W_RESIZE_CURSOR . |
| java.awt.Frame.WAIT_CURSOR
replaced by
Cursor.WAIT_CURSOR . |
| Method and Description |
|---|
| java.awt.Component.action(Event, Object)
As of JDK version 1.1,
should register this component as ActionListener on component
which fires action events.
|
| java.awt.List.addItem(String)
replaced by
add(String) . |
| java.awt.List.addItem(String, int)
replaced by
add(String, int) . |
| java.awt.CardLayout.addLayoutComponent(String, Component)
replaced by
addLayoutComponent(Component, Object) . |
| java.awt.BorderLayout.addLayoutComponent(String, Component)
replaced by
addLayoutComponent(Component, Object) . |
| java.util.jar.Pack200.Packer.addPropertyChangeListener(PropertyChangeListener)
The dependency on
PropertyChangeListener creates
a significant impediment to future modularization of the
Java platform. This method will be removed in a future
release.
Applications that need to monitor progress of the packer
can poll the value of the PROGRESS
property instead. |
| java.util.jar.Pack200.Unpacker.addPropertyChangeListener(PropertyChangeListener)
The dependency on
PropertyChangeListener creates
a significant impediment to future modularization of the
Java platform. This method will be removed in a future
release.
Applications that need to monitor progress of the
unpacker can poll the value of the PROGRESS property instead. |
| java.util.logging.LogManager.addPropertyChangeListener(PropertyChangeListener)
The dependency on
PropertyChangeListener creates a
significant impediment to future modularization of the Java
platform. This method will be removed in a future release.
The global LogManager can detect changes to the
logging configuration by overridding the readConfiguration method. |
| java.awt.List.allowsMultipleSelections()
As of JDK version 1.1,
replaced by
isMultipleMode() . |
| java.lang.ThreadGroup.allowThreadSuspension(boolean)
The definition of this call depends on
ThreadGroup.suspend() ,
which is deprecated. Further, the behavior of this call
was never specified. |
| java.awt.TextArea.appendText(String)
As of JDK version 1.1,
replaced by
append(String) . |
| java.awt.Window.applyResourceBundle(ResourceBundle)
As of J2SE 1.4, replaced by
Component.applyComponentOrientation . |
| java.awt.Window.applyResourceBundle(String)
As of J2SE 1.4, replaced by
Component.applyComponentOrientation . |
| java.awt.Component.bounds()
As of JDK version 1.1,
replaced by
getBounds() . |
| java.lang.SecurityManager.checkAwtEventQueueAccess()
The dependency on
AWTPermission creates an
impediment to future modularization of the Java platform.
Users of this method should instead invoke
SecurityManager.checkPermission(java.security.Permission) directly.
This method will be changed in a future release to check
the permission java.security.AllPermission . |
| java.lang.SecurityManager.checkMemberAccess(Class<?>, int)
This method relies on the caller being at a stack depth
of 4 which is error-prone and cannot be enforced by the runtime.
Users of this method should instead invoke
SecurityManager.checkPermission(java.security.Permission)
directly. This method will be changed in a future release
to check the permission java.security.AllPermission . |
| java.lang.SecurityManager.checkMulticast(InetAddress, byte)
Use #checkPermission(java.security.Permission) instead
|
| java.lang.SecurityManager.checkSystemClipboardAccess()
The dependency on
AWTPermission creates an
impediment to future modularization of the Java platform.
Users of this method should instead invoke
SecurityManager.checkPermission(java.security.Permission) directly.
This method will be changed in a future release to check
the permission java.security.AllPermission . |
| java.lang.SecurityManager.checkTopLevelWindow(Object)
The dependency on
AWTPermission creates an
impediment to future modularization of the Java platform.
Users of this method should instead invoke
SecurityManager.checkPermission(java.security.Permission) directly.
This method will be changed in a future release to check
the permission java.security.AllPermission . |
| java.lang.SecurityManager.classDepth(String)
This type of security checking is not recommended.
It is recommended that the
checkPermission
call be used instead. |
| java.lang.SecurityManager.classLoaderDepth()
This type of security checking is not recommended.
It is recommended that the
checkPermission
call be used instead. |
| java.awt.List.clear()
As of JDK version 1.1,
replaced by
removeAll() . |
| java.awt.image.renderable.RenderContext.concetenateTransform(AffineTransform)
replaced by
concatenateTransform(AffineTransform) . |
| java.awt.Container.countComponents()
As of JDK version 1.1,
replaced by getComponentCount().
|
| java.awt.List.countItems()
As of JDK version 1.1,
replaced by
getItemCount() . |
| java.awt.Choice.countItems()
As of JDK version 1.1,
replaced by
getItemCount() . |
| java.awt.Menu.countItems()
As of JDK version 1.1,
replaced by
getItemCount() . |
| java.awt.MenuBar.countMenus()
As of JDK version 1.1,
replaced by
getMenuCount() . |
| java.lang.Thread.countStackFrames()
The definition of this call depends on
Thread.suspend() ,
which is deprecated. Further, the results of this call
were never well-defined. |
| java.lang.SecurityManager.currentClassLoader()
This type of security checking is not recommended.
It is recommended that the
checkPermission
call be used instead. |
| java.lang.SecurityManager.currentLoadedClass()
This type of security checking is not recommended.
It is recommended that the
checkPermission
call be used instead. |
| java.net.URLDecoder.decode(String)
The resulting string may vary depending on the platform's
default encoding. Instead, use the decode(String,String) method
to specify the encoding.
|
| java.lang.ClassLoader.defineClass(byte[], int, int)
Replaced by
defineClass(String, byte[], int, int) |
| java.awt.List.delItem(int)
replaced by
remove(String)
and remove(int) . |
| java.awt.List.delItems(int, int)
As of JDK version 1.1,
Not for public use in the future.
This method is expected to be retained only as a package
private method.
|
| java.awt.Component.deliverEvent(Event)
As of JDK version 1.1,
replaced by
dispatchEvent(AWTEvent e) . |
| java.awt.Container.deliverEvent(Event)
As of JDK version 1.1,
replaced by
dispatchEvent(AWTEvent e) |
| java.lang.Thread.destroy()
This method was originally designed to destroy this
thread without any cleanup. Any monitors it held would have
remained locked. However, the method was never implemented.
If if were to be implemented, it would be deadlock-prone in
much the manner of
Thread.suspend() . If the target thread held
a lock protecting a critical system resource when it was
destroyed, no thread could ever access this resource again.
If another thread ever attempted to lock this resource, deadlock
would result. Such deadlocks typically manifest themselves as
"frozen" processes. For more information, see
Why are Thread.stop, Thread.suspend and Thread.resume Deprecated?. |
| java.awt.Component.disable()
As of JDK version 1.1,
replaced by
setEnabled(boolean) . |
| java.awt.MenuItem.disable()
As of JDK version 1.1,
replaced by
setEnabled(boolean) . |
| java.rmi.server.Skeleton.dispatch(Remote, RemoteCall, int, long)
no replacement
|
| java.rmi.server.RemoteCall.done()
no replacement
|
| java.rmi.server.RemoteRef.done(RemoteCall)
1.2 style stubs no longer use this method. Instead of
using a sequence of method calls to the remote reference
(
newCall , invoke , and done ), a
stub uses a single method, invoke(Remote, Method, Object[],
int) , on the remote reference to carry out parameter
marshalling, remote method executing and unmarshalling of the return
value. |
| java.awt.Component.enable()
As of JDK version 1.1,
replaced by
setEnabled(boolean) . |
| java.awt.MenuItem.enable()
As of JDK version 1.1,
replaced by
setEnabled(boolean) . |
| java.awt.Component.enable(boolean)
As of JDK version 1.1,
replaced by
setEnabled(boolean) . |
| java.awt.MenuItem.enable(boolean)
As of JDK version 1.1,
replaced by
setEnabled(boolean) . |
| java.net.URLEncoder.encode(String)
The resulting string may vary depending on the platform's
default encoding. Instead, use the encode(String,String)
method to specify the encoding.
|
| java.security.SignatureSpi.engineGetParameter(String) |
| java.security.SignatureSpi.engineSetParameter(String, Object)
Replaced by
engineSetParameter . |
| java.awt.datatransfer.DataFlavor.equals(String)
As inconsistent with
hashCode() contract,
use isMimeTypeEqual(String) instead. |
| java.rmi.server.RemoteCall.executeCall()
no replacement
|
| java.rmi.server.UnicastRemoteObject.exportObject(Remote)
This method is deprecated because it supports only static stubs.
Use
exportObject(Remote, port) or
exportObject(Remote, port, csf, ssf)
instead. |
| java.security.Security.getAlgorithmProperty(String, String)
This method used to return the value of a proprietary
property in the master file of the "SUN" Cryptographic Service
Provider in order to determine how to parse algorithm-specific
parameters. Use the new provider-based and algorithm-independent
AlgorithmParameters and KeyFactory engine
classes (introduced in the J2SE version 1.2 platform) instead. |
| java.sql.CallableStatement.getBigDecimal(int, int)
use
getBigDecimal(int parameterIndex)
or getBigDecimal(String parameterName) |
| java.sql.ResultSet.getBigDecimal(int, int)
Use
getBigDecimal(int columnIndex)
or getBigDecimal(String columnLabel) |
| java.sql.ResultSet.getBigDecimal(String, int)
Use
getBigDecimal(int columnIndex)
or getBigDecimal(String columnLabel) |
| java.awt.Polygon.getBoundingBox()
As of JDK version 1.1,
replaced by
getBounds() . |
| java.lang.String.getBytes(int, int, byte[], int)
This method does not properly convert characters into
bytes. As of JDK 1.1, the preferred way to do this is via the
String.getBytes() method, which uses the platform's default charset. |
| java.awt.Graphics.getClipRect()
As of JDK version 1.1,
replaced by
getClipBounds() . |
| java.awt.CheckboxGroup.getCurrent()
As of JDK version 1.1,
replaced by
getSelectedCheckbox() . |
| java.awt.Frame.getCursorType()
As of JDK version 1.1,
replaced by
Component.getCursor() . |
| java.util.Date.getDate()
As of JDK version 1.1,
replaced by
Calendar.get(Calendar.DAY_OF_MONTH) . |
| java.sql.Time.getDate() |
| java.util.Date.getDay()
As of JDK version 1.1,
replaced by
Calendar.get(Calendar.DAY_OF_WEEK) . |
| java.sql.Time.getDay() |
| java.net.URLConnection.getDefaultRequestProperty(String)
The instance specific getRequestProperty method
should be used after an appropriate instance of URLConnection
is obtained.
|
| java.rmi.server.LogStream.getDefaultStream()
no replacement
|
| java.awt.Toolkit.getFontList() |
| java.awt.Toolkit.getFontMetrics(Font)
As of JDK version 1.2, replaced by the
Font
method getLineMetrics . |
| java.awt.Toolkit.getFontPeer(String, int)
see java.awt.GraphicsEnvironment#getAllFonts
|
| java.util.Date.getHours()
As of JDK version 1.1,
replaced by
Calendar.get(Calendar.HOUR_OF_DAY) . |
| java.sql.Date.getHours() |
| java.lang.SecurityManager.getInCheck()
This type of security checking is not recommended.
It is recommended that the
checkPermission
call be used instead. |
| java.rmi.server.RemoteCall.getInputStream()
no replacement
|
| java.awt.Scrollbar.getLineIncrement()
As of JDK version 1.1,
replaced by
getUnitIncrement() . |
| java.lang.Runtime.getLocalizedInputStream(InputStream)
As of JDK 1.1, the preferred way to translate a byte
stream in the local encoding into a character stream in Unicode is via
the
InputStreamReader and BufferedReader
classes. |
| java.lang.Runtime.getLocalizedOutputStream(OutputStream)
As of JDK 1.1, the preferred way to translate a
Unicode character stream into a byte stream in the local encoding is via
the
OutputStreamWriter , BufferedWriter , and
PrintWriter classes. |
| java.sql.DriverManager.getLogStream()
Use
getLogWriter |
| java.awt.FontMetrics.getMaxDecent()
As of JDK version 1.1.1,
replaced by
getMaxDescent() . |
| java.util.Date.getMinutes()
As of JDK version 1.1,
replaced by
Calendar.get(Calendar.MINUTE) . |
| java.sql.Date.getMinutes() |
| java.util.Date.getMonth()
As of JDK version 1.1,
replaced by
Calendar.get(Calendar.MONTH) . |
| java.sql.Time.getMonth() |
| java.rmi.server.Operation.getOperation()
no replacement
|
| java.rmi.server.Skeleton.getOperations()
no replacement
|
| java.awt.ComponentOrientation.getOrientation(ResourceBundle)
As of J2SE 1.4, use
ComponentOrientation.getOrientation(java.util.Locale) . |
| java.rmi.server.LogStream.getOutputStream()
no replacement
|
| java.rmi.server.RemoteCall.getOutputStream()
no replacement
|
| java.awt.Scrollbar.getPageIncrement()
As of JDK version 1.1,
replaced by
getBlockIncrement() . |
| java.security.Signature.getParameter(String) |
| java.awt.MenuComponent.getPeer()
As of JDK version 1.1,
programs should not directly manipulate peers.
|
| java.awt.Font.getPeer()
Font rendering is now platform independent.
|
| java.awt.Component.getPeer()
As of JDK version 1.1,
programs should not directly manipulate peers;
replaced by
boolean isDisplayable() . |
| java.rmi.server.RemoteCall.getResultStream(boolean)
no replacement
|
| java.util.Date.getSeconds()
As of JDK version 1.1,
replaced by
Calendar.get(Calendar.SECOND) . |
| java.sql.Date.getSeconds() |
| java.rmi.server.RMIClassLoader.getSecurityContext(ClassLoader)
no replacement. As of the Java 2 platform v1.2, RMI no
longer uses this method to obtain a class loader's security context.
|
| java.rmi.server.LoaderHandler.getSecurityContext(ClassLoader)
no replacement
|
| java.util.Date.getTimezoneOffset()
As of JDK version 1.1,
replaced by
-(Calendar.get(Calendar.ZONE_OFFSET) +
Calendar.get(Calendar.DST_OFFSET)) / (60 * 1000) . |
| java.net.MulticastSocket.getTTL()
use the getTimeToLive method instead, which returns
an int instead of a byte.
|
| java.net.DatagramSocketImpl.getTTL()
use getTimeToLive instead.
|
| java.sql.ResultSet.getUnicodeStream(int)
use
getCharacterStream in place of
getUnicodeStream |
| java.sql.ResultSet.getUnicodeStream(String)
use
getCharacterStream instead |
| java.awt.Scrollbar.getVisible()
As of JDK version 1.1,
replaced by
getVisibleAmount() . |
| java.util.Date.getYear()
As of JDK version 1.1,
replaced by
Calendar.get(Calendar.YEAR) - 1900 . |
| java.sql.Time.getYear() |
| java.awt.Component.gotFocus(Event, Object)
As of JDK version 1.1,
replaced by processFocusEvent(FocusEvent).
|
| java.awt.Component.handleEvent(Event)
As of JDK version 1.1
replaced by processEvent(AWTEvent).
|
| java.awt.Window.hide()
As of JDK version 1.5, replaced by
Window.setVisible(boolean) . |
| java.awt.Component.hide()
As of JDK version 1.1,
replaced by
setVisible(boolean) . |
| java.awt.Dialog.hide()
As of JDK version 1.5, replaced by
setVisible(boolean) . |
| java.lang.SecurityManager.inClass(String)
This type of security checking is not recommended.
It is recommended that the
checkPermission
call be used instead. |
| java.lang.SecurityManager.inClassLoader()
This type of security checking is not recommended.
It is recommended that the
checkPermission
call be used instead. |
| java.awt.TextArea.insertText(String, int)
As of JDK version 1.1,
replaced by
insert(String, int) . |
| java.awt.Container.insets()
As of JDK version 1.1,
replaced by
getInsets() . |
| java.awt.Polygon.inside(int, int)
As of JDK version 1.1,
replaced by
contains(int, int) . |
| java.awt.Component.inside(int, int)
As of JDK version 1.1,
replaced by contains(int, int).
|
| java.awt.Rectangle.inside(int, int)
As of JDK version 1.1,
replaced by
contains(int, int) . |
| java.rmi.server.RemoteRef.invoke(RemoteCall)
1.2 style stubs no longer use this method. Instead of
using a sequence of method calls to the remote reference
(
newCall , invoke , and done ), a
stub uses a single method, invoke(Remote, Method, Object[],
int) , on the remote reference to carry out parameter
marshalling, remote method executing and unmarshalling of the return
value. |
| java.awt.Component.isFocusTraversable()
As of 1.4, replaced by
isFocusable() . |
| java.lang.Character.isJavaLetter(char)
Replaced by isJavaIdentifierStart(char).
|
| java.lang.Character.isJavaLetterOrDigit(char)
Replaced by isJavaIdentifierPart(char).
|
| java.awt.List.isSelected(int)
As of JDK version 1.1,
replaced by
isIndexSelected(int) . |
| java.lang.Character.isSpace(char)
Replaced by isWhitespace(char).
|
| java.rmi.dgc.VMID.isUnique() |
| java.awt.Component.keyDown(Event, int)
As of JDK version 1.1,
replaced by processKeyEvent(KeyEvent).
|
| java.awt.Component.keyUp(Event, int)
As of JDK version 1.1,
replaced by processKeyEvent(KeyEvent).
|
| java.awt.ScrollPane.layout()
As of JDK version 1.1,
replaced by
doLayout() . |
| java.awt.Component.layout()
As of JDK version 1.1,
replaced by
doLayout() . |
| java.awt.Container.layout()
As of JDK version 1.1,
replaced by
doLayout() . |
| java.rmi.server.RMIClassLoader.loadClass(String)
replaced by
loadClass(String,String) method |
| java.rmi.server.LoaderHandler.loadClass(String)
no replacement
|
| java.rmi.server.LoaderHandler.loadClass(URL, String)
no replacement
|
| java.awt.Component.locate(int, int)
As of JDK version 1.1,
replaced by getComponentAt(int, int).
|
| java.awt.Container.locate(int, int)
As of JDK version 1.1,
replaced by
getComponentAt(int, int) . |
| java.awt.Component.location()
As of JDK version 1.1,
replaced by
getLocation() . |
| java.rmi.server.LogStream.log(String)
no replacement
|
| java.util.logging.Logger.logrb(Level, String, String, String, String) |
| java.util.logging.Logger.logrb(Level, String, String, String, String, Object) |
| java.util.logging.Logger.logrb(Level, String, String, String, String, Object[]) |
| java.util.logging.Logger.logrb(Level, String, String, String, String, Throwable) |
| java.awt.Component.lostFocus(Event, Object)
As of JDK version 1.1,
replaced by processFocusEvent(FocusEvent).
|
| java.awt.TextArea.minimumSize()
As of JDK version 1.1,
replaced by
getMinimumSize() . |
| java.awt.List.minimumSize()
As of JDK version 1.1,
replaced by
getMinimumSize() . |
| java.awt.Component.minimumSize()
As of JDK version 1.1,
replaced by
getMinimumSize() . |
| java.awt.Container.minimumSize()
As of JDK version 1.1,
replaced by
getMinimumSize() . |
| java.awt.TextField.minimumSize()
As of JDK version 1.1,
replaced by
getMinimumSize() . |
| java.awt.List.minimumSize(int)
As of JDK version 1.1,
replaced by
getMinimumSize(int) . |
| java.awt.TextField.minimumSize(int)
As of JDK version 1.1,
replaced by
getMinimumSize(int) . |
| java.awt.TextArea.minimumSize(int, int)
As of JDK version 1.1,
replaced by
getMinimumSize(int, int) . |
| java.awt.Component.mouseDown(Event, int, int)
As of JDK version 1.1,
replaced by processMouseEvent(MouseEvent).
|
| java.awt.Component.mouseDrag(Event, int, int)
As of JDK version 1.1,
replaced by processMouseMotionEvent(MouseEvent).
|
| java.awt.Component.mouseEnter(Event, int, int)
As of JDK version 1.1,
replaced by processMouseEvent(MouseEvent).
|
| java.awt.Component.mouseExit(Event, int, int)
As of JDK version 1.1,
replaced by processMouseEvent(MouseEvent).
|
| java.awt.Component.mouseMove(Event, int, int)
As of JDK version 1.1,
replaced by processMouseMotionEvent(MouseEvent).
|
| java.awt.Component.mouseUp(Event, int, int)
As of JDK version 1.1,
replaced by processMouseEvent(MouseEvent).
|
| java.awt.Component.move(int, int)
As of JDK version 1.1,
replaced by
setLocation(int, int) . |
| java.awt.Rectangle.move(int, int)
As of JDK version 1.1,
replaced by
setLocation(int, int) . |
| java.rmi.server.RemoteRef.newCall(RemoteObject, Operation[], int, long)
1.2 style stubs no longer use this method. Instead of
using a sequence of method calls on the stub's the remote reference
(
newCall , invoke , and done ), a
stub uses a single method, invoke(Remote, Method, Object[],
int) , on the remote reference to carry out parameter
marshalling, remote method executing and unmarshalling of the return
value. |
| java.awt.Component.nextFocus()
As of JDK version 1.1,
replaced by transferFocus().
|
| java.awt.datatransfer.DataFlavor.normalizeMimeType(String) |
| java.awt.datatransfer.DataFlavor.normalizeMimeTypeParameter(String, String) |
| java.util.Date.parse(String)
As of JDK version 1.1,
replaced by
DateFormat.parse(String s) . |
| java.rmi.server.LogStream.parseLevel(String)
no replacement
|
| java.awt.Window.postEvent(Event)
As of JDK version 1.1
replaced by
dispatchEvent(AWTEvent) . |
| java.awt.MenuComponent.postEvent(Event)
As of JDK version 1.1, replaced by
dispatchEvent . |
| java.awt.MenuContainer.postEvent(Event)
As of JDK version 1.1
replaced by dispatchEvent(AWTEvent).
|
| java.awt.Component.postEvent(Event)
As of JDK version 1.1,
replaced by dispatchEvent(AWTEvent).
|
| java.awt.image.renderable.RenderContext.preConcetenateTransform(AffineTransform)
replaced by
preConcatenateTransform(AffineTransform) . |
| java.awt.TextArea.preferredSize()
As of JDK version 1.1,
replaced by
getPreferredSize() . |
| java.awt.List.preferredSize()
As of JDK version 1.1,
replaced by
getPreferredSize() . |
| java.awt.Component.preferredSize()
As of JDK version 1.1,
replaced by
getPreferredSize() . |
| java.awt.Container.preferredSize()
As of JDK version 1.1,
replaced by
getPreferredSize() . |
| java.awt.TextField.preferredSize()
As of JDK version 1.1,
replaced by
getPreferredSize() . |
| java.awt.List.preferredSize(int)
As of JDK version 1.1,
replaced by
getPreferredSize(int) . |
| java.awt.TextField.preferredSize(int)
As of JDK version 1.1,
replaced by
getPreferredSize(int) . |
| java.awt.TextArea.preferredSize(int, int)
As of JDK version 1.1,
replaced by
getPreferredSize(int, int) . |
| java.io.ObjectInputStream.readLine()
This method does not properly convert bytes to characters.
see DataInputStream for the details and alternatives.
|
| java.io.DataInputStream.readLine()
This method does not properly convert bytes to characters.
As of JDK 1.1, the preferred way to read lines of text is via the
BufferedReader.readLine() method. Programs that use the
DataInputStream class to read lines can be converted to use
the BufferedReader class by replacing code of the form:
with:DataInputStream d = new DataInputStream(in); BufferedReader d = new BufferedReader(new InputStreamReader(in)); |
| java.rmi.registry.RegistryHandler.registryImpl(int)
no replacement. As of the Java 2 platform v1.2, RMI no
longer uses the
RegistryHandler to obtain the registry's
implementation. |
| java.rmi.registry.RegistryHandler.registryStub(String, int)
no replacement. As of the Java 2 platform v1.2, RMI no
longer uses the
RegistryHandler to obtain the registry's
stub. |
| java.rmi.server.RemoteCall.releaseInputStream()
no replacement
|
| java.rmi.server.RemoteCall.releaseOutputStream()
no replacement
|
| java.util.jar.Pack200.Packer.removePropertyChangeListener(PropertyChangeListener)
The dependency on
PropertyChangeListener creates
a significant impediment to future modularization of the
Java platform. This method will be removed in a future
release. |
| java.util.jar.Pack200.Unpacker.removePropertyChangeListener(PropertyChangeListener)
The dependency on
PropertyChangeListener creates
a significant impediment to future modularization of the
Java platform. This method will be removed in a future
release. |
| java.util.logging.LogManager.removePropertyChangeListener(PropertyChangeListener)
The dependency on
PropertyChangeListener creates a
significant impediment to future modularization of the Java
platform. This method will be removed in a future release.
The global LogManager can detect changes to the
logging configuration by overridding the readConfiguration method. |
| java.awt.TextArea.replaceText(String, int, int)
As of JDK version 1.1,
replaced by
replaceRange(String, int, int) . |
| java.awt.Window.reshape(int, int, int, int)
As of JDK version 1.1,
replaced by
setBounds(int, int, int, int) . |
| java.awt.Component.reshape(int, int, int, int)
As of JDK version 1.1,
replaced by
setBounds(int, int, int, int) . |
| java.awt.Rectangle.reshape(int, int, int, int)
As of JDK version 1.1,
replaced by
setBounds(int, int, int, int) . |
| java.awt.Component.resize(Dimension)
As of JDK version 1.1,
replaced by
setSize(Dimension) . |
| java.awt.Component.resize(int, int)
As of JDK version 1.1,
replaced by
setSize(int, int) . |
| java.awt.Rectangle.resize(int, int)
As of JDK version 1.1,
replaced by
setSize(int, int) . |
| java.lang.ThreadGroup.resume()
This method is used solely in conjunction with
Thread.suspend and ThreadGroup.suspend,
both of which have been deprecated, as they are inherently
deadlock-prone. See
Thread.suspend() for details. |
| java.lang.Thread.resume()
This method exists solely for use with
Thread.suspend() ,
which has been deprecated because it is deadlock-prone.
For more information, see
Why
are Thread.stop, Thread.suspend and Thread.resume Deprecated?. |
| java.lang.System.runFinalizersOnExit(boolean)
This method is inherently unsafe. It may result in
finalizers being called on live objects while other threads are
concurrently manipulating those objects, resulting in erratic
behavior or deadlock.
|
| java.lang.Runtime.runFinalizersOnExit(boolean)
This method is inherently unsafe. It may result in
finalizers being called on live objects while other threads are
concurrently manipulating those objects, resulting in erratic
behavior or deadlock.
|
| java.util.Properties.save(OutputStream, String)
This method does not throw an IOException if an I/O error
occurs while saving the property list. The preferred way to save a
properties list is via the
store(OutputStream out,
String comments) method or the
storeToXML(OutputStream os, String comment) method. |
| java.net.MulticastSocket.send(DatagramPacket, byte)
Use the following code or its equivalent instead:
......
int ttl = mcastSocket.getTimeToLive();
mcastSocket.setTimeToLive(newttl);
mcastSocket.send(p);
mcastSocket.setTimeToLive(ttl);
......
|
| java.awt.CheckboxGroup.setCurrent(Checkbox)
As of JDK version 1.1,
replaced by
setSelectedCheckbox(Checkbox) . |
| java.awt.Frame.setCursor(int)
As of JDK version 1.1,
replaced by
Component.setCursor(Cursor) . |
| java.util.Date.setDate(int)
As of JDK version 1.1,
replaced by
Calendar.set(Calendar.DAY_OF_MONTH, int date) . |
| java.sql.Time.setDate(int) |
| java.net.URLConnection.setDefaultRequestProperty(String, String)
The instance specific setRequestProperty method
should be used after an appropriate instance of URLConnection
is obtained. Invoking this method will have no effect.
|
| java.rmi.server.LogStream.setDefaultStream(PrintStream)
no replacement
|
| java.awt.TextField.setEchoCharacter(char)
As of JDK version 1.1,
replaced by
setEchoChar(char) . |
| java.util.Date.setHours(int)
As of JDK version 1.1,
replaced by
Calendar.set(Calendar.HOUR_OF_DAY, int hours) . |
| java.sql.Date.setHours(int) |
| java.awt.Scrollbar.setLineIncrement(int)
As of JDK version 1.1,
replaced by
setUnitIncrement(int) . |
| java.sql.DriverManager.setLogStream(PrintStream)
Use
setLogWriter |
| java.util.Date.setMinutes(int)
As of JDK version 1.1,
replaced by
Calendar.set(Calendar.MINUTE, int minutes) . |
| java.sql.Date.setMinutes(int) |
| java.awt.event.KeyEvent.setModifiers(int)
as of JDK1.1.4
|
| java.util.Date.setMonth(int)
As of JDK version 1.1,
replaced by
Calendar.set(Calendar.MONTH, int month) . |
| java.sql.Time.setMonth(int) |
| java.awt.List.setMultipleSelections(boolean)
As of JDK version 1.1,
replaced by
setMultipleMode(boolean) . |
| java.rmi.server.LogStream.setOutputStream(OutputStream)
no replacement
|
| java.awt.Scrollbar.setPageIncrement(int)
As of JDK version 1.1,
replaced by
setBlockIncrement() . |
| java.security.Signature.setParameter(String, Object)
Use
setParameter . |
| java.rmi.server.RemoteStub.setRef(RemoteStub, RemoteRef)
No replacement. The
setRef method
was intended for setting the remote reference of a remote
stub. This is unnecessary, since RemoteStub s can be created
and initialized with a remote reference through use of
the RemoteStub.RemoteStub(RemoteRef) constructor. |
| java.util.Date.setSeconds(int)
As of JDK version 1.1,
replaced by
Calendar.set(Calendar.SECOND, int seconds) . |
| java.sql.Date.setSeconds(int) |
| java.net.MulticastSocket.setTTL(byte)
use the setTimeToLive method instead, which uses
int instead of byte as the type for ttl.
|
| java.net.DatagramSocketImpl.setTTL(byte)
use setTimeToLive instead.
|
| java.sql.PreparedStatement.setUnicodeStream(int, InputStream, int)
Use
setCharacterStream |
| java.net.URLStreamHandler.setURL(URL, String, String, int, String, String)
Use setURL(URL, String, String, int, String, String, String,
String);
|
| java.util.Date.setYear(int)
As of JDK version 1.1,
replaced by
Calendar.set(Calendar.YEAR, year + 1900) . |
| java.sql.Time.setYear(int) |
| java.awt.Window.show()
As of JDK version 1.5, replaced by
Window.setVisible(boolean) . |
| java.awt.Component.show()
As of JDK version 1.1,
replaced by
setVisible(boolean) . |
| java.awt.Dialog.show()
As of JDK version 1.5, replaced by
setVisible(boolean) . |
| java.awt.Component.show(boolean)
As of JDK version 1.1,
replaced by
setVisible(boolean) . |
| java.awt.Component.size()
As of JDK version 1.1,
replaced by
getSize() . |
| java.lang.ThreadGroup.stop()
This method is inherently unsafe. See
Thread.stop() for details. |
| java.lang.Thread.stop()
This method is inherently unsafe. Stopping a thread with
Thread.stop causes it to unlock all of the monitors that it
has locked (as a natural consequence of the unchecked
ThreadDeath exception propagating up the stack). If
any of the objects previously protected by these monitors were in
an inconsistent state, the damaged objects become visible to
other threads, potentially resulting in arbitrary behavior. Many
uses of stop should be replaced by code that simply
modifies some variable to indicate that the target thread should
stop running. The target thread should check this variable
regularly, and return from its run method in an orderly fashion
if the variable indicates that it is to stop running. If the
target thread waits for long periods (on a condition variable,
for example), the interrupt method should be used to
interrupt the wait.
For more information, see
Why
are Thread.stop, Thread.suspend and Thread.resume Deprecated?. |
| java.lang.Thread.stop(Throwable)
This method was originally designed to force a thread to stop
and throw a given
Throwable as an exception. It was
inherently unsafe (see Thread.stop() for details), and furthermore
could be used to generate exceptions that the target thread was
not prepared to handle.
For more information, see
Why
are Thread.stop, Thread.suspend and Thread.resume Deprecated?. |
| java.lang.ThreadGroup.suspend()
This method is inherently deadlock-prone. See
Thread.suspend() for details. |
| java.lang.Thread.suspend()
This method has been deprecated, as it is
inherently deadlock-prone. If the target thread holds a lock on the
monitor protecting a critical system resource when it is suspended, no
thread can access this resource until the target thread is resumed. If
the thread that would resume the target thread attempts to lock this
monitor prior to calling
resume , deadlock results. Such
deadlocks typically manifest themselves as "frozen" processes.
For more information, see
Why
are Thread.stop, Thread.suspend and Thread.resume Deprecated?. |
| java.util.Date.toGMTString()
As of JDK version 1.1,
replaced by
DateFormat.format(Date date) , using a
GMT TimeZone . |
| java.util.Date.toLocaleString()
As of JDK version 1.1,
replaced by
DateFormat.format(Date date) . |
| java.rmi.server.LogStream.toString()
no replacement
|
| java.rmi.server.Operation.toString()
no replacement
|
| java.io.ByteArrayOutputStream.toString(int)
This method does not properly convert bytes into characters.
As of JDK 1.1, the preferred way to do this is via the
toString(String enc) method, which takes an encoding-name
argument, or the toString() method, which uses the
platform's default character encoding. |
| java.io.File.toURL() |
| java.util.Date.UTC(int, int, int, int, int, int)
As of JDK version 1.1,
replaced by
Calendar.set(year + 1900, month, date,
hrs, min, sec) or GregorianCalendar(year + 1900,
month, date, hrs, min, sec) , using a UTC
TimeZone , followed by Calendar.getTime().getTime() . |
| java.rmi.server.LogStream.write(byte[], int, int)
no replacement
|
| java.rmi.server.LogStream.write(int)
no replacement
|
| java.io.ObjectOutputStream.PutField.write(ObjectOutput)
This method does not write the values contained by this
PutField object in a proper format, and may
result in corruption of the serialization stream. The
correct way to write PutField data is by
calling the ObjectOutputStream.writeFields()
method. |
| Constructor and Description |
|---|
| java.util.Date(int, int, int)
As of JDK version 1.1,
replaced by
Calendar.set(year + 1900, month, date)
or GregorianCalendar(year + 1900, month, date) . |
| java.sql.Date(int, int, int)
instead use the constructor
Date(long date) |
| java.util.Date(int, int, int, int, int)
As of JDK version 1.1,
replaced by
Calendar.set(year + 1900, month, date,
hrs, min) or GregorianCalendar(year + 1900,
month, date, hrs, min) . |
| java.util.Date(int, int, int, int, int, int)
As of JDK version 1.1,
replaced by
Calendar.set(year + 1900, month, date,
hrs, min, sec) or GregorianCalendar(year + 1900,
month, date, hrs, min, sec) . |
| java.util.Date(String)
As of JDK version 1.1,
replaced by
DateFormat.parse(String s) . |
| java.awt.event.KeyEvent(Component, int, long, int, int)
as of JDK1.1
|
| java.rmi.server.Operation(String)
no replacement
|
| java.rmi.RMISecurityException(String)
no replacement
|
| java.rmi.RMISecurityException(String, String)
no replacement
|
| java.rmi.ServerRuntimeException(String, Exception)
no replacement
|
| java.rmi.server.SkeletonMismatchException(String)
no replacement
|
| java.net.Socket(InetAddress, int, boolean)
Use DatagramSocket instead for UDP transport.
|
| java.net.Socket(String, int, boolean)
Use DatagramSocket instead for UDP transport.
|
| java.io.StreamTokenizer(InputStream)
As of JDK version 1.1, the preferred way to tokenize an
input stream is to convert it into a character stream, for example:
Reader r = new BufferedReader(new InputStreamReader(is)); StreamTokenizer st = new StreamTokenizer(r); |
| java.lang.String(byte[], int)
This method does not properly convert bytes into
characters. As of JDK 1.1, the preferred way to do this is via the
String constructors that take a Charset , charset name, or that use the platform's
default charset. |
| java.lang.String(byte[], int, int, int)
This method does not properly convert bytes into characters.
As of JDK 1.1, the preferred way to do this is via the
String constructors that take a Charset , charset name, or that use the platform's
default charset. |
| java.sql.Time(int, int, int)
Use the constructor that takes a milliseconds value
in place of this constructor
|
| java.sql.Timestamp(int, int, int, int, int, int, int)
instead use the constructor
Timestamp(long millis) |
Dracula Javadoc Sample, Made with Allan Im.


Flying into the Sun's atmosphere (or corona) for the first time. Coming closer to the Sun than any previous spacecraft, Parker Solar Probe will employ a combination of in situ measurements and imaging to achieve the mission's primary scientific goal: to understand how the Sun's corona is heated and how the solar wind is accelerated.


|
|
| MyMoney is a rich client .NET 4.0 ClickOnce application for managing your personal finances. It is written entirely in C# and is designed for programmers who want easy access to their data and who want to quickly and easily add their own features. Your data will not be locked up in some proprietary format, it is yours to do with as you like. |
|
|
|
Supports Banking, Credit Card, and Investment accounts, with Auto Categorization, Statement Reconcilitation, and simple identification and merging of duplicate transactions. . |
|
Save a lot of typing using secure Online Banking to download statements from your bank, using OFX over secure HTTPS.  For banks that don't support OFX, you can download Money or Quicken QFX files and import them. |
|
Storing your data in multiple formats, including XML, Encrypted Binary XML, SQL Compact Edition, SQL Local DB, or SQL Server. Your data can also be exported in XML or CSV formats. |
|
Instant graphs show everything from current spending trends in your accounts, to pie charts showing spending by category, to bar charts showing historical spending by category, to portfolio charts showing your current holdings across stocks, mutual funds, and other investment categories. |
|
Basic support for budgeting so you can set monthly goals for each category, then it provides a budget balancing feature where you can manually transfer money between categories, essentially treating your categories like mini bank accounts. This provides a flexibility in budgeting that makes the system more realistic and less rigid and therefore more likely to be used long term. |
|
Tax Categories can be assigned so that you can export your tax information to Turbo Tax. This includes a capital gains tax report for investments organized into short term and long term. |
|
Bug free account reconciliation (balancing) process that guarantees that once a statement is reconciled it stays that way. |
|
Quick Search gives you a powerful ability to find anything in many years of historical data almost instantly. For example, type (costco or arco) and fuel to find all transactions recoding a fuel purchase from either costco or arco. |
|
Attachments can be associated with each transaction which is handy for tracking additional information that doesn't fit in the memo field. You can also use this to store a scanned copy of your store receipts so you can find your receipts quickly and easily. |
|
Every numeric field in the application pops up a calculator so you can enter expressions to compute the value you want in that field. This saves you from having to switch between applications and makes entering data much more efficient. |
|
Modularity so new developers can easily add their own favorite features. For example, one developer added support for managing rental properties and loans while another added support for easily tracking sales tax. |
|
Multiple currencies. When you setup an account you can specify the currency used by that account. This is handy if you have overseas accounts. It is then able to handle the fact that transfers between accounts with different currencies will not necessarily have the same amount on either side of those transfers. |
|
Lastly, for additional eye candy, the application supports multiple UI themes, including a Visual Studio 2010 theme, a dark Metro theme and a silvery OSX theme. |
|
|


This document provide note and summary of RFC 5863, DKIM Development, Deployment, and Operations.
1. Introduction
This document provides practical tips for those who are developing DKIM software, mailing list managers, filtering strategies based on the output from DKIM verification, and DNS servers.
2. Using DKIM as Part of Trust Assessment
2.1. A Systems View of Email Trust Assessment
DKIM only claim about message content is that the content cited in the "DKIM-Signature:" field’s "h=" tag has been delivered without modification. That is, it asserts message content integrity — between signing and verifying — not message content validity.
+------+------+ +------+------+ | Author | | Recipient | +------+------+ +------+------+ | ^ | | | +------+------+ | -->| Handling |<-- | -->| Filter |<-- | +-------------+ | ^ V Responsible | +-------------+ Identifier +------+------+ | Responsible |. . . . . . . . . . .>| Identity | | Identity | . . | Assessor | +------+------+ . . +-------------+ | V . ^ ^ V . . | | +------------------.-------.--------------------+ | | | +------+------+ . . . > . +-------------+ | | | +-----------+ | | Identifier | | Identifier +--|--+ +--+ Assessment| | | Signer +------------->| Validator | | | Databases | | +-------------+ +-------------+ | +-----------+ | DKIM Service | +-----------------------------------------------+ Figure 1: Actors in a Trust Sequence Using DKIM
2.2. Choosing a DKIM Tag for the Assessment Identifier
DKIM has three values that specify identification information and it is easy to confuse their use, although only one defines the formal input and output of DKIM, with the other two being used for internal protocol functioning and adjunct purposes, such as auditing and debugging.
DKIM’s primary task is to communicate from the Signer to a recipient-side Identity Assessor a single Signing Domain Identifier (SDID) that refers to a responsible identity. DKIM MAY optionally provide a single responsible Agent or User Identifier (AUID). A receive-side DKIM verifier MUST communicate the Signing Domain Identifier (d=) to a consuming Identity Assessor module and MAY communicate the User Agent Identifier (i=) if present. To the extent that a receiver attempts to intuit any structured semantics for either of the identifiers, this is a heuristic function that is outside the scope of DKIM’s specification and semantics.
The single, mandatory value that DKIM supplies as its output is:
d= This tag specify domain name of signing identity, also called Signing Domain Identifier (SDID).
The adjunct values are:
s= This tag specifies the selector, to discriminate among different keys that can be used for the same SDID. As discussed in Section 4.3 of [RFC5585],
"If verifiers were to employ the selector as part of an assessment mechanism, then there would be no remaining mechanism for making a transition from an old, or compromised, key to a new one".
Consequently, the selector is not appropriate for use as part or all of the identifier used to make assessments.
i= This tag is optional and provides the Agent or User Identifier (AUID) on behalf of which the SDID is taking responsibility [RFC5672]. The identity can be in the syntax of an entire email address or only a domain name. The domain name can be the same as for "d=" or it can be a sub-name of the "d=" name.
|
Note
|
Although the "i=" identity has the syntax of an email address, it is not required to have those semantics. That is, "the identity of the user" need not be the same as the user’s mailbox. For example, the signer might wish to use "i=" to encode user-related audit information, such as how they were accessing the service at the time of message posting. Therefore, it is not possible to conclude anything from the "i=" string’s (dis)similarity to email addresses elsewhere in the header. |
So, "i=" can have any of these properties:
-
Be a valid domain when it is the same as "d="
-
Appear to be a subdomain of "d=" but might not even exist
-
Look like a mailbox address but might have different semantics and therefore not function as a valid email address
-
Be unique for each message, such as indicating access details of the user for the specific posting
This underscores why the tag needs to be treated as being opaque, since it can represent any semantics, known only to the signer.
Hence, "i=" serves well as a token that is usable like a Web cookie, for return to the signing Administrative Management Domain (ADMD) — such as for auditing and debugging. Of course in some scenarios the "i=" string might provide a useful adjunct value for additional (heuristic) processing by the Handling Filter.
2.3. Choosing the Signing Domain Name
For an entity creating DKIM signatures, it is likely that different portions of its mail will warrant different levels of trust.
It is therefore likely to be useful for a signer to use different "d=" subdomain names, for different message traffic streams, so that receivers can make differential assessments.
Generally, in a trust system, legitimate signers have an incentive to pick a small stable set of identities, so that recipients and others can attribute reputations to them.
Hence, the challenge is to determine a useful scheme for labeling different traffic streams. The most obvious choices are among different types of content and/or different types of authors. Although stability is essential, it is likely that the choices will change, over time, so the scheme needs to be flexible.
2.4. Recipient-Based Assessments
With DKIM, the Assessor can know that two messages with the same SDID are, in fact, signed by the same person or organization. This permits a far more stable and accurate assessment of mail traffic.
With the identifier(s) supplied by DKIM, the Assessor can consult an independent assessment service about the entity associated with the identifier(s). Another possibility is that the Assessor can develop its own reputation rating for the identifier(s).
2.5. Filtering
|=== .2+.| Stream Risk 3+^| Organizational Trust ^| Low ^| Medium ^| High
| Low | BENIGN: Moderate filter | DILIGENT: Mild filter | PRISTINE: Accept
| Medium | UNKNOWN: Strong filter | TYPICAL: Targeted filter | PROTECTED: Accept and Contact
| High | MALICIOUS: Block and Counter | NEGLIGENT: Block | COMPROMISED: Block and Contact |===
- Stream Risk
-
This is a measure of the recent history of a message stream and the severity of problems it has presented.
- Organizational Trust
-
This combines longer-term history about possible stream problems from that organization, and its responsiveness to problem handling.
Labels for the cells are meant as a general assessment of an organization producing that type of mail stream under that circumstance.
- Benign
-
There is some history of sending good messages, with very few harmful messages having been received. This stream warrants filtering that does not search for problems very aggressively, in order to reduce the likelihood of false positives.
- Diligent
-
The stream has had a limited degree of problems and the organization is consistently successful at controlling their abuse issues and in a timely manner.
- Pristine
-
There is a history of a clean message stream with no problems, from an organization with an excellent reputation. So, the filter primarily needs to ensure that messages are delivered; catching stray problem messages is a lesser concern. In other words, the paramount concern, here, is false positives.
- Unknown
-
There is no history with the organization. Apply an aggressive level of "naive" filtering, given the nature of the public email environment.
- Typical
-
The stream suffers significant abuse issues and the organization has demonstrated a record of having difficulties resolving them in a timely manner, in spite of legitimate efforts. Unfortunately, this is the typical case for service providers with an easy and open subscription policy.
- Protected
-
An organization with a good history and/or providing an important message stream for the receiving site is subject to a local policy that messages are not allowed to be blocked, but the stream is producing a problematic stream. The receiver delivers messages, but works quickly with the organization to resolve the matter.
- Malicious
-
A persistently problematic message stream is coming from an organization that appears to contribute to the problem. The stream will be blocked, but the organization’s role is sufficiently troubling to warrant following up with others in the anti-abuse or legal communities, to constrain or end their impact.
- Negligent
-
A persistently problematic message stream is coming from an organization that does not appear to be contributing to the problem, but also does not appear to be working to eliminate it. At the least, the stream needs to be blocked.
- Compromised
-
An organization with a good history has a stream that changes and becomes too problematic to be delivered. The receiver blocks the stream and works quickly with the organization to resolve the matter.
3. DKIM Key Generation, Storage, and Management
3.1. Private Key Management: Deployment and Ongoing Operations
Best practices on key managements,
-
The signing key itself needs to be under direct control of as few key holders as possible.
-
If a key holder were to leave the organization, all signing keys held by that key holder need to be withdrawn from service and, if appropriate, replaced.
-
If key management hardware support is available, it needs to be used.
-
If keys are stored in software, appropriate file control protections need to be employed, and any location in which the private key is stored in plaintext form needs to be excluded from regular backup processes and is best not accessible through any form of network including private local area networks.
-
A signature key needs to exist in exactly one location and be erased when no longer used.
-
Ideally, a signature key pair needs to be generated as close to the signing point as possible, and only the public key component transferred to another party. If this is not possible, the private key needs to be transported in an encrypted format that protects the confidentiality of the signing key.
-
Key escrow schemes (managed by third party) are not necessary and are best not used.
-
An operational practice in which the private key is stored in tamper-proof hardware and changed once a year is considerably more desirable than one in which the signature key is changed on an hourly basis but maintained in software.
To enable accountability and auditing:
-
Responsibility for the security of a signing key needs to ultimately vest in a single named individual.
-
Where multiple parties are authorized to sign messages, each signer needs to use a different key to enable accountability and auditing.
3.2. Storing Public Keys: DNS Server Software Considerations
Ideally, DNS Security (DNSSEC) [RFC4034] needs to be employed in a configuration that provides protection against record insertion attacks and zone enumeration.
3.3. Assignment of Selectors
It is intended that assessments of DKIM identities be based on the domain name, and not include the selector.
3.4. Per-User Signing Key Management Issues
If per-user signing keys are assigned for internal purposes, the following issues need to be considered before using such signatures as an alternative to traditional edge signing at the outbound MTA:
-
External verifiers will be unable to make use of the additional signature granularity without access to additional information passed out of band with respect to [RFC4871].
-
If the number of user keys is large, the efficiency of local caching of key records by verifiers will be lower.
-
A large number of end users is be less likely to do an adequate job of managing private key data securely on their personal computers than is an administrator running an edge MTA.
3.5. Third-Party Signer Key Management and Selector Administration
Best practices when signer is handled by other provider,
-
Signature keys used by a third-party signer need to be kept entirely separate from those used by the domain holder and other third-party signers.
-
The signature key pair needs to be generated by the third-party signer and the public component of the key transmitted to the domain holder, rather than have the domain holder generate the key pair and transmit the private component to the third-party signer.
3.6. Key Pair / Selector Life Cycle Management
Example of key deployment process,
-
A Key Pair is generated by the signing device.
-
A proposed key selector record is generated and transmitted to the DNS administration infrastructure.
-
The DNS administration infrastructure verifies the authenticity of the key selector registration request. If accepted:
-
A key selector is assigned.
-
The corresponding key record is published in the DNS.
-
Wait for DNS updates to propagate (if necessary).
-
Report assigned key selector to signing device.
-
-
The signer verifies correct registration of the key record.
-
The signer begins generating signatures using the new key pair.
-
The signer terminates any private keys that are no longer required due to issue of replacement.
Example of key termination process,
-
The signer stops using the private key for signature operations.
-
The signer deletes all records of the private key, including in-memory copies at the signing device.
-
The signer notifies the DNS administration infrastructure that the signing key is withdrawn from service and that the corresponding key records can be withdrawn from service at a specified future date.
-
The DNS administration infrastructure verifies the authenticity of the key selector termination request. If accepted,
-
The key selector is scheduled for deletion at a future time determined by site policy
-
Wait for deletion time to arrive.
-
The signer either publishes a revocation key selector with an empty public-key data (p=) field, or deletes the key selector record entirely.
-
-
As far as the verifier is concerned, there is no functional difference between verifying against a key selector with an empty "p=" field, and verifying against a missing key selector: both result in a failed signature and the signature needs to be treated as if it had not been there. However, there is a minor semantic difference: with the empty "p=" field, the signer is explicitly stating that the key has been revoked. The empty "p=" record provides a gravestone for an old selector, making it less likely that the selector might be accidentally reused with a different public key.
4. Signing
Signing a message require two services,
-
A DNS service where one can maintain domain name and their resource record.
-
A trusted service where outgoing email within organization will be added the "DKIM-Signature:" header field.
4.1. DNS Record
Initial DKIM DNS information is contained within TXT RRs.
The "DKIM-Signature:" header in the message contains the "d=" tag with the basic domain name doing the signing and serving as output to the Identity Assessor and the s= tag with the selector that is added to the name, for finding the specific public key. Hence, the relevant "<selector>._domainkey.<domain-name>" DNS record needs to contain a DKIM-related RR that provides the public key information
4.2. Signing Module
The module doing signing can be placed anywhere within an organization’s trusted Administrative Management Domain (ADMD); obvious choices include department-level posting agents, as well as outbound boundary MTAs to the open Internet.
Given that DKIM is intended for use during email transit, rather than for long-term storage, it is expected that keys will be changed regularly. For administrative convenience, it is best not to hard-code key information into software.
4.3. Signing Policies and Practices
Every organization (ADMD) will have its own policies and practices for deciding when to sign messages (message stream) and with what domain name, selector, and key.
5. Verifying
5.1. Intended Scope of Use
DKIM requires that a message with a signature that is found to be invalid is to be treated as if the message had not been signed at all.
If a DKIM signature fails to verify, it is entirely possible that the message is valid and that either there is a configuration error in the signer’s system (e.g., a missing key record) or that the message was inadvertently modified in transit. If messages with invalid signatures were to be treated preferentially to messages with no signatures whatsoever, attackers will simply add invalid signature blocks to gain the preferential treatment.
5.2. Signature Scope
Verifiers need to consider only the part of the message that is inside the scope of the message as being authenticated by the signature.
5.3. Design Scope of Use
Valid DKIM signature does not represent proof positive that a valid claim of responsibility was made for it by the indicated party, that the message is authentic, or that the message is not abusive. In particular:
-
The legitimate private key holder might have lost control of its private key.
-
The legitimate domain holder might have lost control of the DNS server for the zone from which the key record was retrieved.
-
The key record might not have been delivered from the legitimate DNS server for the zone from which the key record was retrieved.
-
Ownership of the DNS zone might have changed.
5.4. Inbound Mail Filtering
Messages that carry a valid DKIM signature from a trusted source can be whitelisted, avoiding the need to perform computation and hence energy-intensive content analysis to determine the disposition of the message.
Non-Verifying Adaptive Spam Filtering Systems. Adaptive (or learning) spam filtering mechanisms that are not capable of verifying DKIM signatures need to, at minimum, be configured to ignore DKIM header data entirely.
5.5. Messages Sent through Mailing Lists and Other Intermediaries
The intermediary that change the message content are strongly encouraged to deploy DKIM signing so that a verifiable claim of responsibility remains available to parties attempting to verify the modified message.
5.6. Generation, Transmission, and Use of Results Headers
Consider the cases where:
-
The application relying on DKIM signature verification is not capable of performing the verification.
-
The message can be modified after the signature verification is performed.
-
The signature key cannot be available by the time that the message is read.
In such cases, it is important that the communication link between the signature verifier and the relying application be sufficiently secure to prevent insertion of a message that carries a bogus results header.
6. Taxonomy of Signatures
6.1. Single Domain Signature
The simplest case is when an organization use their own domain in the SDID of the signatures. The addresses in the "RFC5322.From" field would also be organization’s domain name.
6.2. Parent Domain Signature
An organization with multiple active subdomains may apply the same (single) signature domain to mail from all subdomains.
Another approach to distinguishing the streams using a single DKIM key would be to leverage the AUID [RFC5672] (i= tag) in the DKIM signature to differentiate the mail streams. For example, marketing email would be signed with<EMAIL_ADDRESS>and "d=domain.example".
6.3. Third Party Signature
A signature whose domain does not match the domain of the RFC5322.From address is sometimes referred to as a third-party signature.
Third-party signatures encompass a wide range of identities. Some of the more common are:
Service Provider: An organization may outsourced their email to other provider. Such provider can DKIM-sign outbound mail with their own identifier.
Parent Domain: As discussed above, organizations choosing to apply a parent-domain signature to mail originating from subdomains can have their signatures treated as third party by some verifiers, depending on whether or not the "t=s" tag is used to constrain the parent signature to apply only to its own specific domain.
Reputation Provider: Such a signature would indicate to receivers that the message was being vouched for by that third party.
6.4. Using Trusted Third Party (TTP) Senders
A different model arises when an organization uses a trusted third-party sender for certain key business functions, but still wants that email to benefit from the organization’s own identity and reputation.
This can be done by having the third party generate a key pair that is designated uniquely for use by that trusted third party and publishing the public key in the controlling organization’s DNS domain, thus enabling the third party to sign mail using the signature of the controlling organization.
6.4.1. DNS Delegation
In this case, Company A would create a subdomain benefits.companya.example, and delegate the DNS management of that subdomain to the benefits company so it could maintain its own key records. When revocation becomes necessary, Company A could simply remove the DNS delegation record.
6.5. Multiple Signatures
One important caveat to the use of multiple signatures is that there is currently no clear consensus among receivers on how they plan to handle them. The opinions range from ignoring all but one signature (and the specification of which of them is verified differs from receiver to receiver), to verifying all signatures present and applying a weighted blend of the trust assessments for those identifiers, to verifying all signatures present and simply using the identifier that represents the most positive trust assessment. It is likely that the industry will evolve to accept multiple signatures using either the second or third of these, but it can take some time before one approach becomes pervasive.
There are a number of situations where applying more than one DKIM signature to the same message might make sense. A few examples are:
-
Companies with multiple subdomain identities. A company that has multiple subdomains sending distinct categories of mail might choose to sign with distinct subdomain identities to enable each subdomain to manage its own identity. However, it might also want to provide a common identity that cuts across all of the distinct subdomains. For example, Company A can sign mail for its sales department with a signature where "d=sales.companya.example" and a second signature where "d=companya.example".
-
Service Providers. A service provider can, as described above, choose to sign outbound messages with either its own identity or an identity unique to each of its clients (possibly delegated). However, it can also do both: sign each outbound message with its own identity as well as with the identity of each individual client. For example, ESP A might sign mail for its client Company B with its service provider signature "d=espa.example", and a second client-specific signature where "d=" either "companyb.example" or "companyb.espa.example".
-
Forwarders. Some forwarders such as mailing lists or "forward article to a friend" services might choose to add their own signatures to outbound messages to vouch for them having legitimately originated from the designated service. In this case, the signature would be added even in the presence of a preexisting signature, and both signatures would be relevant to the verifier.
Any forwarder that modifies messages in ways that will break preexisting DKIM signatures needs to sign its forwarded messages.
-
Reputation Providers. It is possible that they, or other organizations willing to put their "seal of approval" on an email stream, might choose to use a DKIM signature to do it. In nearly all cases, this "reputation" signature would be in addition to the author or originator signature.
7. Example Usage Scenarios
This section provides some examples of usage scenarios for DKIM deployments.
7.1. Author’s Organization - Simple
In this scenario, Company A need only generate a single signing key and publish it under their top-level domain (companya.example); the signing module would then tailor the AUID value as needed at signing time.
7.2. Author’s Organization - Differentiated Types of Mail
An organization may distinguish email from several department, where each department may have their own subdomain with its unique signing keys.
7.3. Author Domain Signing Practices (ADSP)
7.3.1. Introduction
A domain might decide to sign all of their outgoing mail. In such a configuration, the absence of a signature would be more significant than for the general case.
Sending domains that do not control all legitimate outbound mail purporting to be from their domain are likely to experience delivery problems with some percentage of that mail. Administrators evaluating ADSP for their domains needs to carefully weigh the risk of phishing attacks against the likelihood of undelivered mail.
7.3.2. A Few Definitions
An address in the RFC5322.From header field of a message is defined as an "Author Address", and an "Author Domain" is defined as anything to the right of the '@' in an author address.
An "Author Signature" is thus any valid signature where the value of the SDID matches an author domain in the message.
Signers wishing to publish an Author Domain Signing Practices (ADSP) [RFC5617] record describing their signing practices will thus want to include an author signature on their outbound mail to avoid ADSP verification failures.
7.3.3. Some ADSP Examples
An organization (Company A) can specify its signing practices by publishing an ADSP record with "dkim=all" or "dkim=discardable". Any email with an RFC5322.From address that uses the domain where the ADSP record is published that does not have a valid author signature is at risk of being misdelivered or discarded.
For example, email with an RFC5322.From address of<EMAIL_ADDRESS>needs to have an author signature where the SDID value is "companyA.example" or it will fail an ADSP validation. If a message with an RFC5322.From address of<EMAIL_ADDRESS>has a signature with "d=marketing.companyA.example", that message will fail the ADSP check because the signature would not be considered a valid author signature.
In particular, in order to prevent mail from being negatively impacted or even discarded at the receiver, it is essential to perform a thorough survey of outbound mail from a domain before publishing an ADSP policy of anything stronger than "unknown".
7.4. Delegated Signing
A company might outsource its department’s mail service to other provider. For example, Company A with marketing department, marketing.company-a.example, might be managed by provider X.
Security concerns dictate that the keys be generated by the organization that plans to do the signing so that there is no need to transfer the private key. In other words, the provider X would generate keys.
7.5. Independent Third-Party Service Providers
An Email Service Provider (ESP A) might want to share its own mailing reputation with its clients, and might sign all outgoing mail from its clients with its own d= domain (e.g., d=espa.example).
When the ESP wants to distinguish among its clients, it has two options:
-
Share the SDID domain and use the AUID value to distinguish among the clients, e.g., a signature on behalf of client A would have "d=espa.example" and<EMAIL_ADDRESS>(or "i=clienta@espa.example").
-
Extend the SDID domain, so there is a unique value (and subdomain) for each client, e.g., a signature on behalf of client A would have "d=clienta.espa.example".
7.6. Mail Streams Based on Behavioral Assessment
An ISP (ISP A) might want to assign signatures to outbound mail from its users according to each user’s past sending behavior (reputation). ISP A (ispa.example) can configure subdomains corresponding to the assessment categories (e.g., good.ispa.example, neutral.ispa.example, bad.ispa.example), and use these subdomains in the "d=" value of the signature.
The signing module can also set the AUID value to have a unique user ID (distinct from the local-part of the user’s email address), for example<EMAIL_ADDRESS>7.7. Agent or Mediator Signatures
Some examples of agents might be a mailing list manager, or the "forward article to a friend" service that many online publications offer. In most of these cases, the signature is asserting that the message originated with, or was relayed by, the service asserting responsibility. In general, if the service is configured in such a way that its forwarding would break existing DKIM signatures, it needs to always add its own signature.
8. Usage Considerations
8.1. A Non-Standard Submission and Delivery Scenarios
The robustness of DKIM’s verification mechanism is based on the fact that only authorized signing modules have access to the designated private key. This has the side effect that email submission and delivery scenarios that originate or relay messages from outside the domain of the authorized signing module will not have access to that protected private key, and thus will be unable to attach the expected domain signature to those messages. Such scenarios include mailing lists, courtesy forwarders, MTAs at hotels, hotspot networks used by traveling users, and other paths that could add or modify headers, or modify the message body.
For example, assume that Joe have email address at<EMAIL_ADDRESS><EMAIL_ADDRESS>and<EMAIL_ADDRESS>When Joe send email through "isp-1" as<EMAIL_ADDRESS>that email cannot have a signature with d=company-a.example, because "isp-1" have no access to company-a.example’s private key. The email will have signature from "isp-1.example" instead.
8.2. Protection of Internal Mail
If the organization signs all of its mail, then its boundary MTAs can look for mail purporting to be from the organization that does not contain a verifiable signature. Such mail can, in most cases, be presumed to be spurious.
However, other paths could add or modify the can modify messages in ways that will invalidate an existing DKIM signature. Such breakage is particularly relevant in the presence of Author Domain Signing Practices.
8.3. Signature Granularity
It is possible to administer subdomains or otherwise adjust signatures in a way that supports per-user identification. This user-level granularity can be specified in two ways: either by sharing the signing identity and specifying an extension to the "i=" value that has a per-user granularity or by creating and signing with unique per-user keys.
In most cases, it would be impractical to sign email on a per-user granularity. Such an approach would be
likely to be ignored: In most cases today, if receivers are verifying DKIM signatures, they are in general taking the simplest possible approach. In many cases, maintaining reputation information at a per-user granularity is not interesting to them, in large part because the per-user volume is too small to be useful or interesting.
difficult to manage: Any scheme that involves maintenance of a significant number of public keys might require infrastructure enhancements or extensive administrative expertise. This can create significant and often unnecessary management complexity.
For those who choose to represent user-level granularity in signatures, the performance and management considerations above suggest that it would be more effective to do so by specifying a local part or subdomain extension in the "i=" tag rather than by extending the "d=" domain and publishing individual keys.
8.4. Email Infrastructure Agents
Outbound
An MSA or an outbound MTA used for mail submission needs to ensure that the message sent is in compliance with the advertised email sending policy. If email messages does not comply it needs to be able to generate an operator alert.
If MUAs add their own signature, and MSA needs to perform operation on a message to make it comply with its email sending policy, it needs to do so in a way that would not break those signatures.
MUA are generally not under direct control of organization and more vulnerable to attack and compromise, which would jeopardize the integrity and reputation of the organization. So, MUA ability to sign is not encouraged.
Inbound
When an organization deploys DKIM, it needs to make sure that its email infrastructure components that do not have primary roles in DKIM handling do not modify message in ways that prevent subsequent verification.
Intermediaries An email intermediary is both an inbound and outbound MTA. If the intermediary modifies a message in a way that breaks the signature, the intermediary,
-
needs to deploy abuse filtering measures on the inbound mail, and
-
probably also needs to remove all signatures that will be broken.
The intermediary can,
-
verify the message signature prior to modification.
-
incorporate an indication of the verification results into the message, such as using an Authentication-Results header field [RFC5451].
-
sign the modified message including the verification results (e.g., the Authentication-Results header field).
8.5. Mail User Agent
Outbound
An MUA can sign a message, even if its not encouraged. In this case the signature from MUA is an addition to signature added by MSA. If user software act as MSA and employed for sending directly to a receiving ADMD, the user software need to be considere an outbound MTA.
Inbound
An MUA can rely on report of DKIM verification from inbound MTA/MDA, or they can perform verification directly. If verification fails, the message is to be treated the same as a message that does not have a signature.
An MUA that looks for an Authentication-Results header field needs to be configurable to choose which Authentication-Results header fields are considered trustable. The MUA developer is encouraged to re-read the Security Considerations of [RFC5451].
Verified DKIM signature cannot be used by an MUA to indicate that a message is to be treated better than a message without a verified DKIM signature. However, it can be used as input into a reputation system.


Something went wrong while displaying this webpage. To continue, reload or go to another page.
Something went wrong while displaying this webpage. To continue, reload or go to another page.
Something went wrong while displaying this webpage. To continue, reload or go to another page.
Something went wrong while displaying this webpage. To continue, reload or go to another page.


--- title: Contact heading: Get in touch today description: We'd love to help you build the AWS infrastructure you need. ---


The primary goal of the tool is to give developers, customizers and administrators of Microsoft Dynamics CRM an easy to use tool to create queries for views, reports and code. This includes the possibility to execute the queries to verify the results in various formats.
Learn from the Introduction to FXB on my blog Jonas Rapp's CRM trenches.
Watch FXB on GitHub to recieve notifications on new releases and updates.
Discuss if you have feedback, questions or just want to talk FXB.
Submit issues for bugs and improvements in the issues section.
The tool will assist in three major areas:
1. Constructing FetchXML in ways that Advanced Find cannot
2. Querying CRM for information not (easily) found in the CRM UI
3. Developer assistance
The tool reads metadata from CRM to assist with selecting entities, attributes, relations and to perform validation of condition values.
To make it more appealing, there is also the possibility to have it show "Friendly names", which will replace the technical names of entities and attributes with their display names in the users' currently selected language, much like Advanced Find does.
Click OPEN CHAT in the bottom right corner of this web page to ask questions, give feedback, or simply to join the discussion!
| Plugin Trace Viewer: | ptv.xrmtoolbox.com |
| Auto Number Manager: | anm.xrmtoolbox.com |
| Bulk Data Updater: | github.com/rappen/BulkDataUpdater |
| Latebound Constants Generator: | github.com/rappen/LateboundConstantsGenerator |
| Related Records Analyzer: | github.com/rappen/RelatedRecordsAnalyzer |
| Latest release | |
|---|---|
| Version | Loading version... |
| Publish date | Loading publish date... |
| Downloads (total) + |
Loading download count...
|
| Issues | |
| Open | |
| Total |


About jMock
JMock is a library that supports test-driven
development of Java code with mock objects.
Mock objects help you design and test the interactions between the
objects in your programs.
The jMock library:
- makes it quick and easy to define mock objects, so you don't break
the rhythm of programming.
- lets you precisely specify the interactions between your objects,
reducing the brittleness of your tests.
- works well with the autocompletion and refactoring features of your
IDE
- plugs into your favourite test framework
- is easy to extend.


Visualize Commits to a particular file and how it affects dependecies
The implementation supports two display modes and two spacing mode. Two display modes are Community Mode and Latest Commit Mode.
Community view: this is the default mode and it shows all contributions from different authors, color-coding portions to indicate the author.


---
layout: page
title: "my name is alan genser"
date: 2014-02-02 10:41
comments: true
sharing: true
footer: true
---
If you are reading this, it is most likely because I have expressed a desire to work with you and your company.
I am an aspiring web developer seeking employment that will further my educational and career goals.
Currently, I am enrolled in Bloc.io learning Ruby on Rails and I work as a rigger for the IATSE Local 11.
My well developed compliment of skills can be leveraged to bring value to your enterprise.


This package contains source components, i.e., blocks which have only output signals. These blocks are used as signal generators for Real, Integer and Boolean signals.
All Real source signals (with the exception of the Constant source) have at least the following two parameters:
| offset | Value which is added to the signal |
| startTime | Start time of signal. For time < startTime, the output y is set to offset. |
The offset parameter is especially useful in order to shift the corresponding source, such that at initial time the system is stationary. To determine the corresponding value of offset, usually requires a trimming calculation.
| Name | Description |
|---|---|
| RealExpression | Set output signal to a time varying Real expression |
| IntegerExpression | Set output signal to a time varying Integer expression |
| BooleanExpression | Set output signal to a time varying Boolean expression |
| Clock | Generate actual time signal |
| Constant | Generate constant signal of type Real |
| Step | Generate step signal of type Real |
| Ramp | Generate ramp signal |
| Sine | Generate sine signal |
| Cosine | Generate cosine signal |
| ExpSine | Generate exponentially damped sine signal |
| Exponentials | Generate a rising and falling exponential signal |
| Pulse | Generate pulse signal of type Real |
| SawTooth | Generate saw tooth signal |
| Trapezoid | Generate trapezoidal signal of type Real |
| KinematicPTP | Move as fast as possible along a distance within given kinematic constraints |
| KinematicPTP2 | Move as fast as possible from start to end position within given kinematic constraints with output signals q, qd=der(q), qdd=der(qd) |
| TimeTable | Generate a (possibly discontinuous) signal by linear interpolation in a table |
| CombiTimeTable | Table look-up with respect to time and linear/periodic extrapolation methods (data from matrix/file) |
| BooleanConstant | Generate constant signal of type Boolean |
| BooleanStep | Generate step signal of type Boolean |
| BooleanPulse | Generate pulse signal of type Boolean |
| SampleTrigger | Generate sample trigger signal |
| BooleanTable | Generate a Boolean output signal based on a vector of time instants |
| RadioButtonSource | Boolean signal source that mimics a radio button |
| IntegerConstant | Generate constant signal of type Integer |
| IntegerStep | Generate step signal of type Integer |
| IntegerTable | Generate an Integer output signal based on a table matrix with [time, yi] values |


ÁVision Build Log
Tool Versions:
IDE-Version: Ž╠Vision V<IP_ADDRESS> Copyright (C) 2016 ARM Ltd and ARM Germany GmbH. All rights reserved. License Information: song Microsoft, Microsoft, LIC=---- Tool Versions: Toolchain: MDK-Lite Version: 5.18 Toolchain Path: d:\Keil_v5\ARM\ARMCC\Bin C Compiler: Armcc.exe V5.06 update 1 (build 61) Assembler: Armasm.exe V5.06 update 1 (build 61) Linker/Locator: ArmLink.exe V5.06 update 1 (build 61) Library Manager: ArmAr.exe V5.06 update 1 (build 61) Hex Converter: FromElf.exe V5.06 update 1 (build 61) CPU DLL: SARMCM3.DLL V5.18 Dialog DLL: DARMSTM.DLL V<IP_ADDRESS> Target DLL: STLink\ST-LINKIII-KEIL_SWO.dll V<IP_ADDRESS> Dialog DLL: TARMSTM.DLL V<IP_ADDRESS>Project:
E:\networking\main-node\USER\LED.uvproj Project File Date: 04/14/2016Output:
*** Using Compiler 'V5.06 update 1 (build 61)', folder: 'd:\Keil_v5\ARM\ARMCC\Bin' Rebuild target 'Target 1' compiling stm32f10x_it.c... compiling system_stm32f10x.c... compiling main.c... main.c(14): warning: #161-D: unrecognized #pragma #pragma comment(lib,"ws2_32.lib") main.c(15): warning: #1295-D: Deprecated declaration _send_pingreq - give arg types unsigned short _send_pingreq(); main.c(16): warning: #1295-D: Deprecated declaration _recieve_pingreq - give arg types unsigned short _recieve_pingreq(); main.c(19): warning: #1295-D: Deprecated declaration USART_rec - give arg types int USART_rec(); main.c(25): warning: #1295-D: Deprecated declaration rt_init - give arg types void rt_init(); main.c(26): warning: #1295-D: Deprecated declaration insert_rt_next_doublenew - give arg types void insert_rt_next_doublenew(); main.c(29): warning: #1295-D: Deprecated declaration recv_process_outside - give arg types int recv_process_outside(); main.c(272): warning: #177-D: variable "rc" was declared but never referenced int rc = USART_ERR_NOMESSAGE; main.c(247): warning: #177-D: variable "times" was declared but never referenced u16 times = 0; main.c(290): warning: #940-D: missing return statement at end of non-void function "_recieve_pingreq" } main.c(322): warning: #177-D: variable "next_token1" was declared but never referenced char *next_token1 = NULL; main.c(435): warning: #940-D: missing return statement at end of non-void function "routetable" } main.c: 12 warnings, 0 errors compiling test.c... compiling malloc.c... compiling led.c... compiling delay.c... compiling core_cm3.c... compiling sys.c... compiling usart.c... ..\SYSTEM\usart\usart.c(141): warning: #177-D: variable "_usart_recv_packet_len" was declared but never referenced u16 _usart_recv_packet_len; ..\SYSTEM\usart\usart.c: 1 warning, 0 errors assembling startup_stm32f10x_hd.s... compiling stm32f10x_gpio.c... compiling stm32f10x_rcc.c... compiling misc.c... compiling stm32f10x_usart.c... linking... Program Size: Code=8548 RO-data=632 RW-data=156 ZI-data=254716 FromELF: creating hex file... "..\OBJ\LED.axf" - 0 Error(s), 13 Warning(s). Build Time Elapsed: 00:00:04


Welcome to my working notes - a personal knowledge space made for learning and ideation.
It's a collection of atomic, ever-growing notes that I keep updating as I gain more clarity over the topic.
If notes don't make much sense to you - I am sorry, and if it does make sense, do let me know your thoughts!
Also, here are a few handpicked notes.


Species (1995) * 1/2 A movie review by Serdar Yegulalp Copyright 1998 by Serdar Yegulalp
CAPSULE: Oh, ick.
SPECIES is a forehead-knockingly bad movie. You know what I'm talking about: that's when you sit there, slack-jawed, staring at the screen, and then just pound your first into your forehead in total disbelief at what you're witnessing. It's so awful it's downright charming; it's about as bad and as *loud* as STARGATE.
Here's the "plot": Scientists recieve a transmission from space that seems to consist of a genetic code. After synthesizing it and crossbreeding it with human DNA, they develop Sil: an innocent-looking, wide-eyed girl-thing who, for reasons too protracted to list here, has to be destroyed.
The government corralls together a team of "experts" -- mostly at screwing up, from the look of it: an assassin (Michael Madsen, looking even dopier than he did in RESEVOIR DOGS), an empath (Forest Whitaker, looking like the Pillsbury Doughboy), another scientist, and the creator of Sil (Ben Kingsley, the best thing in the movie). Most of them will of course be murdered in various creative ways, but not before they get to show their various "skills". Smithson, the empath, for instance, has the uncanny ability to just spit out where Sil is and what she's doing. Thanks to the fact that his skill doesn't have any explicit rules, it leaves us scratching our heads as to why he doesn't just produce a map and draw an X on it.
Sil, as it turns out, is growing and developing at a furious rate -- which, of course, requires that she murder several people to feed herself. Which is nothing compared to the vigor she exhibits when trying to find a mate. The adult Sil (played by Natasha Henstridge) looks like she just walked off the runway of a fashion show and has no trouble finding nookie in California, and the movie gets some good laughs out of everyone reacting to her total guilelessness. There is also one moment -- maybe salvaged from an earlier, better draft of the script -- where she tries to to explain who she is, and can't. But the main purpose of the movie is never in doubt: violence, gratuitous nudity, ear-hammering sound effects. The last one is really ticking me off in a lot of movies lately: why, for instance, do we alwasy have swooshing sound effects to accompany the image of a FLASHLIGHT playing across the camera lens? Light beams didn't disturb the air much the last time I checked.
  And when you're sober, it plays like a game of Spot-the-Plot-Hole, where the holes are big enough to park elephants inside. I yearned for a horde of killer tomatoes to spruce things up.
<EMAIL_ADDRESS>EFNet IRC: GinRei [new email address coming soon] ICQ: 934998 http://www.io.com/~syegul another worldly device... NEW WEB SITE: http://cablehouse.dyn.ml.org ...and the mandate of heaven you can crush me as I speak/write on rocks what you feel/now feel this truth
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


BC Explorer
Back
Home
Characteristics
Device_ID:
Service Name:
Index:
UUID:
Property:
see descriptors
operate charactoristisc


You need to enable JavaScript to run this app, what kind of browser are you using MAN?!?!?!?!
/´¯¯/) ,/¯ / / / /´¯/' '/´¯¯`·¸ /'/ / / /¨¯\ ('( ´ ´ ¯~/' ') \ ' / \ \ _ ·´ \ ( \ \
watch out for help:
http://outdatedbrowser.com


Completing your order…
We’re just waiting for the confirmation from your bank… This might take a moment but feel free to close this page.
We’ll send your receipt via email shortly.
Thanks for your order!
Woot! You successfully made a payment with Stripe.
We just sent your receipt to your email address, and your items will be on their way shortly.
Thanks! One last step!
Please make a payment using the details below to complete your order.
Oops, payment failed.
It looks like your order could not be paid at this time. Please try again or select a different payment option.


Meet The Three Beautiful Ibrahim Sisters (+Photos)
by vanessa nordziGhanaian curvaceous actress, model, singer and entrepreneur Juliet Ibrahim has time without number stand out as one of Africa’s most beautiful celebrities. Until you are told, it is difficult to believe Juliet Ibrahim is a Ghanaian. A critical look at her sisters will prove to you that, beauty is indeed in the eyes of the beholder.
The popular actress is born to Lebanese father Mr Hussein Ibrahim and Ghanaian mother Sarah Elizabeth Ibrahim. Juliet has two lovely sisters. Sonia Ibrahim and Nadia Ibrahim. The two sisters are already following in Juliet Ibrahim’s footsteps by being in the limelight as her. Both of them are up-and-coming actresses and models and are quite good at what they do.
It’s is without a doubt that beauty and talent indeed runs in the family. Well, the youngest of the sisters, Nadia recently celebrated her birthday and flooded the internet with cute photos. Her two sisters were there to make her celebrate her birthday in grand style.
Juliet Ibrahim took to her Instagram page to share some adorable photos of the beautiful moment. For some reason, these beautiful ladies remind me of the movie “Charlie’s Angels”. Checkout some of their beautiful photos below;


HTML Elements
Each element has a purpose.
Let's look at links (this is header 2 btw)
Link to pluralsight
Prepare for tables
Author
Title
Author 1
Author 1's work
Author 2
Author 2's work


Auto mart
Home
Inventory
Pricing
Blog
Dealings
Admin account
Cars
lamborghini
$30000
Gerardo
delete
lamborghini
$30000
Gerardo
lamborghini
$30000
Gerardo
lamborghini
$30000
Gerardo


Sparta API
Sparta API
(current)
Features
Pricing
Dropdown link
Action
Another action
Something else here
Sparta API
Name
Description
Rating
Bandicoot
Platform
E
Overwatch
FPS
12
Image Gallery
Here is my amazing image gallery
Flexbox can be used to good effect with any one-dimensional display of items eg a photo gallery
Flex Image Gallery
Here is my amazing image gallery


Namespace XRTK.Extensions
Classes
AnimationCurveExtensions
Extension methods for Unity's AnimationCurve class
ArrayExtensions
Array type method extensions.
BoundsExtensions
Extension methods for Unity's Bounds struct
CameraExtensions
Extension methods for the Unity's Camera class
CanvasExtensions
Extensions for the Canvas class.
CollectionsExtensions
Extension methods for .Net Collection objects, e.g. Lists, Dictionaries, Arrays
Color32Extensions
Extension methods for Unity's Color32 struct
ComparerExtensions
Extension methods for .Net Comparer's
ComponentExtensions
Extensions methods for the Unity Component class. This also includes some component-related extensions for the GameObject class.
ConverterExtensions
DataModelConfigurationExtensions
DoubleExtensions
Extension methods for the .Net Double struct
EnumerableExtensions
Extension methods for the .Net IEnumerable class
EventSystemExtensions
Extension methods for Unity's EventSystem
FloatExtensions
Extension methods for the .Net Float struct
GameObjectExtensions
Extension methods for Unity's GameObject class
InteractionSourceExtensions
Extensions for the InteractionSource class to add haptics and expose the renderable model.
LayerExtensions
Extension methods for Unity's LayerMask struct
MathExtensions
Extension methods and helper functions for various math data
ProcessExtensions
Process Extension class.
QuaternionExtensions
Extension methods for Unity's Quaternion struct.
RayExtensions
Extension methods for Unity's Ray struct
StringExtensions
String Extensions.
TextureExtensions
TransformExtensions
Extension methods for Unity's Transform class
UnityObjectExtensions
Extension methods for Unity's Object class
VectorExtensions
Extension methods for Unity's Vector struct