code: public void addCopyResource(String source, String target, String type) throws CmsConfigurationException {
  
          if (LOG.isDebugEnabled()) {
              LOG.debug(
                  Messages.get().getBundle().key(
                      Messages.LOG_ADD_COPY_RESOURCE_4,
                      new Object[] {this, source, target, type}));
          }
  
          if (m_frozen) {
              // configuration already frozen
              throw new CmsConfigurationException(
                  Messages.get().container(
                      Messages.ERR_CONFIG_FROZEN_3,
                      this.getClass().getName(),
                      getTypeName(),
                      new Integer(getTypeId())));
          }
  
          // create the copy resource object an add it to the list
          CmsConfigurationCopyResource copyResource = new CmsConfigurationCopyResource(source, target, type);
          m_copyResources.add(copyResource);
      }
docs: Adds a new "copy resource" to this resource type,
  allowed only during the configuration phase.<p>
  
  The "copy resources" are copied to the specified location after
  a new resource of this type is created. Usually this feature is used to
  populate a newly created folder with some default resources.<p>
  
  If target is <code>null</code>, the macro {@link #MACRO_RESOURCE_FOLDER_PATH} is used as default.
  If type is <code>null</code>, the copy type {@link CmsResource#COPY_AS_NEW} is used as default.<p>
  
  @param source the source resource
  @param target the target resource (may contain macros)
  @param type the type of the copy, for example "as new", "as sibling" etc
  
  @throws CmsConfigurationException if the configuration is already frozen