PAM Build History

Build

Notes

039

10/14/1998

Significant changes

  • Numerous bug fixes for running on Solaris, especially with the block editing and reconfiguration tool (BERT).
  • Significant testing and fixing of FTP input and FTP output (affecting several agents)
  • Combined and merged code for agents that output to the directory system (putFTP, putStarBurst, putLocalPublisher, putDirectory) - should lead to more consistent behavior

Minor changes

  • Added new http query to help remote administration /PAM/Log.query - gets a copy of the log file; added user password challenge capability so the general public cannot access the log file if you don't want (access is wide open by default)
  • Ability to activate an agent with no schedule (from the api)
  • Resurrected an older Altavista format so that internal sites that use the older Altavista engine can still be accessesed using the Altavista agent
  • Fixes to MIME decoding.

Still to do:

  • Write developer doc on how to add a module in the pdif grammar
  • Write doc on what are the existing and setable product attributes - id, description, expiration, topic
  • Documentation for makeBackWebSubscriptionPage, checkpoint
  • Alphabetize agent attributes
  • Fix acceptSMTPMail type to PIM (currently Juggler)
  • Bert blocks should change color when selected
  • Add statistics on how many messages are available and read on tableOfContents
  • Reduce log messages on screen for agents with frequent updates

038

8/27/1998

User Interface Changes

  • Bert, the channel builder gui took its first step towards integration with PAM. The PAM Tool Picker window now lists Bert as an option. Bert can still be run as a standalone program from the bert.bat file
  • Bert can add and delete attributes to agents. Prior to this change you could not create additional attributes beyond those already supplied by the agent. This made it impossible to use Bert to support meta-data attributes

Significant changes

  • Startup wizard helps create the initial PAM startup file for new installations.
  • New getStockQuote PIM/Source
  • getBNN PIM/Source is now part of the standard distribution. The Broadcast News Naviagotor is a Mitre service that is being used in a number of government prototypes. Making getBNN public will facilitate those prototypes and demonstrations.
  • Start of documentation on PAM gui's

Minor changes

  • Fixed several small email bugs including a synchronization problem between the garbage collector and the asynchronous mail class
  • AsZipFile product visitor deals a bit better with duplicate file names. It renames the offending file, although this might "break" the delivered file.
  • Fixed a bug in Fileref class to provide a properly URL-coded string reference
  • NotifyOfChange class - added timeout default property
  • Fixed a ProductShell serialization problem having to do with LinkObject
  • FTP - catch and report more errors that may arise during protocol negotiation on file output
  • Asynchronous mail input can now supply vector products if there is more than one mail item
  • putBackweb default topic is broadcast to all
  • More changes to the syntax parsed by getSmarTravelor PIM

Architectural changes

  • New type of product - DicitonaryProduct. This is part of preparations to support database queries and structured real-time data products
  • Renamed the PDIF package to avoid conflict with other PDIF parsers
  • New hasProperties interface to enforce consistency between the various other interfaces that supported properties

Old things to do that have been completed:

  • Fixed backweb info page url when served by PAM - except that the initial query must be include the trailing "/" as in: /PAM/BackWeb/

037

7/7/1998

First build to be available on Mitre external web site (general public).

All java packages changed from ORG.mitre. to org.mitre.

Finished writing the code so that a product's attributes can be directly set via the Juggler or PIM that handles the product. A Juggler or PIM attribute that starts with "product_" indicates that the attribute is actually to be put on the product. Thus "product_id" would override any product id that the PIM or Juggler would put on the product.

Fully implemented multiple valued attributes. Agents with multiple valued attributes can be fully configured from the local admin gui or via Bert.

User Interface

  • First release of Bert. Many little changes to how PAM serializes to support Bert.
  • Two new gui panels and a gui tool manager on the local control gui (not Bert)

Enhancements & bug fixes

  • getExciteNewstracker - bug fixes; consistent use of mustHave and mustNotHave
  • getAltavista - syntax changes; consistent use of mustHave and mustNotHave
  • exec - Added abiltiy to activate agents now instead of having to set lastUpdateLong attribute to 1 (old kludge); Alphabetized list of agents within a type of agent; Core support for MIME coding, decoding; Core support for SMTP protocol
  • putMail - changes to parameters to hopefully clear up confusion. Can now use mime coded body.
  • putBackWebLocal - can output to the channel (new capability) or just the subchannel (old capability). The backweb subchannel topic can now be specified directly on the DIM.

New agents

  • passIfKeywordsMatch
  • getExciteByKeyword
  • tableOfContents - new but still very experimental
  • remoteAgentEditor
  • putToRemoteConnector
  • remoteConnector
  • acceptSMTPMail

Renamed agents

  • getExcite --> getExciteNewstracker
  • getMail --> getPOPMail

036

5/11/1998

Many bug fixes, lots of work with putDirectory DIM.

Made Mementos observable to support smart daemons (including rule based expert systems).

Cleaned up ExecToEditor internal API to support a variety of configuration editors.

Exec - log messages have more rigid structure to support log analysis, tab separated fields.

New agent - passOneRandomProduct

035

4/13/1998

New Juggler - getURL, allows you to specify a URL and copy whatever the resource is without interpretation. Prior to this PIM, the only way to copy a URL was to us getOnePage which was built for copying .html pages. That PIM also copies images that may be referenced and it does some HREF mangling to resolve nonrelative URLs. getURL is much simpler if all you want is a copy of the URL.

Exec - Simplified topic/generaltopic. It used to be that a topic was hierarchical. However, no one was using the hierarchy and the model was too complex. So now the topic is flat. The topic is simply a string that serves to identify a group of related information. Multiple Jugglers can have the same topic. Currently only the putBackweb juggler uses the topic.

Exec - slightly enhanced logging of stacktraces in the error log by appending the name of the module that was executing at the time of the exception.

Exec - added hooks so that Agent properties can be monitored by a listener.

GUI - added two panels to show input and output connections for Agents.

GUI - new mini-frame allows administrator to change or delete agent properties and to delete Agents while running without having to edit PDIF.

Renamed "smarTraveler" to "getSmarTraveler"

Bug fix - HeadlinesOnly juggler, threw null pointer exception on a BasicProduct as the only product.

034

3/26/98

New Juggler - Headlines only.

New Juggler - "switch".

New PIM - "smarTraveler".

New Castanet notifier distributed in 0support/CastanetNotifier/

Minor bugs in ValueList, Exec.

Added getPropertyValues, et al, to Memento and Module classes

Begin experimentation with rule based executive configuration (add on, not part of pamCore or pamStandard software)

033

3/16/98

Product now as a filter/iterator concept. You can create a filter that is "applied" to a product. The product does its own recursion using the method apply().

Fixed bug restoring product source name from persistence.

Fixed bug with writing multiword PDIF header attributes.

Fixed bugs in Exec with accepting PDIF unnode and unconnector structures.

Fixed Approve juggler. Added simple authentication features.

Added basic support to Core for attributes with multiple values.

New Juggler - "archive"

Mitre BNN pim retested and "rewritten" to use getter.search methods.

032

2/20/98

Fixed getAltavista bug where gets with just one searchword would always return nothing.

Cleaned up several unused files in the source tree.

Cleaned up javadoc comments in interfaces, util, product package, and PDIF parser.

Added exec ability to delete nodes and connections from a remote PDIF based editor program.

031

2/17/98

Added putLocalPublisher ability to create a list of URLs in a specially named file.

Juggler chaining is now implemented (documentation pending). Two jugglers can be attached to each other. The last juggler in the chain should have the schedule, the other jugglers should have (schedule none).

The log window now has a title based on the id of the exec.

Renamed juggler method handleSetMemento to setProperty. Also added removeProperty and getProperty methods.

Any PIM or Juggler can now attach arbitrary properties to their products. The syntax is to create a property of the form "product_xxx" The "product_" part is stripped and an attribute "xxx" is attached to the product.

Added assert, log, reportException, debugTerse, and debugVerbose methods to the parent module. Any PIM, DIM, Juggler, or Daemon can now use these methods without having to explicitly invoke the exec.

New jugger, expireOldProducts, documentation is coming.

The Approve juggler has some serious problems. Don't use this.

There is a bug in WrapAsZip if there are two files with the same name. Don't use this experimental juggler.

030

1/20/97

Fixed negative index bug in getMail. Added two new attributes to getMail, "keepNameOfPoster" and " useAttachments" both default to true

Fixed bug in getExcite which caused quoted URLs to drop the last character.

Added ability to "chain" jugglers, but this has not received adequate testing.

< 30

See Version Description Prior to Build 30