PAM Version History (prior to Build 30)

Build

Notes

029

1/6/97

Incorporate Castanet DIM under the common name putLocalPublisher.

Updates to PDIF syntax to fix some grammar errors.

Incorporate generic remote proxy capability (not fully tested).

Changes to Executive to disallow more than one instance of a PIM or DIM to execute concurrently. A new option concurrencyLimit has been added to the exec but it should not be increased beyond 1 at the moment.

Added remoteConnector and putToRemoteConnector for Proxy services. Removed their definition in Faceless at last minute due to bugs.

Executive can now start the web service at any port. Previous bug had it wired to port 9090.

A limit was placed on the size of the contents of the local debug window. If the contents exceeds about 20000 chars it gets chopped to 10000 by throwing away the old stuff.

Product persistence now goes into a file that has the same root name as the saved checkpoint (ckpt) configuration file (but with extension .ps). On startup a search is made for a startup product persistence file with a root the matches the startup file.

028

12/9/97

Email DIM check for a creator attribute to use for the "from" in the email header. If none found uses the juggler creator.

Altavista and Excite PIM should now log any parse errors they may incur. Altavista rewritten to use the generic HTML parse routines in pkg ...getter.parse (smaller code, should be less sensitive to format changes from altavista)

getter.parse pkg minor changes so an HTML tag with attributes can be parsed independent of the order of the attributes.

Fixed output of PDIF for persistence of executive state and product state. THIS IS NOT BACKWARD COMPATIBLE. It simply requires that you delete the contents of the \0product_persistance directory before running this version for the first time. You must also start PAM afresh from the operating.txt file rather than a PAM generated chkpt.txt file.

027

More minor interface changes and simplifications.

026

11/18/97

Added ability to enable/disable modules from the built-in pam gui. Can also push a button to activate Jugglers or Daemons immediately (within a minute).

Fixed minor bug in email PIM checking number of messages on pop server

025

11/12/97

Executive now cleans up all unused files in the working directory when you shut it down from the GUI.

Backweb proxy is no longer required! The new BackWeb DIM has a common name of putBackWebLocal

024

10/20/97 - tech notes

  • Added LogFilter and ExceptionChecker daemons.
  • Added standalone gui.
  • Added Excite search PIM
  • Added FTP directory and notify of change functions (marginal testing)
  • Can have comments in PDIF checkpoint file. Comments start with "(-"
  • Created example startup files with comments.
  • Modified pam.bat for jre and \cda

11/6/97 - "Prior Users" PreRelease notes

The following is a list of changes for PAM PreRelease 2.

  1. PAM.bat is now based on a root directory of \cda and on the use of JRE
  2. PAM now consists of two zip files, PAMCore.zip and PAMStandard.zip. PAMCore contains the executive and core daemons. PAMStandard contains the standard set of modules (PIMs, DIMs, jugglers, Daemons)
  3. Old checkpoint and product state files created by PAM are not compatible with new checkpoint files created by PAM. However, startup files created by the user will work with little modification. The difference is that the rename of channels to jugglers is now complete. Also PAM uses hex coding of unprintable characters now where before it used a decimal based code. What this means to you is that you should do three things.
    • Delete all contents of /0workingDir directory.
    • Delete all contents of /product_persistance directory.
    • Edit your PAM startup files (such as operating.txt) and change all references to "channel" into "juggler" (ex: channel.to becomes juggler.to).
  4. File 0supportDir/sourcesinkinfo.txt is no longer required and should be deleted. All information that used to be in this file is now internalized by PAM. However, the file can still be used to add external modules (PIMs, DIMs, etc) and make them known to PAM. In the future this function will probably be replaced entirely by Java Beans.
  5. Due to popular demand it is now possible to add comments to your startup PAM file. Comments consists of a "-" (dash) immediately after any left parenthesis.
  6. Read the documentation for LogFilter and ExceptionChecker daemons. You will probably want to use them.

022/23

10/7/97

Fixes to BackWeb proxy to deal with a few hardwired directories

Creation of install notes for first "client" install

Sucked in new Pointcast code, renamed as MbnDim (still not tested)

0021

9/11/97 1604

Pointcast not properly keeping product files.

URLs for FileRefs had spaces in them - fixed.

Files as output of NotifyOfChange were not getting wrapped properly

0020

9/8/97 16:06

Can serve BackWeb subscriptions from a web server peer.

Fix PassThru bug with empy channels > 1

Fix BackWeb rendering problem with FileRef contents

0019

9/4/97 19:52

BackWeb now properly supports multiple inputs. It also properly deletes temporary files. BackWeb renderer eliminates troublesome quote chars in text box.

Start of new Daemon type.

Begin implementation of downloadNumber

0018

8/29/97 16:45

Many changes to pointcast and backweb presentation. PCN and Backweb use same renderer now.

Split AsPCN... visitor to extract AsZip visitor

Fixed bug in webcopy pim0 and webcopy pim1

Created new checkpoint juggler

Exec now makes a checkpoint.old file and tries not to bash it if there is an error

Exec understands debug parameters

0017

8/26/97 16:43

PAM now creates log file to checkpoint directory. File grows without bound, however, during PAM operation. Gets erased when PAM restarts.

Can now change description for jugglers by modifying ckpt file

Several minor pointcast bugs & cosmetic fixes.

PointcastDIM has a new attribute " pcnProtocolHostAndPort" that allows use of another "real" web server to serve out product if it has had PAMWorkingDir and PAMSupportDir aliases defined

Many small BackwebDIM cosmetic changes.

Notify of change Juggler new attributes "somethingChangedString" and "nothingChangedString" allows customization of reporting

0016

8/21/97 07:44

Channel interface renamed to Juggler interface.

Significant stability improvements to persistent storage (PDIFOutStream class)

PointCast DIM should be fully operable

EnumeratedProducts now can have index items and one root item.

More Cosmetic updates to BackWeb

Following files obsolete and deleted:

  • AsSummary
  • Channel
  • Content
  • HashWithIndexProduct
  • HasStoreParts
  • Heartbeat
  • IndexedProduct
  • NonidleTable
  • Quote

0015

8/18/97 16:02

Cosmetic updates to BackWeb

Now have pointcast proxy source

Entire system fully understands enabled and disabled items. PIMs, DIMs, or Channels that ask for sourcelist or sinklist get a list of only enabled sources and sinks.

AsPlainText - cosmetic updates

0014

8/15/97 16:45pm

Pointcast DIM - new

0013

8/13/97 15:40pm

Exec - PIM product was not getting marked and garbage collected properly -fixed. DIM product now also marked and swept.

BackWeb DIM - initial functions working, more work on cosmetics

Now using JSDK 1.0.1

New Product approval Servlet and Channel (one of each).

0012

8/6/97 11:24am

DIM interface - removed entry point getCurrentFileRefs (use getPersistentProduct if needed)

New DIM - PutDirectory

0011

7/31/97

DIMs can now save persistent information

Fixed DIM and PIM queue scheduling bug

New aggregator to detect changes by date instead of content

0010

7/29/97

BackWeb dim - initial version

AcmeServer - numerous bug fixes for POST method

mitre.pam.executive.PAM can now be invoked with a single command line arg which is the config/checkpoint file to use on startup. Checkpoints still go to default name in the 0checkpts directory.

0009

7/25/97 16:37

ExecGlobal - bug fix to getUrlFromFile(File file)

0008

7/24/96 15:03

ExecGlobal - new call - String getUrlFromFile(File file)

0007

7/23/97 16:50

New BNN PIM

New /PAMList servlet

FileRef error fixed

AsPlainText slight format fix

ExecMonitor new API to get specific Source or Sink by ID - Used by Backweb subscribe servlet

Mail classes - uudecode incoming enclosures

0006

7/22/97 16:15

Added Alarm and debug classes.

Added beginnings of a BackWeb Servlet for subscriptions to backweb channels.

0005

7/23/97 7:23am

Sink interface - Added an additional callback to Sink interface that allows the exec to notify a Sink when one of the sources has been disconnected. Default behavior of Channel and DIM base classes is to do nothing.

Product persistence - rewrote product persistence mechanism to support an arbitrary "web" of products that reference each other (but not cyclicly). A single product persistence file is now used.

ProductStore - moved to mitre.pam.product.view package as part of initial work to transition to JDK 1.1 serialization

BasicProduct no longer supports content of Vector!!!! Use VectorProduct.

Product.getContent() now returns Enumeration instead of Vector

HashtableProduct - new, built for growth.

BasicProduct - changed topic separator char to comma ","; new attribute, BasicProduct.TOPIC_SEPARATOR

AsPlainText no longer appends date to id line

MonitorFrame - no longer get exception when PIMQ or DIMQ are empty

FileRef - can build unique name with specified prefix and extension

0004

7/17, 1706 -

Executive - understands how to schedule daily, hourly, and weekly

BasicProduct can delete product attribute

0003

7/16/97 1304 -

Executive - pays attention to enable attribute on PIMs, DIMs, and Channels

New PIM - pop mail get pim, only handles base64 coded enclosures

New DIM - smtp mail put pim, only handles base64 coded enclosures

pre 0003

PAM executive implements PIM,DIM,Channel persistence. PAM uses servlets that extend javax.servlet.httpServlet to get access to working directories, support directories, PAM exec state.

Channel building is manual via bootstrap checkpoint file, Exec managment of checkpoint file still a little rough -- does not do checkpoint integrity checking before loading the file.

Simple local GUI provides access to PIM, DIM, Channel. Also, to PIM, DIM, Channel queues.

PIMs implemented include: 2 level web copy, altavista copy of up to 10 links, local directory look. Also local test pim.

Channels implemented include: simple passthru from source to sink and channel to check if something changed

DIMs include local test dim that echoes input to local window

In the beginning there was Java... and it was good because it really enhanced software productivity.